import Class ( Class )
import CoreSyn ( CoreBind )
import StgSyn ( StgBinding )
-import AbsCSyn ( AbstractC, absCNop )
+import AbsCSyn ( AbstractC )
import PprAbsC ( dumpRealC, writeRealC )
import UniqSupply ( UniqSupply )
-import Module ( Module, moduleString )
+import Module ( Module )
import CmdLineOpts
-import Maybes ( maybeToBool )
-import ErrUtils ( doIfSet, dumpIfSet )
+import ErrUtils ( dumpIfSet )
import Outputable
-import IO ( IOMode(..), hClose, openFile )
+import IO ( IOMode(..), hClose, openFile, Handle )
\end{code}
} }
+doOutput :: (Handle -> IO ()) -> IO ()
doOutput io_action
= (do handle <- openFile opt_OutputFile WriteMode
io_action handle
outputAsm flat_absC ncg_uniqs
#ifndef OMIT_NATIVE_CODEGEN
- = do dumpIfSet opt_D_dump_stix "Final stix code" stix_final
- dumpIfSet opt_D_dump_asm "Asm code" ncg_output_d
- doOutput (\ f -> printForAsm f ncg_output_d)
+ = do dumpIfSet opt_D_dump_stix "Final stix code" stix_final
+ dumpIfSet opt_D_dump_asm "Asm code" ncg_output_d
+ doOutput ( \f -> printForAsm f ncg_output_d)
where
(stix_final, ncg_output_d) = nativeCodeGen flat_absC ncg_uniqs