public interface FrameMapBuilder
Modifier and Type | Method and Description |
---|---|
VirtualStackSlot |
allocateSpillSlot(LIRKind kind)
Reserves a spill slot in the frame of the method being compiled.
|
VirtualStackSlot |
allocateStackSlots(int slots,
BitSet objects,
List<VirtualStackSlot> outObjectStackSlots)
Reserves a number of contiguous slots in the frame of the method being compiled.
|
FrameMap |
buildFrameMap(LIRGenerationResult result,
StackSlotAllocator allocator)
Creates a FrameMap based on the information collected by this
FrameMapBuilder.
|
void |
callsMethod(CallingConvention cc)
Informs the frame map that the compiled code calls a particular method, which may need stack
space for outgoing arguments.
|
CodeCacheProvider |
getCodeCache() |
RegisterConfig |
getRegisterConfig() |
VirtualStackSlot allocateSpillSlot(LIRKind kind)
kind
- The kind of the spill slot to be reserved.VirtualStackSlot allocateStackSlots(int slots, BitSet objects, List<VirtualStackSlot> outObjectStackSlots)
null
.slots
- the number of slots to reserveobjects
- specifies the indexes of the object pointer slots. The caller is responsible
for guaranteeing that each such object pointer slot is initialized before any
instruction that uses a reference map. Without this guarantee, the garbage
collector could see garbage object values.outObjectStackSlots
- if non-null, the object pointer slots allocated are added to this
listRegisterConfig getRegisterConfig()
CodeCacheProvider getCodeCache()
void callsMethod(CallingConvention cc)
cc
- The calling convention for the called method.FrameMap buildFrameMap(LIRGenerationResult result, StackSlotAllocator allocator)