From cbf748993f59682f60dfe620eafea24124f737fb Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Thu, 29 Nov 2018 23:05:23 +0100 Subject: Enable -mergefunc-use-aliases If the Rust LLVM fork is used, enable the -mergefunc-use-aliases flag, which will create aliases for merged functions, rather than inserting a call from one to the other. A number of codegen tests needed to be adjusted, because functions that previously fell below the thunk limit are now being merged. Merging is prevented either using -C no-prepopulate-passes, or by making the functions non-identical. I expect that this is going to break something, somewhere, because it isn't able to deal with aliases properly, but we won't find out until we try :) This fixes #52651. --- src/rustllvm/PassWrapper.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/rustllvm/PassWrapper.cpp') diff --git a/src/rustllvm/PassWrapper.cpp b/src/rustllvm/PassWrapper.cpp index 06de0d6509b..aa420bf6100 100644 --- a/src/rustllvm/PassWrapper.cpp +++ b/src/rustllvm/PassWrapper.cpp @@ -284,7 +284,7 @@ static Optional fromRust(LLVMRustRelocMode RustReloc) { report_fatal_error("Bad RelocModel."); } -#if LLVM_RUSTLLVM +#ifdef LLVM_RUSTLLVM /// getLongestEntryLength - Return the length of the longest entry in the table. /// static size_t getLongestEntryLength(ArrayRef Table) { -- cgit 1.4.1-3-g733a5