diff options
author | Daniel Sanders <daniel_l_sanders@apple.com> | 2019-02-22 20:59:07 +0000 |
---|---|---|
committer | Daniel Sanders <daniel_l_sanders@apple.com> | 2019-02-22 20:59:07 +0000 |
commit | 07cda257f84ba773ee6dd0b140889c59f6459f39 (patch) | |
tree | b65b6c5b0e04304d4fa620cf98dfdf99d7f02cc8 /llvm/lib/CodeGen/TargetPassConfig.cpp | |
parent | c2d95792d64bcaa8235c0f31747e56ce5d203e0f (diff) | |
download | bcm5719-llvm-07cda257f84ba773ee6dd0b140889c59f6459f39.tar.gz bcm5719-llvm-07cda257f84ba773ee6dd0b140889c59f6459f39.zip |
Restore ability for C++ API users to Enable IPRA.
Summary:
Prior to r310876 one of our out-of-tree targets was enabling IPRA by modifying
the TargetOptions::EnableIPRA. This no longer works on current trunk since the
useIPRA() hook overrides any values that are set in advance. This patch adjusts
the behaviour of the hook so that API users and useIPRA() can both enable it
but useIPRA() cannot disable it if the API user already enabled it.
Reviewers: arsenm
Reviewed By: arsenm
Subscribers: wdng, mgorny, llvm-commits
Differential Revision: https://reviews.llvm.org/D38043
llvm-svn: 354692
Diffstat (limited to 'llvm/lib/CodeGen/TargetPassConfig.cpp')
-rw-r--r-- | llvm/lib/CodeGen/TargetPassConfig.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/TargetPassConfig.cpp b/llvm/lib/CodeGen/TargetPassConfig.cpp index 399f69680af..76275da38fe 100644 --- a/llvm/lib/CodeGen/TargetPassConfig.cpp +++ b/llvm/lib/CodeGen/TargetPassConfig.cpp @@ -407,7 +407,7 @@ TargetPassConfig::TargetPassConfig(LLVMTargetMachine &TM, PassManagerBase &pm) TM.Options.EnableIPRA = EnableIPRA; else { // If not explicitly specified, use target default. - TM.Options.EnableIPRA = TM.useIPRA(); + TM.Options.EnableIPRA |= TM.useIPRA(); } if (TM.Options.EnableIPRA) |