Skip to content

Commit bc909e5

Browse files
committed
[Test] Ensourced simplify-cfg-simplify-argument.
Moved the test next to the code it calls.
1 parent 50f2a02 commit bc909e5

File tree

2 files changed

+22
-14
lines changed

2 files changed

+22
-14
lines changed

lib/SILOptimizer/Transforms/SimplifyCFG.cpp

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030

3131
#define DEBUG_TYPE "sil-simplify-cfg"
3232

33+
#include "swift/SILOptimizer/Transforms/SimplifyCFG.h"
3334
#include "swift/AST/Module.h"
3435
#include "swift/SIL/BasicBlockDatastructures.h"
3536
#include "swift/SIL/DebugUtils.h"
@@ -40,13 +41,13 @@
4041
#include "swift/SIL/SILModule.h"
4142
#include "swift/SIL/SILUndef.h"
4243
#include "swift/SIL/TerminatorUtils.h"
44+
#include "swift/SIL/Test.h"
4345
#include "swift/SILOptimizer/Analysis/DeadEndBlocksAnalysis.h"
4446
#include "swift/SILOptimizer/Analysis/DominanceAnalysis.h"
4547
#include "swift/SILOptimizer/Analysis/ProgramTerminationAnalysis.h"
4648
#include "swift/SILOptimizer/Analysis/SimplifyInstruction.h"
4749
#include "swift/SILOptimizer/PassManager/Passes.h"
4850
#include "swift/SILOptimizer/PassManager/Transforms.h"
49-
#include "swift/SILOptimizer/Transforms/SimplifyCFG.h"
5051
#include "swift/SILOptimizer/Utils/BasicBlockOptUtils.h"
5152
#include "swift/SILOptimizer/Utils/CFGOptUtils.h"
5253
#include "swift/SILOptimizer/Utils/CastOptimizer.h"
@@ -3619,6 +3620,26 @@ bool SimplifyCFG::simplifyArgument(SILBasicBlock *BB, unsigned i) {
36193620
return true;
36203621
}
36213622

3623+
namespace swift::test {
3624+
/// Arguments
3625+
/// - block - the block whose argument is to be simplified
3626+
/// - index - the index of the argument to be simplified
3627+
/// Dumps:
3628+
/// - nothing
3629+
static FunctionTest SimplifyCFGSimplifyArgument(
3630+
"simplify-cfg-simplify-argument",
3631+
[](auto &function, auto &arguments, auto &test) {
3632+
auto *passToRun = cast<SILFunctionTransform>(createSimplifyCFG());
3633+
passToRun->injectPassManager(test.getPassManager());
3634+
passToRun->injectFunction(&function);
3635+
auto *block = arguments.takeBlock();
3636+
auto index = arguments.takeUInt();
3637+
SimplifyCFG(function, *passToRun, /*VerifyAll=*/false,
3638+
/*EnableJumpThread=*/false)
3639+
.simplifyArgument(block, index);
3640+
});
3641+
} // end namespace swift::test
3642+
36223643
// OWNERSHIP NOTE: This is always safe for guaranteed and owned arguments since
36233644
// in both cases the phi will consume its input.
36243645
static void tryToReplaceArgWithIncomingValue(SILBasicBlock *BB, unsigned i,

lib/SILOptimizer/UtilityPasses/TestRunner.cpp

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -315,19 +315,6 @@ static FunctionTest FieldSensitiveMultiDefUseLiveRangeTest(
315315
// MARK: SimplifyCFG Unit Tests
316316
//===----------------------------------------------------------------------===//
317317

318-
static FunctionTest SimplifyCFGSimplifyArgument(
319-
"simplify-cfg-simplify-argument",
320-
[](auto &function, auto &arguments, auto &test) {
321-
auto *passToRun = cast<SILFunctionTransform>(createSimplifyCFG());
322-
passToRun->injectPassManager(test.getPassManager());
323-
passToRun->injectFunction(&function);
324-
auto *block = arguments.takeBlock();
325-
auto index = arguments.takeUInt();
326-
SimplifyCFG(function, *passToRun, /*VerifyAll=*/false,
327-
/*EnableJumpThread=*/false)
328-
.simplifyArgument(block, index);
329-
});
330-
331318
static FunctionTest SimplifyCFGSimplifyBlockArgs(
332319
"simplify-cfg-simplify-block-args",
333320
[](auto &function, auto &arguments, auto &test) {

0 commit comments

Comments
 (0)