[project @ 2005-01-16 05:31:39 by wolfgang]
[ghc-hetmet.git] / ghc / compiler / nativeGen / RegAllocInfo.hs
index da2727b..7d1bf48 100644 (file)
@@ -202,6 +202,8 @@ regUsage instr = case instr of
     GCOS   sz src dst  -> mkRU [src] [dst]
     GTAN   sz src dst  -> mkRU [src] [dst]
 
+    FETCHGOT reg        -> mkRU [] [reg]
+
     COMMENT _          -> noUsage
     DELTA   _           -> noUsage
 
@@ -344,6 +346,8 @@ regUsage instr = case instr of
     FCTIWZ r1 r2       -> usage ([r2], [r1])
     FRSP r1 r2         -> usage ([r2], [r1])
     MFCR reg            -> usage ([], [reg])
+    MFLR reg            -> usage ([], [reg])
+    FETCHPC reg         -> usage ([], [reg])
     _                  -> noUsage
   where
     usage (src, dst) = RU (filter interesting src)
@@ -501,7 +505,9 @@ patchRegs instr env = case instr of
 
     CALL (Left imm)    -> instr
     CALL (Right reg)   -> CALL (Right (env reg))
-
+    
+    FETCHGOT reg        -> FETCHGOT (env reg)
+    
     NOP                        -> instr
     COMMENT _          -> instr
     DELTA _            -> instr
@@ -621,6 +627,8 @@ patchRegs instr env = case instr of
     FCTIWZ r1 r2       -> FCTIWZ (env r1) (env r2)
     FRSP r1 r2         -> FRSP (env r1) (env r2)
     MFCR reg            -> MFCR (env reg)
+    MFLR reg            -> MFLR (env reg)
+    FETCHPC reg         -> FETCHPC (env reg)
     _ -> instr
   where
     fixAddr (AddrRegReg r1 r2) = AddrRegReg (env r1) (env r2)