llvmGen: move to LLVM 3.6 exclusively
authorBen Gamari <bgamari.foss@gmail.com>
Mon, 9 Feb 2015 21:21:28 +0000 (15:21 -0600)
committerAustin Seipp <austin@well-typed.com>
Tue, 10 Feb 2015 03:07:27 +0000 (21:07 -0600)
commit5d5abdca31cdb4db5303999778fa25c4a1371084
treed6dee9b391d24f86859b36846da4090839ed7513
parentd5a80dbe2ea03099c085020142528fcd39059a27
llvmGen: move to LLVM 3.6 exclusively

Summary:
Rework llvmGen to use LLVM 3.6 exclusively. The plans for the 7.12 release are to ship LLVM alongside GHC in the interests of user (and developer) sanity.

Along the way, refactor TNTC support to take advantage of the new `prefix` data support in LLVM 3.6. This allows us to drop the section-reordering component of the LLVM mangler.

Test Plan: Validate, look at emitted code

Reviewers: dterei, austin, scpmw

Reviewed By: austin

Subscribers: erikd, awson, spacekitteh, thomie, carter

Differential Revision: https://phabricator.haskell.org/D530

GHC Trac Issues: #10074
compiler/llvmGen/Llvm/AbsSyn.hs
compiler/llvmGen/Llvm/MetaData.hs
compiler/llvmGen/Llvm/PpLlvm.hs
compiler/llvmGen/LlvmCodeGen.hs
compiler/llvmGen/LlvmCodeGen/Base.hs
compiler/llvmGen/LlvmCodeGen/Data.hs
compiler/llvmGen/LlvmCodeGen/Ppr.hs
compiler/llvmGen/LlvmMangler.hs