[project @ 1996-02-06 14:32:22 by dnt]
[ghc-hetmet.git] / ghc / compiler / prelude / AbsPrel.lhs
index dffc163..3f58196 100644 (file)
@@ -29,8 +29,11 @@ module AbsPrel (
 
        -- *odd* values that need to be reached out and grabbed:
        eRROR_ID, pAT_ERROR_ID, aBSENT_ERROR_ID,
-       unpackCStringId, packStringForCId, unpackCStringAppendId,
-       integerZeroId, integerPlusOneId, integerMinusOneId,
+       packStringForCId,
+       unpackCStringId, unpackCString2Id,
+       unpackCStringAppendId, unpackCStringFoldrId,
+       integerZeroId, integerPlusOneId,
+       integerPlusTwoId, integerMinusOneId,
 
 #ifdef DPH
        -- ProcessorClass
@@ -76,12 +79,13 @@ module AbsPrel (
 
        -- types: Addr#, Int#, Word#, Int
        intPrimTy, intTy, intPrimTyCon, intTyCon, intDataCon,
-       wordPrimTyCon, wordPrimTy, wordTy, wordDataCon,
-       addrPrimTyCon, addrPrimTy, addrTy, addrDataCon,
+       wordPrimTyCon, wordPrimTy, wordTy, wordTyCon, wordDataCon,
+       addrPrimTyCon, addrPrimTy, addrTy, addrTyCon, addrDataCon,
 
        -- types: Integer, Rational (= Ratio Integer)
        integerTy, rationalTy,
-       integerTyCon, rationalTyCon, ratioDataCon,
+       integerTyCon, integerDataCon,
+       rationalTyCon, ratioDataCon,
 
        -- type: Lift
        liftTyCon, liftDataCon, mkLiftTy,
@@ -97,7 +101,8 @@ module AbsPrel (
 --     packedStringTyCon, packedStringTy, psDataCon, cpsDataCon,
 
        -- for compilation of List Comprehensions and foldr
-       foldlId, foldrId, mkFoldl, mkFoldr, mkBuild, buildId,
+       foldlId, foldrId, mkFoldl, mkFoldr,
+       mkBuild, buildId, augmentId, appendId,
 
 #ifdef DPH
        mkProcessorTy,
@@ -238,6 +243,7 @@ min_nonprim_tycon_list -- used w/ HideMostBuiltinNames
       doubleTyCon,
       integerTyCon,
       ratioTyCon,
+      liftTyCon,
       return2GMPsTyCon,        -- ADR asked for these last two (WDP 94/11)
       returnIntAndGMPTyCon ]
 
@@ -254,17 +260,23 @@ totally_wired_in_Ids
      (SLIT("parError#"),       WiredInVal pAR_ERROR_ID), -- ditto
      (SLIT("_trace"),          WiredInVal tRACE_ID),
 
-     -- now the build  / foldr Id, which needs to be built in
+     -- now the foldr/build Ids, which need to be built in
+     -- because they have magic unfoldings
      (SLIT("_build"),          WiredInVal buildId),
+     (SLIT("_augment"),                WiredInVal augmentId),
      (SLIT("foldl"),           WiredInVal foldlId),
      (SLIT("foldr"),           WiredInVal foldrId),
+     (SLIT("unpackAppendPS#"), WiredInVal unpackCStringAppendId),
+     (SLIT("unpackFoldrPS#"),  WiredInVal unpackCStringFoldrId),
+
      (SLIT("_runST"),          WiredInVal runSTId),
-     (SLIT("realWorld#"),      WiredInVal realWorldPrimId)
+     (SLIT("_seq_"),           WiredInVal seqId),  -- yes, used in sequential-land, too
+                                                   -- WDP 95/11
+    (SLIT("realWorld#"),       WiredInVal realWorldPrimId)
     ]
 
 parallel_vals
-  =[(SLIT("_seq_"),            WiredInVal seqId),
-    (SLIT("_par_"),            WiredInVal parId),
+  =[(SLIT("_par_"),            WiredInVal parId),
     (SLIT("_fork_"),           WiredInVal forkId)
 #ifdef GRAN
     ,
@@ -455,7 +467,6 @@ lots_of_primops
        IntSubOp,
        IntMulOp,
        IntQuotOp,
-       IntDivOp,
        IntRemOp,
        IntNegOp,
        AndOp,