Skip to content

Commit 8f458cd

Browse files
committed
[rbi] Add the ability to test in SIL RegionAnalysisValueMap::getTrackableValue().
I also added some basic tests of its functionality. I am doing this in preparation for making some more invasive changes to getTrackableValue and I want to be able to test it out very specifically in SIL.
1 parent 5499734 commit 8f458cd

File tree

2 files changed

+520
-0
lines changed

2 files changed

+520
-0
lines changed

lib/SILOptimizer/Analysis/RegionAnalysis.cpp

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3887,3 +3887,24 @@ void RegionAnalysis::initialize(SILPassManager *pm) {
38873887
SILAnalysis *swift::createRegionAnalysis(SILModule *) {
38883888
return new RegionAnalysis();
38893889
}
3890+
3891+
//===----------------------------------------------------------------------===//
3892+
// MARK: Tests
3893+
//===----------------------------------------------------------------------===//
3894+
3895+
namespace swift::test {
3896+
3897+
// Arguments:
3898+
// - SILValue: value to look up isolation for.
3899+
// Dumps:
3900+
// - The inferred isolation.
3901+
static FunctionTest
3902+
UnderlyingTrackedValue("sil_regionanalysis_underlying_tracked_value",
3903+
[](auto &function, auto &arguments, auto &test) {
3904+
RegionAnalysisValueMap valueMap(&function);
3905+
auto value = arguments.takeValue();
3906+
auto trackableValue = valueMap.getTrackableValue(value);
3907+
trackableValue.print(llvm::outs());
3908+
});
3909+
3910+
} // namespace swift::test

0 commit comments

Comments
 (0)