blob: e7d2bfea46c979428958912be1d49de8f17b5509 [file] [log] [blame]
// RUN: %target-swift-frontend %s -g -emit-ir -o - | %FileCheck %s
func use<T>(_ x: T) {}
func getInt32() -> Int32 { return -1 }
public func rangeExtension(_ b: Bool) {
// CHECK: define {{.*}}rangeExtension
let i = getInt32()
// CHECK: llvm.dbg.value(metadata i32 [[I:.*]], metadata {{.*}}, metadata
use(i)
if b {
let j = getInt32()
// CHECK: llvm.dbg.value(metadata i32 [[I]], metadata {{.*}}, metadata
// CHECK: llvm.dbg.value(metadata i32 [[J:.*]], metadata {{.*}}, metadata
use(j)
// CHECK-DAG: {{(asm sideeffect "", "r".*)|(zext i32)}} [[J]]
// CHECK-DAG: asm sideeffect "", "r"
}
let z = getInt32()
use(z)
// CHECK-NOT: llvm.dbg.value(metadata i32 [[J]], metadata {{.*}}, metadata
// CHECK-DAG: llvm.dbg.value(metadata i32 [[I]], metadata {{.*}}, metadata
// CHECK-DAG: llvm.dbg.value(metadata i32 [[Z:.*]], metadata {{.*}}, metadata
// CHECK-DAG: {{(asm sideeffect "", "r".*)|(zext i32)}} [[I]]
// CHECK-DAG: asm sideeffect "", "r"
}