[project @ 2005-01-28 12:55:17 by simonmar]
[ghc-hetmet.git] / ghc / compiler / nativeGen / MachInstrs.hs
index b0b68e4..28e2578 100644 (file)
@@ -35,7 +35,6 @@ module MachInstrs (
     ) where
 
 #include "HsVersions.h"
-#include "../includes/ghcconfig.h"
 
 import MachRegs
 import Cmm
@@ -465,6 +464,12 @@ bit or 64 bit precision.
 -- Other things.
        | CLTD -- sign extend %eax into %edx:%eax
 
+       | FETCHGOT    Reg  -- pseudo-insn for position-independent code
+                           -- pretty-prints as
+                           --       call 1f
+                           -- 1:    popl %reg
+                           --       addl __GLOBAL_OFFSET_TABLE__+.-1b, %reg
+                    
 data Operand
   = OpReg  Reg         -- register
   | OpImm  Imm         -- immediate value
@@ -661,6 +666,10 @@ fPair other = pprPanic "fPair(sparc NCG)" (ppr other)
              | CRNOR   Int Int Int    -- condition register nor
              | MFCR    Reg            -- move from condition register
              
+             | MFLR    Reg            -- move from link register
+             | FETCHPC Reg            -- pseudo-instruction:
+                                      -- bcl to next insn, mflr reg
+             
 condUnsigned GU = True
 condUnsigned LU = True
 condUnsigned GEU = True