X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FnativeGen%2FMachInstrs.hs;h=5a8d3f17f8dedaedc04271ae155cb25cee947a52;hb=97169c5dd31537b28f5f8ad08cd6cdf82c1ecefd;hp=5ed8c0c4dee5c93018dbfdaefbc1a96dd202c77d;hpb=f96e9aa0444de0e673b3c4055c6e43299639bc5b;p=ghc-hetmet.git diff --git a/compiler/nativeGen/MachInstrs.hs b/compiler/nativeGen/MachInstrs.hs index 5ed8c0c..5a8d3f1 100644 --- a/compiler/nativeGen/MachInstrs.hs +++ b/compiler/nativeGen/MachInstrs.hs @@ -1,3 +1,10 @@ +{-# OPTIONS -w #-} +-- The above warning supression flag is a temporary kludge. +-- While working on this module you are encouraged to remove it and fix +-- any warnings in the module. See +-- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings +-- for details + ----------------------------------------------------------------------------- -- -- Machine-dependent assembly language @@ -52,8 +59,8 @@ import GHC.Exts -- Our flavours of the Cmm types -- Type synonyms for Cmm populated with native code -type NatCmm = GenCmm CmmStatic [CmmStatic] Instr -type NatCmmTop = GenCmmTop CmmStatic [CmmStatic] Instr +type NatCmm = GenCmm CmmStatic [CmmStatic] (ListGraph Instr) +type NatCmmTop = GenCmmTop CmmStatic [CmmStatic] (ListGraph Instr) type NatBasicBlock = GenBasicBlock Instr -- ----------------------------------------------------------------------------- @@ -226,6 +233,9 @@ data Instr | DELTA Int -- specify current stack offset for -- benefit of subsequent passes + | SPILL Reg Int -- ^ spill this reg to a stack slot + | RELOAD Int Reg -- ^ reload this reg from a stack slot + -- ----------------------------------------------------------------------------- -- Alpha instructions