Ticket #955 (closed bug: fixed)
more object-code blow-up in ghc-6.8.3 vs. ghc-6.4.2 (both with optimization)
| Reported by: | maeder@… | Owned by: | |
|---|---|---|---|
| Priority: | high | Milestone: | 6.10.1 |
| Component: | Compiler | Version: | 6.8.3 |
| Keywords: | object-code blow-up | Cc: | simonpj@… |
| Operating System: | Unknown/Multiple | Architecture: | Unknown/Multiple |
| Type of failure: | Runtime performance bug | Difficulty: | Unknown |
| Test Case: | Blocked By: | ||
| Blocking: | Related Tickets: |
Description
After upgrading from ghc-6.4.2 to ghc-6.6 our already large binary became noticeably larger.
I'll include a test case based on the programatica sources and our ATerm library. It's only necessary to compile the two top-level files ATC.hs and ATC2.hs and the files in Common/ATerm with optimization. This produces large object files (under i386 linux) of the following sizes:
using ghc-6.4.2: 160K ATC2.o 721K ATC.o (-O0) 2,1M ATC2.o 1,7M ATC.o (-O)
using ghc-6.6: 156K ATC2.o 729K ATC.o (-O0) 4,1M ATC2.o 1,8M ATC.o (-O)
After unpacking atc.tgz calling make should check out some programatica sources and compile everything with optimization up to ATC2.o. (programatica requires the convert.sh script for ghc-6.6)
Christian
P.S. I've check the old ticket http://hackage.haskell.org/trac/ghc/ticket/490 (In that example the object code does no longer blow up.)

