[project @ 2003-10-09 11:58:39 by simonpj]
[ghc-hetmet.git] / ghc / compiler / basicTypes / IdInfo.lhs
index 9e1a3f0..0b5b79a 100644 (file)
@@ -77,7 +77,6 @@ module IdInfo (
 
 
 import CoreSyn
-import TyCon           ( TyCon )
 import Class           ( Class )
 import PrimOp          ( PrimOp )
 import Var              ( Id )
@@ -231,7 +230,6 @@ an IdInfo.hi-boot, but no Id.hi-boot, and GlobalIdDetails is imported
 data GlobalIdDetails
   = VanillaGlobal              -- Imported from elsewhere, a default method Id.
 
-  | GenericOpId TyCon          -- The to/from operations of a 
   | RecordSelId FieldLabel     -- The Id for a record selector
   | DataConWorkId DataCon      -- The Id for a data constructor *worker*
   | DataConWrapId DataCon      -- The Id for a data constructor *wrapper*
@@ -252,7 +250,6 @@ notGlobalId = NotGlobalId
 instance Outputable GlobalIdDetails where
     ppr NotGlobalId       = ptext SLIT("[***NotGlobalId***]")
     ppr VanillaGlobal     = ptext SLIT("[GlobalId]")
-    ppr (GenericOpId _)   = ptext SLIT("[GenericOp]")
     ppr (DataConWorkId _) = ptext SLIT("[DataCon]")
     ppr (DataConWrapId _) = ptext SLIT("[DataConWrapper]")
     ppr (ClassOpId _)     = ptext SLIT("[ClassOp]")
@@ -351,19 +348,6 @@ setUnfoldingInfoLazily info uf     -- Lazy variant to avoid looking at the
     info { unfoldingInfo = uf }        -- (In this case the demand-zapping is redundant.)
 
 setUnfoldingInfo info uf 
-  | isEvaldUnfolding uf
-       -- If the unfolding is a value, the demand info may
-       -- go pear-shaped, so we nuke it.  Example:
-       --      let x = (a,b) in
-       --      case x of (p,q) -> h p q x
-       -- Here x is certainly demanded. But after we've nuked
-       -- the case, we'll get just
-       --      let x = (a,b) in h a b x
-       -- and now x is not demanded (I'm assuming h is lazy)
-       -- This really happens.  The solution here is a bit ad hoc...
-  = info { unfoldingInfo = uf, newDemandInfo = Nothing }
-
-  | otherwise
        -- We do *not* seq on the unfolding info, For some reason, doing so 
        -- actually increases residency significantly. 
   = info { unfoldingInfo = uf }