Package ghidra.app.util.bin.format.pef
Class Relocation
java.lang.Object
ghidra.app.util.bin.format.pef.Relocation
- All Implemented Interfaces:
- StructConverter
- Direct Known Subclasses:
- RelocByIndexGroup,- RelocBySectDWithSkip,- RelocIncrPosition,- RelocLgByImport,- RelocLgRepeat,- RelocLgSetOrBySection,- RelocSetPosition,- RelocSmRepeat,- RelocUndefinedOpcode,- RelocValueGroup
The high-order 7 bits for the currently defined relocation opcode values.
 
 Binary values indicated by "x" are "don't care" 
 operands. For example, any combination of the high-order 7 bits that starts 
 with two zero bits (00) indicates the RelocBySectDWithSkip instruction. 
 
 Relocation instructions are stored in 2-byte relocation blocks. Most instructions 
 take up one block that combines an opcode and related arguments. Instructions 
 that are larger than 2 bytes have an opcode and some of the operands in the 
 first 2-byte block, with other operands in the following 2-byte blocks. The 
 opcode occupies the upper (higher-order) bits of the block that contains it. 
 Relocation instructions can be decoded from the high-order 7 bits of their first 
 block. 
 
 All currently defined relocation instructions relocate locations as words 
 (that is, 4-byte values).
- 
Field SummaryFields
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionabstract voidapply(ImportStateCache importState, RelocationState relocState, ContainerHeader header, Program program, MessageLog log, TaskMonitor monitor) intintintintabstract booleanisMatch()Returns a structure datatype representing the contents of the implementor of this interface.toString()
- 
Field Details- 
opcodeprotected int opcode
 
- 
- 
Constructor Details- 
Relocationpublic Relocation()
 
- 
- 
Method Details- 
isMatchpublic abstract boolean isMatch()
- 
applypublic abstract void apply(ImportStateCache importState, RelocationState relocState, ContainerHeader header, Program program, MessageLog log, TaskMonitor monitor) 
- 
getOpcodepublic int getOpcode()
- 
getSizeInBytespublic int getSizeInBytes()
- 
getRepeatCountpublic int getRepeatCount()
- 
getRepeatChunkspublic int getRepeatChunks()
- 
toDataTypeDescription copied from interface:StructConverterReturns a structure datatype representing the contents of the implementor of this interface.For example, given: class A { int foo; double bar; }The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments. - Specified by:
- toDataTypein interface- StructConverter
- Returns:
- returns a structure datatype representing the implementor of this interface
- Throws:
- DuplicateNameException- when a datatype of the same name already exists
- IOException- if an IO-related error occurs
- See Also:
 
- 
toString
 
-