Files
swift-mirror/test/SILOptimizer/stack_promotion_array_literal.swift
Erik Eckstein cad646b283 re-implement the StackPromotion pass in swift
It uses the new EscapeInfo.
2022-05-02 14:22:27 +02:00

22 lines
560 B
Swift

// RUN: %target-swift-frontend -parse-as-library -O -module-name=test %s -emit-sil | %FileCheck %s
// REQUIRES: swift_stdlib_no_asserts,optimized_stdlib
// REQUIRES: swift_in_compiler
// This is an end-to-end test to check if the array literal in the loop is
// stack promoted.
// CHECK-LABEL: sil @{{.*}}testit
// CHECK: alloc_ref{{.*}} [stack] [tail_elems
public func testit(_ N: Int, _ x: Int) {
for _ in 0..<N {
for _ in 0..<10 {
var nums = [Int]()
for _ in 0..<40_000 {
nums += [1, 2, 3, 4, 5, 6, x]
}
}
}
}