summaryrefslogtreecommitdiff
path: root/compiler/codeGen/StgCmmLayout.hs
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2012-10-14 13:03:32 +0100
committerSimon Marlow <marlowsd@gmail.com>2012-10-19 12:03:16 +0100
commit6fbd46b0bb3ee56160b8216cb2a3bb718ccb41c2 (patch)
tree8e8c569d0989f89c66a6ccd0d59a466266130649 /compiler/codeGen/StgCmmLayout.hs
parent53810006bbcd3fc9b58893858f95c3432cb33f0e (diff)
downloadhaskell-6fbd46b0bb3ee56160b8216cb2a3bb718ccb41c2.tar.gz
Remove the old codegen
Except for CgUtils.fixStgRegisters that is used in the NCG and LLVM backends, and should probably be moved somewhere else.
Diffstat (limited to 'compiler/codeGen/StgCmmLayout.hs')
-rw-r--r--compiler/codeGen/StgCmmLayout.hs20
1 files changed, 11 insertions, 9 deletions
diff --git a/compiler/codeGen/StgCmmLayout.hs b/compiler/codeGen/StgCmmLayout.hs
index 87793ab20f..39676635aa 100644
--- a/compiler/codeGen/StgCmmLayout.hs
+++ b/compiler/codeGen/StgCmmLayout.hs
@@ -30,7 +30,9 @@ module StgCmmLayout (
cmmGetClosureType,
infoTable, infoTableClosureType,
infoTablePtrs, infoTableNonPtrs,
- funInfoTable
+ funInfoTable,
+
+ ArgRep(..), toArgRep, argRepSizeW
) where
@@ -329,15 +331,15 @@ slowCallPattern [] = (fsLit "stg_ap_0", 0)
-- Classifying arguments: ArgRep
-------------------------------------------------------------------------
--- ArgRep is not exported (even abstractly)
--- It's a local helper type for classification
+-- ArgRep is exported, but only for use in the byte-code generator which
+-- also needs to know about the classification of arguments.
-data ArgRep = P -- GC Ptr
- | N -- One-word non-ptr
- | L -- Two-word non-ptr (long)
- | V -- Void
- | F -- Float
- | D -- Double
+data ArgRep = P -- GC Ptr
+ | N -- Word-sized non-ptr
+ | L -- 64-bit non-ptr (long)
+ | V -- Void
+ | F -- Float
+ | D -- Double
instance Outputable ArgRep where
ppr P = text "P"
ppr N = text "N"