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