diff options
author | Simon Marlow <marlowsd@gmail.com> | 2011-12-19 15:59:56 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2011-12-19 15:59:56 +0000 |
commit | ab67c2a4c0ae4b6aeb40fe7569a95c6a3a611c59 (patch) | |
tree | 416ac322edb7b0551c09d8e2cc9985312abd4652 /compiler/cmm/CmmExpr.hs | |
parent | b4018aaaebe4250e78cdcb245466fdcce8918abf (diff) | |
download | haskell-ab67c2a4c0ae4b6aeb40fe7569a95c6a3a611c59.tar.gz |
More codegen refactoring with simonpj
Diffstat (limited to 'compiler/cmm/CmmExpr.hs')
-rw-r--r-- | compiler/cmm/CmmExpr.hs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/compiler/cmm/CmmExpr.hs b/compiler/cmm/CmmExpr.hs index 885639b874..9f651717b2 100644 --- a/compiler/cmm/CmmExpr.hs +++ b/compiler/cmm/CmmExpr.hs @@ -75,7 +75,8 @@ data Area data AreaId = Old -- See Note [Old Area] - | Young BlockId + | Young BlockId -- Invariant: must be a continuation BlockId + -- See Note [Continuation BlockId] in CmmNode. deriving (Eq, Ord) {- Note [Old Area] @@ -120,7 +121,11 @@ data CmmLit -- It is also used inside the NCG during when generating -- position-independent code. | CmmLabelDiffOff CLabel CLabel Int -- label1 - label2 + offset - | CmmBlock BlockId -- Code label + + | CmmBlock BlockId -- Code label + -- Invariant: must be a continuation BlockId + -- See Note [Continuation BlockId] in CmmNode. + | CmmHighStackMark -- stands for the max stack space used during a procedure deriving Eq |