summaryrefslogtreecommitdiff
path: root/compiler/codeGen
diff options
context:
space:
mode:
authorIan Lynagh <igloo@earth.li>2011-09-12 23:24:53 +0100
committerIan Lynagh <igloo@earth.li>2011-09-13 19:47:15 +0100
commitfdac48f3a955997f5f9caddf5e38105cd636a010 (patch)
treeb3c38f26739b25d53118faf2a9c3e3faa2fb199c /compiler/codeGen
parent1b4e25170add5efbb2d8de0d60a83212912e007e (diff)
downloadhaskell-fdac48f3a955997f5f9caddf5e38105cd636a010.tar.gz
change how Integer's are handled in Core
We now treat them as literals until CorePrep, when we finally convert them into the real Core representation. This makes it a lot simpler to implement built-in rules on them.
Diffstat (limited to 'compiler/codeGen')
-rw-r--r--compiler/codeGen/CgUtils.hs3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/codeGen/CgUtils.hs b/compiler/codeGen/CgUtils.hs
index aa86690612..e01457ae99 100644
--- a/compiler/codeGen/CgUtils.hs
+++ b/compiler/codeGen/CgUtils.hs
@@ -108,6 +108,9 @@ mkSimpleLit (MachLabel fs ms fod)
-- TODO: Literal labels might not actually be in the current package...
labelSrc = ForeignLabelInThisPackage
mkSimpleLit (MachStr _) = panic "mkSimpleLit: MachStr"
+-- No LitInteger's should be left by the time this is called. CorePrep
+-- should have converted them all to a real core representation.
+mkSimpleLit (LitInteger _) = panic "mkSimpleLit: LitInteger"
mkLtOp :: Literal -> MachOp
-- On signed literals we must do a signed comparison