X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=inline;f=compiler%2Fcmm%2FCmmInfo.hs;h=3524377ac588b2a508e839308c438ac4fbe86f5c;hb=16a2f6a8a381af31c23b6a41a851951da9bc1803;hp=d77488c1ab242768eee0a11a7efc402c09550c96;hpb=67760c45fc0b18bdd21d31b0462f4ad7ee4d2c4c;p=ghc-hetmet.git diff --git a/compiler/cmm/CmmInfo.hs b/compiler/cmm/CmmInfo.hs index d77488c..3524377 100644 --- a/compiler/cmm/CmmInfo.hs +++ b/compiler/cmm/CmmInfo.hs @@ -1,3 +1,10 @@ +{-# OPTIONS -w #-} +-- The above warning supression flag is a temporary kludge. +-- While working on this module you are encouraged to remove it and fix +-- any warnings in the module. See +-- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings +-- for details + module CmmInfo ( cmmToRawCmm, mkInfoTable @@ -7,7 +14,6 @@ module CmmInfo ( import Cmm import CmmUtils -import PprCmm import CLabel import MachOp @@ -21,7 +27,6 @@ import SMRep import Constants import StaticFlags -import DynFlags import Unique import UniqSupply import Panic @@ -146,14 +151,14 @@ mkInfoTableAndCode :: CLabel -> [CmmLit] -> CLabel -> CmmFormals - -> [CmmBasicBlock] + -> ListGraph CmmStmt -> [RawCmmTop] mkInfoTableAndCode info_lbl std_info extra_bits entry_lbl args blocks | tablesNextToCode -- Reverse the extra_bits; and emit the top-level proc = [CmmProc (map CmmStaticLit (reverse extra_bits ++ std_info)) entry_lbl args blocks] - | null blocks -- No actual code; only the info table is significant + | ListGraph [] <- blocks -- No code; only the info table is significant = -- Use a zero place-holder in place of the -- entry-label in the info table [mkRODataLits info_lbl (zeroCLit : std_info ++ extra_bits)] @@ -270,3 +275,7 @@ mkStdInfoTable type_descr closure_descr cl_type srt_len layout_lit | otherwise = [] type_lit = packHalfWordsCLit cl_type srt_len + + +_unused :: FS.FastString -- stops a warning +_unused = undefined