import SPARC.Cond
import SPARC.AddrMode
import SPARC.Regs
+import SPARC.RegPlate
import Size
import Reg
-import Cmm
+import OldCmm
+import OldPprCmm ()
import Outputable
import OrdList
getRegisterReg :: CmmReg -> Reg
getRegisterReg (CmmLocal (LocalReg u pk))
- = mkVReg u (cmmTypeSize pk)
+ = RegVirtual $ mkVirtualReg u (cmmTypeSize pk)
getRegisterReg (CmmGlobal mid)
- = case get_GlobalReg_reg_or_addr mid of
- Left (RealReg rrno) -> RealReg rrno
- _ -> pprPanic "getRegisterReg-memory" (ppr $ CmmGlobal mid)
+ = case globalRegMaybe mid of
+ Just reg -> RegReal reg
+ Nothing -> pprPanic
+ "SPARC.CodeGen.Base.getRegisterReg: global is in memory"
+ (ppr $ CmmGlobal mid)
-- Expand CmmRegOff. ToDo: should we do it this way around, or convert