diff options
author | Ben Gamari <bgamari.foss@gmail.com> | 2015-02-09 15:21:28 -0600 |
---|---|---|
committer | Austin Seipp <austin@well-typed.com> | 2015-02-09 21:07:27 -0600 |
commit | 5d5abdca31cdb4db5303999778fa25c4a1371084 (patch) | |
tree | d6dee9b391d24f86859b36846da4090839ed7513 /compiler/llvmGen/LlvmCodeGen.hs | |
parent | d5a80dbe2ea03099c085020142528fcd39059a27 (diff) | |
download | haskell-5d5abdca31cdb4db5303999778fa25c4a1371084.tar.gz |
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
Diffstat (limited to 'compiler/llvmGen/LlvmCodeGen.hs')
-rw-r--r-- | compiler/llvmGen/LlvmCodeGen.hs | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/compiler/llvmGen/LlvmCodeGen.hs b/compiler/llvmGen/LlvmCodeGen.hs index 6120a72d3a..f0c184a348 100644 --- a/compiler/llvmGen/LlvmCodeGen.hs +++ b/compiler/llvmGen/LlvmCodeGen.hs @@ -138,13 +138,8 @@ cmmLlvmGen cmm@CmmProc{} = do -- generate llvm code from cmm llvmBC <- withClearVars $ genLlvmProc fixed_cmm - -- allocate IDs for info table and code, so the mangler can later - -- make sure they end up next to each other. - itableSection <- freshSectionId - _codeSection <- freshSectionId - -- pretty print - (docs, ivars) <- fmap unzip $ mapM (pprLlvmCmmDecl itableSection) llvmBC + (docs, ivars) <- fmap unzip $ mapM pprLlvmCmmDecl llvmBC -- Output, note down used variables renderLlvm (vcat docs) |