summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/CMakeLists.txt
diff options
context:
space:
mode:
authorTeresa Johnson <tejohnson@google.com>2019-01-04 19:04:54 +0000
committerTeresa Johnson <tejohnson@google.com>2019-01-04 19:04:54 +0000
commit853b962416bcb5c85df455eb4d89c896f9147ee8 (patch)
treee470c0dffcc023c6b58014e1d85abb3265aeb6c5 /llvm/lib/Transforms/Utils/CMakeLists.txt
parent1e36882b5291d5a7209be4f9c99b9713828afac4 (diff)
downloadbcm5719-llvm-853b962416bcb5c85df455eb4d89c896f9147ee8.tar.gz
bcm5719-llvm-853b962416bcb5c85df455eb4d89c896f9147ee8.zip
[ThinLTO] Handle chains of aliases
At -O0, globalopt is not run during the compile step, and we can have a chain of an alias having an immediate aliasee of another alias. The summaries are constructed assuming aliases in a canonical form (flattened chains), and as a result only the base object but no intermediate aliases were preserved. Fix by adding a pass that canonicalize aliases, which ensures each alias is a direct alias of the base object. Reviewers: pcc, davidxl Subscribers: mehdi_amini, inglorion, eraman, steven_wu, dexonsmith, arphaman, llvm-commits Differential Revision: https://reviews.llvm.org/D54507 llvm-svn: 350423
Diffstat (limited to 'llvm/lib/Transforms/Utils/CMakeLists.txt')
-rw-r--r--llvm/lib/Transforms/Utils/CMakeLists.txt1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Utils/CMakeLists.txt b/llvm/lib/Transforms/Utils/CMakeLists.txt
index eb3bad79129..cb3dc17c03a 100644
--- a/llvm/lib/Transforms/Utils/CMakeLists.txt
+++ b/llvm/lib/Transforms/Utils/CMakeLists.txt
@@ -6,6 +6,7 @@ add_llvm_library(LLVMTransformUtils
BuildLibCalls.cpp
BypassSlowDivision.cpp
CallPromotionUtils.cpp
+ CanonicalizeAliases.cpp
CloneFunction.cpp
CloneModule.cpp
CodeExtractor.cpp
OpenPOWER on IntegriCloud