Class RegionDescriptor
- java.lang.Object
-
- ghidra.app.plugin.exceptionhandlers.gcc.RegionDescriptor
-
public class RegionDescriptor extends java.lang.ObjectRegionDescriptor holds information about a call frame.
-
-
Constructor Summary
Constructors Constructor Description RegionDescriptor(MemoryBlock ehblock)Constructor for a region descriptor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LSDAActionTablegetActionTable()Gets the action table for this region's frame.LSDACallSiteTablegetCallSiteTable()Gets the call site table for this region's frame.MemoryBlockgetEHMemoryBlock()Gets the exception handling memory block associated with this region.FrameDescriptionEntrygetFrameDescriptorEntry()Gets the FDE associated with this region.AddressgetLSDAAddress(Address addr)Gets the address of the start of the LSDA.LSDATablegetLSDATable()Gets the LSDA table for this frame region.AddressRangegetRange()Gets the address range of the IP (instructions) for this region.longgetRangeSize()Gets the size of the address range for the IP.AddressgetRangeStart()Gets the start (minimum address) of the IP range for this region.LSDATypeTablegetTypeTable()Gets the type table for this region's frame.voidsetFrameDescriptorEntry(FrameDescriptionEntry frameDescriptionEntry)Sets the FDE associated with the region.voidsetIPRange(AddressRange range)Sets the address range of the IP (instructions) for this region.voidsetLSDAAddress(Address addr)Sets the address of the start of the LSDA.voidsetLSDATable(LSDATable lsdaTable)Sets the LSDA table for this frame region.
-
-
-
Constructor Detail
-
RegionDescriptor
public RegionDescriptor(MemoryBlock ehblock)
Constructor for a region descriptor.- Parameters:
ehblock- the exception handling memory block for the region to be described.
-
-
Method Detail
-
getEHMemoryBlock
public MemoryBlock getEHMemoryBlock()
Gets the exception handling memory block associated with this region.- Returns:
- the memory block
-
setIPRange
public void setIPRange(AddressRange range)
Sets the address range of the IP (instructions) for this region.- Parameters:
range- the address range to associate with this region.
-
getRange
public AddressRange getRange()
Gets the address range of the IP (instructions) for this region.- Returns:
- the instruction addresses
-
getRangeStart
public Address getRangeStart()
Gets the start (minimum address) of the IP range for this region.- Returns:
- the IP range start address
-
getRangeSize
public long getRangeSize()
Gets the size of the address range for the IP.- Returns:
- the IP address range size
-
setLSDAAddress
public void setLSDAAddress(Address addr)
Sets the address of the start of the LSDA.- Parameters:
addr- the LSDA address.
-
getLSDAAddress
public Address getLSDAAddress(Address addr)
Gets the address of the start of the LSDA.- Returns:
- the LSDA address.
-
setLSDATable
public void setLSDATable(LSDATable lsdaTable)
Sets the LSDA table for this frame region.- Parameters:
lsdaTable- the LSDA table
-
getLSDATable
public LSDATable getLSDATable()
Gets the LSDA table for this frame region.- Returns:
- the LSDA table
-
getCallSiteTable
public LSDACallSiteTable getCallSiteTable()
Gets the call site table for this region's frame.- Returns:
- the call site table
-
getActionTable
public LSDAActionTable getActionTable()
Gets the action table for this region's frame.- Returns:
- the action table or null if it hasn't been set for this region
-
getTypeTable
public LSDATypeTable getTypeTable()
Gets the type table for this region's frame.- Returns:
- the LSDA type table or null if it hasn't been set for this region
-
setFrameDescriptorEntry
public void setFrameDescriptorEntry(FrameDescriptionEntry frameDescriptionEntry)
Sets the FDE associated with the region.- Parameters:
frameDescriptionEntry- the FDE
-
getFrameDescriptorEntry
public FrameDescriptionEntry getFrameDescriptorEntry()
Gets the FDE associated with this region.- Returns:
- the FDE
-
-