igloo@userpc15:~/debug$ ghc -O -split-objs -c Foo.hs -v -keep-tmp-files Glasgow Haskell Compiler, Version 6.4.2, for Haskell 98, compiled by GHC version 6.4.2 Using package config file: /usr/lib/ghc-6.4.2/package.conf Hsc static flags: -static -fglobalise-toplev-names *** Checking old interface for Foo: *** Parser: *** Renamer/typechecker: *** Desugar: Result size = 50 *** Simplify: Result size = 30 Result size = 30 *** Specialise: Result size = 30 *** Float out (not lambdas, not constants): Result size = 30 *** Float inwards: Result size = 30 *** Simplify: Result size = 30 *** Simplify: Result size = 30 *** Simplify: Result size = 30 *** Demand analysis: Result size = 30 *** Worker Wrapper binds: Result size = 30 *** GlomBinds: *** Simplify: Result size = 30 *** Float out (not lambdas, constants): Result size = 30 *** Common sub-expression: Result size = 21 *** Float inwards: Result size = 21 *** Simplify: Result size = 21 *** Tidy Core: Result size = 21 *** CorePrep: Result size = 21 *** Stg2Stg: *** CodeGen: *** CodeOutput: *** C Compiler gcc -x c /tmp/ghc26801.hc -o /tmp/ghc26801.raw_s -DDONT_WANT_WIN32_DLL_SUPPORT -fno-defer-pop -fomit-frame-pointer -fno-builtin -DSTOLEN_X86_REGS=4 -ffloat-store -fno-strict-aliasing -v -S -Wimplicit -O -D__GLASGOW_HASKELL__=604 -DUSE_SPLIT_MARKERS -I . -I /usr/lib/ghc-6.4.2/include Using built-in specs. Target: i486-linux-gnu Configured with: ../src/configure -v --enable-languages=c,c++,java,fortran,objc,obj-c++,ada,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-4.1-1.4.2.0/jre --enable-mpfr --with-tune=i686 --enable-checking=release i486-linux-gnu Thread model: posix gcc version 4.1.2 20060613 (prerelease) (Debian 4.1.1-5) /usr/lib/gcc/i486-linux-gnu/4.1.2/cc1 -quiet -v -I . -I /usr/lib/ghc-6.4.2/include -DDONT_WANT_WIN32_DLL_SUPPORT -DSTOLEN_X86_REGS=4 -D__GLASGOW_HASKELL__=604 -DUSE_SPLIT_MARKERS /tmp/ghc26801.hc -quiet -dumpbase ghc26801.hc -mtune=i686 -auxbase-strip /tmp/ghc26801.raw_s -O -Wimplicit -version -fno-defer-pop -fomit-frame-pointer -fno-builtin -ffloat-store -fno-strict-aliasing -o /tmp/ghc26801.raw_s ignoring nonexistent directory "/usr/local/include/i486-linux-gnu" ignoring nonexistent directory "/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../i486-linux-gnu/include" ignoring nonexistent directory "/usr/include/i486-linux-gnu" #include "..." search starts here: #include <...> search starts here: . /usr/lib/ghc-6.4.2/include /usr/local/include /usr/lib/gcc/i486-linux-gnu/4.1.2/include /usr/include End of search list. GNU C version 4.1.2 20060613 (prerelease) (Debian 4.1.1-5) (i486-linux-gnu) compiled by GNU C version 4.1.2 20060613 (prerelease) (Debian 4.1.1-5). GGC heuristics: --param ggc-min-expand=99 --param ggc-min-heapsize=129565 Compiler executable checksum: 3efbb0b5b3119ec825babd3e1cecb910 *** Mangler /usr/lib/ghc-6.4.2/ghc-asm /tmp/ghc26801.raw_s /tmp/ghc26801.split_s 4 *** Splitter /usr/lib/ghc-6.4.2/ghc-split /tmp/ghc26801.split_s /tmp/ghc26801.split /tmp/ghc26801.split *** Assembler gcc -c -o Foo_split/Foo__1.o /tmp/ghc26801.split__1.s