Package soot.dexpler.instructions
Class FillArrayDataInstruction
- java.lang.Object
-
- soot.dexpler.instructions.DexlibAbstractInstruction
-
- soot.dexpler.instructions.PseudoInstruction
-
- soot.dexpler.instructions.FillArrayDataInstruction
-
public class FillArrayDataInstruction extends PseudoInstruction
Convertsfill-array-datainstructions and associated data blocks into a series of assignment instructions (one for each array index the data block contains a value). As the data block contains untyped data, only the number of bytes per element is known. Recovering the array type at the stage this class is used on would require a detailed analysis on the dex code. Therefore we save the data elements asUntypedConstantand later useDexFillArrayDataTransformerto convert the values to their final type.
-
-
Field Summary
-
Fields inherited from class soot.dexpler.instructions.PseudoInstruction
data, dataFirstByte, dataLastByte, dataSize, loaded
-
Fields inherited from class soot.dexpler.instructions.DexlibAbstractInstruction
codeAddress, instruction, lineNumber, unit
-
-
Constructor Summary
Constructors Constructor Description FillArrayDataInstruction(org.jf.dexlib2.iface.instruction.Instruction instruction, int codeAdress)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcomputeDataOffsets(DexBody body)voidjimplify(DexBody body)Jimplify this instruction.-
Methods inherited from class soot.dexpler.instructions.PseudoInstruction
getData, getDataFirstByte, getDataLastByte, getDataSize, isLoaded, setData, setDataFirstByte, setDataLastByte, setDataSize, setLoaded
-
Methods inherited from class soot.dexpler.instructions.DexlibAbstractInstruction
addTags, getInstruction, getLineNumber, getUnit, getUsedRegistersNums, getUsedRegistersNums, introducedTypes, setLineNumber, setUnit
-
-
-
-
Method Detail
-
jimplify
public void jimplify(DexBody body)
Description copied from class:DexlibAbstractInstructionJimplify this instruction.- Specified by:
jimplifyin classDexlibAbstractInstruction- Parameters:
body- to jimplify into.
-
computeDataOffsets
public void computeDataOffsets(DexBody body)
- Specified by:
computeDataOffsetsin classPseudoInstruction
-
-