Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/16a037a8f9c7e444230c226081023fe56ffa2264 >--------------------------------------------------------------- commit 16a037a8f9c7e444230c226081023fe56ffa2264 Author: Edward Z. Yang <[email protected]> Date: Sun Apr 17 23:29:29 2011 +0100 Implement jump table fix-ups for linear register allocator. We achieve this by splitting up instruction selection for case switches into two parts: the actual code generation, and the generation of the accompanying jump table. With this scheme, the jump fixup code can modify the contents of the jump table stored within the JMP_TBL (or BCTL) instruction, before the actual data section is created. SPARC and PPC patches are untested; they might not work! Signed-off-by: Edward Z. Yang <[email protected]> compiler/nativeGen/AsmCodeGen.lhs | 19 +++++++++++++++- compiler/nativeGen/PPC/CodeGen.hs | 37 +++++++++++++++---------------- compiler/nativeGen/PPC/Instr.hs | 10 ++++---- compiler/nativeGen/PPC/Ppr.hs | 2 +- compiler/nativeGen/SPARC/CodeGen.hs | 16 +++++++------ compiler/nativeGen/SPARC/Instr.hs | 10 +++++--- compiler/nativeGen/SPARC/Ppr.hs | 2 +- compiler/nativeGen/X86/CodeGen.hs | 40 ++++++++++++++++++---------------- compiler/nativeGen/X86/Instr.hs | 15 ++++++++---- compiler/nativeGen/X86/Ppr.hs | 2 +- 10 files changed, 90 insertions(+), 63 deletions(-) Diff suppressed because of size. To see it, use: git show 16a037a8f9c7e444230c226081023fe56ffa2264 _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
