The register allocator state
Constructors
RA_Statera_blockassig :: BlockAssignment freeRegsthe current mapping from basic blocks to the register assignments at the beginning of that block.
ra_freeregs :: !freeRegsfree machine registers
ra_assig :: RegMap Locassignment of temps to locations
ra_delta :: Intcurrent stack delta
ra_stack :: StackMapfree stack slots for spilling
ra_us :: UniqSupplyunique supply for generating names for join point fixup blocks.
ra_spills :: [SpillReason]Record why things were spilled, for -ddrop-asm-stats. Just keep a list here instead of a map of regs -> reasons. We don't want to slow down the allocator if we're not going to emit the stats.
ra_config :: !NCGConfigNative code generator configuration
ra_fixups :: [(BlockId, BlockId, BlockId)](from,fixup,to) : We inserted fixup code between from and to