Graph coloring register allocator.
TODO: The colors in graphviz graphs for x86_64 and ppc could be nicer.
- regAlloc :: (Outputable instr, Instruction instr) => DynFlags -> UniqFM (UniqSet RealReg) -> UniqSet Int -> [LiveCmmTop instr] -> UniqSM ([NatCmmTop instr], [RegAllocStats instr])
Documentation
:: (Outputable instr, Instruction instr) | |
=> DynFlags | |
-> UniqFM (UniqSet RealReg) | the registers we can use for allocation |
-> UniqSet Int | the set of available spill slots. |
-> [LiveCmmTop instr] | code annotated with liveness information. |
-> UniqSM ([NatCmmTop instr], [RegAllocStats instr]) | code with registers allocated and stats for each stage of allocation |
The top level of the graph coloring register allocator.