Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/a3d77e86c1524017962810ba2f62a3953f9d8b26

>---------------------------------------------------------------

commit a3d77e86c1524017962810ba2f62a3953f9d8b26
Author: Ian Lynagh <[email protected]>
Date:   Tue Aug 21 21:50:59 2012 +0100

    Make the PPC globalRegMaybe more similar to the other platforms'

>---------------------------------------------------------------

 compiler/nativeGen/PPC/CodeGen.hs |    2 +-
 compiler/nativeGen/PPC/Regs.hs    |   52 ++++++++++++++++++------------------
 2 files changed, 27 insertions(+), 27 deletions(-)

diff --git a/compiler/nativeGen/PPC/CodeGen.hs 
b/compiler/nativeGen/PPC/CodeGen.hs
index c725dd2..4090d95 100644
--- a/compiler/nativeGen/PPC/CodeGen.hs
+++ b/compiler/nativeGen/PPC/CodeGen.hs
@@ -178,7 +178,7 @@ getRegisterReg (CmmLocal (LocalReg u pk))
 
 getRegisterReg (CmmGlobal mid)
   = case globalRegMaybe mid of
-        Just reg -> reg
+        Just reg -> RegReal reg
         Nothing  -> pprPanic "getRegisterReg-memory" (ppr $ CmmGlobal mid)
         -- By this stage, the only MagicIds remaining should be the
         -- ones which map to a real machine register on this
diff --git a/compiler/nativeGen/PPC/Regs.hs b/compiler/nativeGen/PPC/Regs.hs
index c2ce4e1..4d06268 100644
--- a/compiler/nativeGen/PPC/Regs.hs
+++ b/compiler/nativeGen/PPC/Regs.hs
@@ -322,7 +322,7 @@ f21     = regSingle $ fReg 21
 
 -- horror show 
-----------------------------------------------------------------
 freeReg :: RegNo -> FastBool
-globalRegMaybe :: GlobalReg -> Maybe Reg
+globalRegMaybe :: GlobalReg -> Maybe RealReg
 
 
 #if powerpc_TARGET_ARCH
@@ -511,79 +511,79 @@ freeReg _               = fastBool True
 
 
 #ifdef REG_Base
-globalRegMaybe BaseReg                  = Just (regSingle REG_Base)
+globalRegMaybe BaseReg                  = Just (RealRegSingle REG_Base)
 #endif
 #ifdef REG_R1
-globalRegMaybe (VanillaReg 1 _)         = Just (regSingle REG_R1)
+globalRegMaybe (VanillaReg 1 _)         = Just (RealRegSingle REG_R1)
 #endif
 #ifdef REG_R2
-globalRegMaybe (VanillaReg 2 _)         = Just (regSingle REG_R2)
+globalRegMaybe (VanillaReg 2 _)         = Just (RealRegSingle REG_R2)
 #endif
 #ifdef REG_R3
-globalRegMaybe (VanillaReg 3 _)         = Just (regSingle REG_R3)
+globalRegMaybe (VanillaReg 3 _)         = Just (RealRegSingle REG_R3)
 #endif
 #ifdef REG_R4
-globalRegMaybe (VanillaReg 4 _)         = Just (regSingle REG_R4)
+globalRegMaybe (VanillaReg 4 _)         = Just (RealRegSingle REG_R4)
 #endif
 #ifdef REG_R5
-globalRegMaybe (VanillaReg 5 _)         = Just (regSingle REG_R5)
+globalRegMaybe (VanillaReg 5 _)         = Just (RealRegSingle REG_R5)
 #endif
 #ifdef REG_R6
-globalRegMaybe (VanillaReg 6 _)         = Just (regSingle REG_R6)
+globalRegMaybe (VanillaReg 6 _)         = Just (RealRegSingle REG_R6)
 #endif
 #ifdef REG_R7
-globalRegMaybe (VanillaReg 7 _)         = Just (regSingle REG_R7)
+globalRegMaybe (VanillaReg 7 _)         = Just (RealRegSingle REG_R7)
 #endif
 #ifdef REG_R8
