mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Merge pull request #84482 from eeckstein/smallprojectionpath-tests
SIL: use `Test` for the SmallProjectionPath's unit tests
This commit is contained in:
@@ -150,7 +150,6 @@ private func registerSwiftPasses() {
|
||||
registerPass(deadEndBlockDumper, { deadEndBlockDumper.run($0) })
|
||||
registerPass(memBehaviorDumper, { memBehaviorDumper.run($0) })
|
||||
registerPass(rangeDumper, { rangeDumper.run($0) })
|
||||
registerPass(runUnitTests, { runUnitTests.run($0) })
|
||||
registerPass(testInstructionIteration, { testInstructionIteration.run($0) })
|
||||
registerPass(updateBorrowedFromPass, { updateBorrowedFromPass.run($0) })
|
||||
}
|
||||
|
||||
@@ -15,7 +15,6 @@ swift_compiler_sources(Optimizer
|
||||
MemBehaviorDumper.swift
|
||||
SILPrinter.swift
|
||||
RangeDumper.swift
|
||||
RunUnitTests.swift
|
||||
UpdateBorrowedFrom.swift
|
||||
TestInstructionIteration.swift
|
||||
)
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
//===--- UnitTests.swift - A pseudo pass for running the unit tests -------===//
|
||||
//
|
||||
// This source file is part of the Swift.org open source project
|
||||
//
|
||||
// Copyright (c) 2014 - 2021 Apple Inc. and the Swift project authors
|
||||
// Licensed under Apache License v2.0 with Runtime Library Exception
|
||||
//
|
||||
// See https://swift.org/LICENSE.txt for license information
|
||||
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
import SIL
|
||||
|
||||
/// This pass should only be used by sil-opt to run all the unit tests.
|
||||
///
|
||||
let runUnitTests = ModulePass(name: "run-unit-tests") {
|
||||
(context: ModulePassContext) in
|
||||
|
||||
print("--- Run unit tests ---")
|
||||
|
||||
print("test ProjectionPath")
|
||||
SmallProjectionPath.runUnitTests()
|
||||
}
|
||||
@@ -680,8 +680,8 @@ extension StringParser {
|
||||
// Unit Tests
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
extension SmallProjectionPath {
|
||||
public static func runUnitTests() {
|
||||
let smallProjectionPathTest = Test("small_projection_path") {
|
||||
function, arguments, context in
|
||||
|
||||
basicPushPop()
|
||||
parsing()
|
||||
@@ -983,5 +983,4 @@ extension SmallProjectionPath {
|
||||
let (k4, _, s4) = p4.pop()
|
||||
assert(k4 == .anyIndexedElement && s4.isEmpty)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -142,6 +142,7 @@ public func registerTests() {
|
||||
// Register each test.
|
||||
registerTests(
|
||||
parseTestSpecificationTest,
|
||||
smallProjectionPathTest,
|
||||
getAccessBaseTest,
|
||||
borrowIntroducersTest,
|
||||
enclosingValuesTest,
|
||||
|
||||
@@ -163,8 +163,6 @@ MODULE_PASS(MandatoryAllocBoxToStack, "mandatory-allocbox-to-stack",
|
||||
"Mandatory stack promotion of box objects")
|
||||
MODULE_PASS(AsyncDemotion, "async-demotion",
|
||||
"Convert async functions to be synchronous")
|
||||
MODULE_PASS(RunUnitTests, "run-unit-tests",
|
||||
"Runs the compiler internal unit tests")
|
||||
MODULE_PASS(FunctionUsesDumper, "dump-function-uses",
|
||||
"Dump the results of FunctionUses")
|
||||
MODULE_PASS(MandatoryPerformanceOptimizations, "mandatory-performance-optimizations",
|
||||
|
||||
9
test/SILOptimizer/small_projection_path_unit.sil
Normal file
9
test/SILOptimizer/small_projection_path_unit.sil
Normal file
@@ -0,0 +1,9 @@
|
||||
// RUN: %target-sil-opt -test-runner -sil-disable-input-verify %s -o /dev/null
|
||||
|
||||
sil_stage raw
|
||||
|
||||
sil @small_projection_path_unit_tests : $@convention(thin) () -> () {
|
||||
bb0:
|
||||
specify_test "small_projection_path"
|
||||
unreachable
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
// RUN: %target-sil-opt %s -run-unit-tests -o /dev/null
|
||||
|
||||
// REQUIRES: swift_in_compiler
|
||||
|
||||
Reference in New Issue
Block a user