From bbc66332fe8b966770290f784045b9757d66d126 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Steinbrink?= Date: Sun, 24 Aug 2014 00:03:56 +0200 Subject: [PATCH] Enable the MergeFunc pass Fixes #9536 --- src/librustc/back/link.rs | 7 +++++++ 1 file changed, 7 insertions(+) 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)); + } + _ => {} + }; } }