-globalRegMaybe (VanillaReg 8 _)         = Just (regSingle REG_R8)
+globalRegMaybe (VanillaReg 8 _)         = Just (RealRegSingle REG_R8)
 #endif
 #ifdef REG_R9
-globalRegMaybe (VanillaReg 9 _)         = Just (regSingle REG_R9)
+globalRegMaybe (VanillaReg 9 _)         = Just (RealRegSingle REG_R9)
 #endif
 #ifdef REG_R10
-globalRegMaybe (VanillaReg 10 _)        = Just (regSingle REG_R10)
+globalRegMaybe (VanillaReg 10 _)        = Just (RealRegSingle REG_R10)
 #endif
 #ifdef REG_F1
-globalRegMaybe (FloatReg 1)             = Just (regSingle REG_F1)
+globalRegMaybe (FloatReg 1)             = Just (RealRegSingle REG_F1)
 #endif
 #ifdef REG_F2
-globalRegMaybe (FloatReg 2)             = Just (regSingle REG_F2)
+globalRegMaybe (FloatReg 2)             = Just (RealRegSingle REG_F2)
 #endif
 #ifdef REG_F3
-globalRegMaybe (FloatReg 3)             = Just (regSingle REG_F3)
+globalRegMaybe (FloatReg 3)             = Just (RealRegSingle REG_F3)
 #endif
 #ifdef REG_F4
-globalRegMaybe (FloatReg 4)             = Just (regSingle REG_F4)
+globalRegMaybe (FloatReg 4)             = Just (RealRegSingle REG_F4)
 #endif
 #ifdef REG_D1
-globalRegMaybe (DoubleReg 1)            = Just (regSingle REG_D1)
+globalRegMaybe (DoubleReg 1)            = Just (RealRegSingle REG_D1)
 #endif
 #ifdef REG_D2
-globalRegMaybe (DoubleReg 2)            = Just (regSingle REG_D2)
+globalRegMaybe (DoubleReg 2)            = Just (RealRegSingle REG_D2)
 #endif
 #ifdef REG_Sp
-globalRegMaybe Sp                       = Just (regSingle REG_Sp)
+globalRegMaybe Sp                       = Just (RealRegSingle REG_Sp)
 #endif
 #ifdef REG_Lng1
-globalRegMaybe (LongReg 1)              = Just (regSingle REG_Lng1)
+globalRegMaybe (LongReg 1)              = Just (RealRegSingle REG_Lng1)
 #endif
 #ifdef REG_Lng2
-globalRegMaybe (LongReg 2)              = Just (regSingle REG_Lng2)
+globalRegMaybe (LongReg 2)              = Just (RealRegSingle REG_Lng2)
 #endif
 #ifdef REG_SpLim
-globalRegMaybe SpLim                    = Just (regSingle REG_SpLim)
+globalRegMaybe SpLim                    = Just (RealRegSingle REG_SpLim)
 #endif
 #ifdef REG_Hp
-globalRegMaybe Hp                       = Just (regSingle REG_Hp)
+globalRegMaybe Hp                       = Just (RealRegSingle REG_Hp)
 #endif
 #ifdef REG_HpLim
-globalRegMaybe HpLim                    = Just (regSingle REG_HpLim)
+globalRegMaybe HpLim                    = Just (RealRegSingle REG_HpLim)
 #endif
 #ifdef REG_CurrentTSO
-globalRegMaybe CurrentTSO               = Just (regSingle REG_CurrentTSO)
+globalRegMaybe CurrentTSO               = Just (RealRegSingle REG_CurrentTSO)
 #endif
 #ifdef REG_CurrentNursery
-globalRegMaybe CurrentNursery           = Just (regSingle REG_CurrentNursery)
+globalRegMaybe CurrentNursery           = Just (RealRegSingle 
REG_CurrentNursery)
 #endif
 globalRegMaybe _                        = Nothing
 



_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to