Rip out object splitting
authorBen Gamari <ben@smart-cactus.org>
Mon, 26 Nov 2018 22:21:12 +0000 (17:21 -0500)
committerMarge Bot <ben+marge-bot@smart-cactus.org>
Wed, 6 Mar 2019 03:22:40 +0000 (22:22 -0500)
commit37f257afcd6a52cf4d76c60d766b1aeb520b9f05
treeac800e46fbf94c16ce39170f4a720637b07dde06
parent646b6dfbe125aa756a935e840979ba11b4a882c0
Rip out object splitting

The splitter is an evil Perl script that processes assembler code.
Its job can be done better by the linker's --gc-sections flag. GHC
passes this flag to the linker whenever -split-sections is passed on
the command line.

This is based on @DemiMarie's D2768.

Fixes Trac #11315
Fixes Trac #9832
Fixes Trac #8964
Fixes Trac #8685
Fixes Trac #8629
72 files changed:
.gitignore
aclocal.m4
compiler/cmm/CLabel.hs
compiler/codeGen/StgCmm.hs
compiler/codeGen/StgCmmExpr.hs
compiler/codeGen/StgCmmMonad.hs
compiler/ghc.mk
compiler/main/DriverPhases.hs
compiler/main/DriverPipeline.hs
compiler/main/DynFlags.hs
compiler/main/HscMain.hs
compiler/main/SysTools.hs
compiler/main/SysTools/BaseDir.hs
compiler/main/SysTools/Tasks.hs
compiler/nativeGen/AsmCodeGen.hs
compiler/nativeGen/CFG.hs
compiler/nativeGen/PIC.hs
compiler/nativeGen/PPC/Ppr.hs
compiler/nativeGen/RegAlloc/Liveness.hs
compiler/nativeGen/SPARC/Ppr.hs
compiler/nativeGen/X86/Ppr.hs
configure.ac
distrib/cross-port
distrib/hc-build
docs/storage-mgt/rp.tex
docs/users_guide/8.8.1-notes.rst
docs/users_guide/packages.rst
docs/users_guide/phases.rst
driver/split/Makefile [deleted file]
driver/split/ghc-split.pl [deleted file]
driver/split/ghc.mk [deleted file]
ghc.mk
ghc/ghc.mk
hadrian/README.md
hadrian/cfg/system.config.in
hadrian/doc/user-settings.md
hadrian/src/Base.hs
hadrian/src/Builder.hs
hadrian/src/CommandLine.hs
hadrian/src/Flavour.hs
hadrian/src/Oracles/Flag.hs
hadrian/src/Packages.hs
hadrian/src/Rules/BinaryDist.hs
hadrian/src/Rules/Generate.hs
hadrian/src/Rules/Library.hs
hadrian/src/Settings/Builders/Ghc.hs
hadrian/src/Settings/Default.hs
hadrian/src/Settings/Default.hs-boot
mk/config.mk.in
mk/flavours/bench-cross-ncg.mk
mk/flavours/bench-cross.mk
mk/flavours/bench-llvm.mk
mk/flavours/bench.mk
mk/flavours/devel1.mk
mk/flavours/devel2.mk
mk/flavours/perf-cross-ncg.mk
mk/flavours/perf-cross.mk
mk/flavours/perf-llvm.mk
mk/flavours/perf.mk
mk/flavours/prof-llvm.mk
mk/flavours/prof.mk
mk/flavours/quick-cross-ncg.mk
mk/flavours/quick-cross.mk
mk/flavours/quick-llvm.mk
mk/flavours/quick.mk
mk/flavours/quickest.mk
mk/flavours/validate.mk
rules/build-package-way.mk
rules/build-perl.mk [deleted file]
rules/distdir-opts.mk
rules/distdir-way-opts.mk
utils/haddock