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

On branch  : newcg

http://hackage.haskell.org/trac/ghc/changeset/2fa41b0838dcbcc19056e84f6ba2e77c5f3651c1

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

commit 2fa41b0838dcbcc19056e84f6ba2e77c5f3651c1
Author: Simon Marlow <[email protected]>
Date:   Thu Jan 19 10:05:42 2012 +0000

    A little unpacking and strictness

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

 compiler/cmm/CmmExpr.hs |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/compiler/cmm/CmmExpr.hs b/compiler/cmm/CmmExpr.hs
index 9f65171..73afdc3 100644
--- a/compiler/cmm/CmmExpr.hs
+++ b/compiler/cmm/CmmExpr.hs
@@ -62,7 +62,7 @@ instance Eq CmmExpr where     -- Equality ignores the types
   _e1               == _e2               = False
 
 data CmmReg 
-  = CmmLocal  LocalReg
+  = CmmLocal  {-# UNPACK #-} !LocalReg
   | CmmGlobal GlobalReg
   deriving( Eq, Ord )
 
@@ -103,7 +103,7 @@ type AreaMap    = Map Area Int
      -- relative to the oldest byte of the Old Area
 
 data CmmLit
-  = CmmInt Integer  Width
+  = CmmInt !Integer  Width
        -- Interpretation: the 2's complement representation of the value
        -- is truncated to the specified size.  This is easier than trying
        -- to keep the value within range, because we don't know whether
@@ -168,7 +168,7 @@ maybeInvertCmmExpr _ = Nothing
 -----------------------------------------------------------------------------
 
 data LocalReg
-  = LocalReg !Unique CmmType
+  = LocalReg {-# UNPACK #-} !Unique CmmType
     -- ^ Parameters:
     --   1. Identifier
     --   2. Type



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

Reply via email to