Skip to content

Commit 0c17600

Browse files
committed
[Test] Ensourced accesspath-base.
Moved the test next to the code it calls.
1 parent b9b286e commit 0c17600

File tree

2 files changed

+36
-37
lines changed

2 files changed

+36
-37
lines changed

lib/SIL/Utils/MemAccessUtils.cpp

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
#include "swift/SIL/SILInstruction.h"
2323
#include "swift/SIL/SILModule.h"
2424
#include "swift/SIL/SILUndef.h"
25+
#include "swift/SIL/Test.h"
2526
#include "llvm/Support/Debug.h"
2627

2728
using namespace swift;
@@ -1998,6 +1999,41 @@ bool swift::visitAccessPathBaseUses(AccessUseVisitor &visitor,
19981999
.visitUses();
19992000
}
20002001

2002+
namespace swift::test {
2003+
struct AccessUseTestVisitor : public AccessUseVisitor {
2004+
AccessUseTestVisitor()
2005+
: AccessUseVisitor(AccessUseType::Overlapping,
2006+
NestedAccessType::IgnoreAccessBegin) {}
2007+
2008+
bool visitUse(Operand *op, AccessUseType useTy) override {
2009+
switch (useTy) {
2010+
case AccessUseType::Exact:
2011+
llvm::errs() << "Exact Use: ";
2012+
break;
2013+
case AccessUseType::Inner:
2014+
llvm::errs() << "Inner Use: ";
2015+
break;
2016+
case AccessUseType::Overlapping:
2017+
llvm::errs() << "Overlapping Use ";
2018+
break;
2019+
}
2020+
llvm::errs() << *op->getUser();
2021+
return true;
2022+
}
2023+
};
2024+
2025+
static FunctionTest AccessPathBaseTest("accesspath-base", [](auto &function,
2026+
auto &arguments,
2027+
auto &test) {
2028+
auto value = arguments.takeValue();
2029+
function.dump();
2030+
llvm::outs() << "Access path base: " << value;
2031+
auto accessPathWithBase = AccessPathWithBase::compute(value);
2032+
AccessUseTestVisitor visitor;
2033+
visitAccessPathBaseUses(visitor, accessPathWithBase, &function);
2034+
});
2035+
} // end namespace swift::test
2036+
20012037
bool swift::visitAccessStorageUses(AccessUseVisitor &visitor,
20022038
AccessStorage storage,
20032039
SILFunction *function) {

lib/SILOptimizer/UtilityPasses/TestRunner.cpp

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -311,43 +311,6 @@ static FunctionTest FieldSensitiveMultiDefUseLiveRangeTest(
311311
boundary.print(llvm::errs());
312312
});
313313

314-
//===----------------------------------------------------------------------===//
315-
// MARK: AccessPath Unit Tests
316-
//===----------------------------------------------------------------------===//
317-
318-
struct AccessUseTestVisitor : public AccessUseVisitor {
319-
AccessUseTestVisitor()
320-
: AccessUseVisitor(AccessUseType::Overlapping,
321-
NestedAccessType::IgnoreAccessBegin) {}
322-
323-
bool visitUse(Operand *op, AccessUseType useTy) override {
324-
switch (useTy) {
325-
case AccessUseType::Exact:
326-
llvm::errs() << "Exact Use: ";
327-
break;
328-
case AccessUseType::Inner:
329-
llvm::errs() << "Inner Use: ";
330-
break;
331-
case AccessUseType::Overlapping:
332-
llvm::errs() << "Overlapping Use ";
333-
break;
334-
}
335-
llvm::errs() << *op->getUser();
336-
return true;
337-
}
338-
};
339-
340-
static FunctionTest AccessPathBaseTest("accesspath-base", [](auto &function,
341-
auto &arguments,
342-
auto &test) {
343-
auto value = arguments.takeValue();
344-
function.dump();
345-
llvm::outs() << "Access path base: " << value;
346-
auto accessPathWithBase = AccessPathWithBase::compute(value);
347-
AccessUseTestVisitor visitor;
348-
visitAccessPathBaseUses(visitor, accessPathWithBase, &function);
349-
});
350-
351314
} // namespace swift::test
352315

353316
//===----------------------------------------------------------------------===//

0 commit comments

Comments
 (0)