diff options
| author | Björn Steinbrink <bsteinbr@gmail.com> | 2014-08-24 00:03:56 +0200 |
|---|---|---|
| committer | Björn Steinbrink <bsteinbr@gmail.com> | 2014-08-24 01:08:58 +0200 |
| commit | bbc66332fe8b966770290f784045b9757d66d126 (patch) | |
| tree | 291fb836d23af4396e5d4a7135f809a64dcb7c1f /src | |
| parent | 03fd90be459650160a4edefbc78588a938db2f8c (diff) | |
| download | rust-bbc66332fe8b966770290f784045b9757d66d126.tar.gz rust-bbc66332fe8b966770290f784045b9757d66d126.zip | |
Enable the MergeFunc pass
Fixes #9536
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc/back/link.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/librustc/back/link.rs b/src/librustc/back/link.rs index 7c2b0ba6168..9ce0e3a3357 100644 --- a/src/librustc/back/link.rs +++ b/src/librustc/back/link.rs @@ -536,6 +536,13 @@ pub mod write { llvm::LLVMPassManagerBuilderPopulateFunctionPassManager(builder, fpm); llvm::LLVMPassManagerBuilderPopulateModulePassManager(builder, mpm); llvm::LLVMPassManagerBuilderDispose(builder); + + match opt { + llvm::CodeGenLevelDefault | llvm::CodeGenLevelAggressive => { + "mergefunc".with_c_str(|s| llvm::LLVMRustAddPass(mpm, s)); + } + _ => {} + }; } } |
