diff options
author | dias@eecs.harvard.edu <unknown> | 2008-05-29 16:05:45 +0000 |
---|---|---|
committer | dias@eecs.harvard.edu <unknown> | 2008-05-29 16:05:45 +0000 |
commit | 0d80489c9b9f2421f65d8dd86c1e50c6bb429715 (patch) | |
tree | 68fbebbb771f95252e847cd91180c614b405f14c /compiler/cmm/Cmm.hs | |
parent | 724a9e83f9498382e3580d26a7dd7cd6b108408c (diff) | |
download | haskell-0d80489c9b9f2421f65d8dd86c1e50c6bb429715.tar.gz |
Replacing copyins and copyouts with data-movement instructions
o Moved BlockId stuff to a new file to avoid module recursion
o Defined stack areas for parameter-passing locations and spill slots
o Part way through replacing copy in and copy out nodes
- added movement instructions for stack pointer
- added movement instructions for call and return parameters
(but not with the proper calling conventions)
o Inserting spills and reloads for proc points is now procpoint-aware
(it was relying on the presence of a CopyIn node as a proxy for
procpoint knowledge)
o Changed ZipDataflow to expect AGraphs (instead of being polymorphic in
the type of graph)
Diffstat (limited to 'compiler/cmm/Cmm.hs')
-rw-r--r-- | compiler/cmm/Cmm.hs | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/compiler/cmm/Cmm.hs b/compiler/cmm/Cmm.hs index 2d13c45ba7..38dc5b3ba5 100644 --- a/compiler/cmm/Cmm.hs +++ b/compiler/cmm/Cmm.hs @@ -23,14 +23,11 @@ module Cmm ( CmmCallTarget(..), CmmStatic(..), Section(..), module CmmExpr, - - BlockId(..), mkBlockId, - BlockEnv, emptyBlockEnv, lookupBlockEnv, extendBlockEnv, mkBlockEnv, - BlockSet, emptyBlockSet, elemBlockSet, extendBlockSet, ) where #include "HsVersions.h" +import BlockId import CmmExpr import MachOp import CLabel @@ -42,10 +39,6 @@ import FastString import Data.Word -import StackSlot ( BlockId(..), mkBlockId - , BlockEnv, emptyBlockEnv, lookupBlockEnv, extendBlockEnv, mkBlockEnv - , BlockSet, emptyBlockSet, elemBlockSet, extendBlockSet - ) -- A [[BlockId]] is a local label. -- Local labels must be unique within an entire compilation unit, not @@ -277,7 +270,6 @@ instance UserOfLocalRegs CmmCallTarget where instance DefinerOfLocalRegs a => DefinerOfLocalRegs (CmmKinded a) where foldRegsDefd f z (CmmKinded x _) = foldRegsDefd f z x - --just look like a tuple, since it was a tuple before -- ... is that a good idea? --Isaac Dupree instance (Outputable a) => Outputable (CmmKinded a) where |