Skip to content

Commit 5493362

Browse files
meg-guptaatrick
authored andcommitted
Add IsInfiniteJumpThreadingBudget for testing
1 parent 74e928b commit 5493362

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

lib/SILOptimizer/Transforms/SimplifyCFG.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,11 @@ llvm::cl::opt<bool> EnableOSSARewriteTerminator(
5757
"Enable OSSA simplify-cfg with non-trivial terminator rewriting "
5858
"(staging)."));
5959

60+
llvm::cl::opt<bool> IsInfiniteJumpThreadingBudget(
61+
"sil-infinite-jump-threading-budget",
62+
llvm::cl::desc(
63+
"Use infinite budget for jump threading. Useful for testing purposes"));
64+
6065
STATISTIC(NumBlocksDeleted, "Number of unreachable blocks removed");
6166
STATISTIC(NumBlocksMerged, "Number of blocks merged together");
6267
STATISTIC(NumJumpThreads, "Number of jumps threaded");
@@ -1068,7 +1073,7 @@ bool SimplifyCFG::tryJumpThreading(BranchInst *BI) {
10681073
// major second order simplifications. Here we only do it if there are
10691074
// "constant" arguments to the branch or if we know how to fold something
10701075
// given the duplication.
1071-
int ThreadingBudget = 0;
1076+
int ThreadingBudget = IsInfiniteJumpThreadingBudget ? INT_MAX : 0;
10721077

10731078
for (unsigned i : indices(BI->getArgs())) {
10741079
SILValue Arg = BI->getArg(i);

0 commit comments

Comments
 (0)