summaryrefslogtreecommitdiff
path: root/compiler/nativeGen/PprBase.hs
Commit message (Collapse)AuthorAgeFilesLines
* Replace calls to `ptext . sLit` with `text`Jan Stolarek2016-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | Summary: In the past the canonical way for constructing an SDoc string literal was the composition `ptext . sLit`. But for some time now we have function `text` that does the same. Plus it has some rules that optimize its runtime behaviour. This patch takes all uses of `ptext . sLit` in the compiler and replaces them with calls to `text`. The main benefits of this patch are clener (shorter) code and less dependencies between module, because many modules now do not need to import `FastString`. I don't expect any performance benefits - we mostly use SDocs to report errors and it seems there is little to be gained here. Test Plan: ./validate Reviewers: bgamari, austin, goldfire, hvr, alanz Subscribers: goldfire, thomie, mpickering Differential Revision: https://phabricator.haskell.org/D1784
* Implement function-sections for Haskell code, #8405Simon Brenner2015-11-121-1/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a flag -split-sections that does similar things to -split-objs, but using sections in single object files instead of relying on the Satanic Splitter and other abominations. This is very similar to the GCC flags -ffunction-sections and -fdata-sections. The --gc-sections linker flag, which allows unused sections to actually be removed, is added to all link commands (if the linker supports it) so that space savings from having base compiled with sections can be realized. Supported both in LLVM and the native code-gen, in theory for all architectures, but really tested on x86 only. In the GHC build, a new SplitSections variable enables -split-sections for relevant parts of the build. Test Plan: validate with both settings of SplitSections Reviewers: dterei, Phyx, austin, simonmar, thomie, bgamari Reviewed By: simonmar, thomie, bgamari Subscribers: hsyl20, erikd, kgardas, thomie Differential Revision: https://phabricator.haskell.org/D1242 GHC Trac Issues: #8405
* Future-proof code for upcoming `array-0.5.0.0`Herbert Valerio Riedel2013-10-111-4/+4
| | | | | | This way CPP conditionals can be avoided for the transition period. Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
* Detab modules with tabs on 5 lines or fewerIan Lynagh2013-04-061-12/+5
|
* GHC 7.4 is now required for building HEADIan Lynagh2012-07-201-5/+0
|
* Use SDoc rather than Doc in the native gensIan Lynagh2012-06-121-17/+0
| | | | This avoid lots of converting back and forth between the two types.
* Use -fwarn-tabs when validatingIan Lynagh2011-11-041-0/+7
| | | | | We only use it for "compiler" sources, i.e. not for libraries. Many modules have a -fno-warn-tabs kludge for now.
* More CPP removal: pprDynamicLinkerAsmLabel in CLabelIan Lynagh2011-10-021-3/+4
| | | | And some knock-on changes
* fix some #ifdefs that were making compilation with 7.2.1 fail - theSimon Marlow2011-08-141-1/+1
| | | | safified array package is not in 7.2.1
* Fix import DEPRECATE failures for castSTUArraySimon Peyton Jones2011-08-021-0/+7
|
* NCG: Split PprMach into arch specific modulesBen.Lippmeier@anu.edu.au2009-02-051-0/+86
- There are still some #ifdefs for choosing between i386, x86_64, linux, darwin and other OS's. - Also reformat SPARC.RegInfo to remove some of the visual noise.