import Alpha.Regs
import Alpha.RegInfo
import Alpha.Instr
-import Alpha.Ppr
#elif i386_TARGET_ARCH || x86_64_TARGET_ARCH
import X86.CodeGen
#elif sparc_TARGET_ARCH
import SPARC.CodeGen
import SPARC.Regs
-import SPARC.RegInfo
import SPARC.Instr
import SPARC.Ppr
+import SPARC.ShortcutJump
#elif powerpc_TARGET_ARCH
import PPC.CodeGen
+import PPC.Cond
import PPC.Regs
import PPC.RegInfo
import PPC.Instr
#if i386_TARGET_ARCH
-x86fp_kludge :: NatCmmTop -> NatCmmTop
+x86fp_kludge :: NatCmmTop Instr -> NatCmmTop Instr
x86fp_kludge top@(CmmData _ _) = top
x86fp_kludge top@(CmmProc info lbl params (ListGraph code)) =
CmmProc info lbl params (ListGraph $ i386_insert_ffrees code)
-- fallthroughs.
sequenceTop
- :: Instruction instr
- => NatCmmTop instr
- -> NatCmmTop instr
+ :: NatCmmTop Instr
+ -> NatCmmTop Instr
sequenceTop top@(CmmData _ _) = top
sequenceTop (CmmProc info lbl params (ListGraph blocks)) =
-- big, we have to work around this limitation.
makeFarBranches
- :: Instruction instr
- => [NatBasicBlock instr]
- -> [NatBasicBlock instr]
+ :: [NatBasicBlock Instr]
+ -> [NatBasicBlock Instr]
#if powerpc_TARGET_ARCH
makeFarBranches blocks