diff options
| author | Nikita Popov <nikita.ppv@gmail.com> | 2018-11-29 23:05:23 +0100 |
|---|---|---|
| committer | Nikita Popov <nikita.ppv@gmail.com> | 2018-11-30 00:52:16 +0100 |
| commit | cbf748993f59682f60dfe620eafea24124f737fb (patch) | |
| tree | 14feb4e1666894a16c5c35c59942a5111bdf941c /src/rustllvm/PassWrapper.cpp | |
| parent | 0c1dc62c1ec3c23dcb5e90500a2b3b25817ad03a (diff) | |
| download | rust-cbf748993f59682f60dfe620eafea24124f737fb.tar.gz rust-cbf748993f59682f60dfe620eafea24124f737fb.zip | |
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.
Diffstat (limited to 'src/rustllvm/PassWrapper.cpp')
| -rw-r--r-- | src/rustllvm/PassWrapper.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
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<Reloc::Model> 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<SubtargetFeatureKV> Table) { |
