[SimplifyCFG] Respect optforfuzzing in NPM pass

Regression caused by refactoring in
cdd006eec9409923f9a56b9026ce2cb72e7b71dc.

See discussion in https://reviews.llvm.org/D89917.

Reviewed By: arsenm, morehouse

Differential Revision: https://reviews.llvm.org/D91473
This commit is contained in:
Arthur Eubanks 2020-11-13 18:34:34 -08:00
parent 618f11ba0b
commit aeb0fdff35
2 changed files with 6 additions and 0 deletions

View File

@ -245,6 +245,11 @@ PreservedAnalyses SimplifyCFGPass::run(Function &F,
FunctionAnalysisManager &AM) {
auto &TTI = AM.getResult<TargetIRAnalysis>(F);
Options.AC = &AM.getResult<AssumptionAnalysis>(F);
if (F.hasFnAttribute(Attribute::OptForFuzzing)) {
Options.setSimplifyCondBranch(false).setFoldTwoEntryPHINode(false);
} else {
Options.setSimplifyCondBranch(true).setFoldTwoEntryPHINode(true);
}
if (!simplifyFunctionCFG(F, TTI, Options))
return PreservedAnalyses::all();
PreservedAnalyses PA;

View File

@ -1,4 +1,5 @@
; RUN: opt < %s -simplifycfg -S | FileCheck %s
; RUN: opt < %s -passes=simplifycfg -S | FileCheck %s
define i32 @foo(i32 %x) optforfuzzing {
entry: