diff options
author | Gabor Greif <ggreif@gmail.com> | 2018-01-29 14:34:25 +0100 |
---|---|---|
committer | Gabor Greif <ggreif@gmail.com> | 2019-04-15 17:19:03 -0400 |
commit | be05bd8168b0ea65d63dc0093a5c8781a2528500 (patch) | |
tree | d45ed24579c4d084c73884da9589da25b8dcf7d8 /compiler/llvmGen/LlvmCodeGen/Ppr.hs | |
parent | ed94d3450cbb6ec7a31d9aa37efb7fe93d0559cf (diff) | |
download | haskell-be05bd8168b0ea65d63dc0093a5c8781a2528500.tar.gz |
asm-emit-time IND_STATIC elimination
When a new closure identifier is being established to a
local or exported closure already emitted into the same
module, refrain from adding an IND_STATIC closure, and
instead emit an assembly-language alias.
Inter-module IND_STATIC objects still remain, and need to be
addressed by other measures.
Binary-size savings on nofib are around 0.1%.
Diffstat (limited to 'compiler/llvmGen/LlvmCodeGen/Ppr.hs')
-rw-r--r-- | compiler/llvmGen/LlvmCodeGen/Ppr.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/llvmGen/LlvmCodeGen/Ppr.hs b/compiler/llvmGen/LlvmCodeGen/Ppr.hs index c1378aa1fd..3f29133e59 100644 --- a/compiler/llvmGen/LlvmCodeGen/Ppr.hs +++ b/compiler/llvmGen/LlvmCodeGen/Ppr.hs @@ -71,7 +71,7 @@ pprLlvmCmmDecl (CmmProc mb_info entry_lbl live (ListGraph blks)) let fun = LlvmFunction funDec funArgs llvmStdFunAttrs funSect prefix lmblocks name = decName $ funcDecl fun - defName = name `appendFS` fsLit "$def" + defName = llvmDefLabel name funcDecl' = (funcDecl fun) { decName = defName } fun' = fun { funcDecl = funcDecl' } funTy = LMFunction funcDecl' |