1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-01-31 20:51:52 +01:00

[SimplifyCFG] Override options in default constructor

SimplifyCFG's options should always be overridden by command line flags,
but they mistakenly weren't in the default constructor.

Reviewed By: ychen

Differential Revision: https://reviews.llvm.org/D87718
This commit is contained in:
Arthur Eubanks 2020-09-15 13:03:05 -07:00
parent fe13cb66f6
commit 842b9ba66b
3 changed files with 6 additions and 1 deletions

View File

@ -34,7 +34,7 @@ public:
/// rather than optimal IR. That is, by default we bypass transformations that
/// are likely to improve performance but make analysis for other passes more
/// difficult.
SimplifyCFGPass() {}
SimplifyCFGPass();
/// Construct a pass with optional optimizations.
SimplifyCFGPass(const SimplifyCFGOptions &PassOptions);

View File

@ -232,6 +232,10 @@ static void applyCommandLineOverridesToOptions(SimplifyCFGOptions &Options) {
Options.SinkCommonInsts = UserSinkCommonInsts;
}
SimplifyCFGPass::SimplifyCFGPass() : Options() {
applyCommandLineOverridesToOptions(Options);
}
SimplifyCFGPass::SimplifyCFGPass(const SimplifyCFGOptions &Opts)
: Options(Opts) {
applyCommandLineOverridesToOptions(Options);

View File

@ -1,4 +1,5 @@
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt < %s -passes=simplifycfg -hoist-common-insts=true -S | FileCheck %s
; RUN: opt < %s -simplifycfg -hoist-common-insts=true -S | FileCheck %s
define void @foo(i1 %C, i32* %P) {