
#16007: Implement `-Os` -------------------------------------+------------------------------------- Reporter: sgraf | Owner: (none) Type: task | Status: new Priority: normal | Milestone: ⊥ Component: Compiler | Version: 8.6.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #16005 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Description changed by sgraf: Old description:
Popular C compilers like GCC or clang allow to optimise for binary size.
Since there are multiple ways in which GHC trades code size for faster programs, it might make sense to follow suit. This ticket is for tracking which optimisations/hacks in the compiler might be affected, as well as
Feel free to add items to the following list:
- +0.1% increase in code size due to known calls instead of re-using generic apply thunks in #16005 - -0.1% due to `-fstg-lift-lams` #9476
New description: Popular C compilers like GCC or clang allow to optimise for binary size. Since there are multiple ways in which GHC trades code size for faster programs, it might make sense to follow suit. This ticket is for tracking which optimisations/hacks in the compiler might be affected, as well as Feel free to add items to the following list: - potentially huge impact due to specialisation, liberate case and inlining - +0.1% increase in code size due to known calls instead of re-using generic apply thunks in #16005 - -0.1% due to `-fstg-lift-lams` #9476 -- -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/16007#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler