Files
swift-mirror/test/IRGen/used.swift
Daniel Rodríguez Troitiño ba68faaed5 [test] Mark tests that use experimental/upcoming features as such
Find all the usages of `--enable-experimental-feature` or
`--enable-upcoming-feature` in the tests and replace some of the
`REQUIRES: asserts` to use `REQUIRES: swift-feature-Foo` instead, which
should correctly apply to depending on the asserts/noasserts mode of the
toolchain for each feature.

Remove some comments that talked about enabling asserts since they don't
apply anymore (but I might had miss some).

All this was done with an automated script, so some formatting weirdness
might happen, but I hope I fixed most of those.

There might be some tests that were `REQUIRES: asserts` that might run
in `noasserts` toolchains now. This will normally be because their
feature went from experimental to upcoming/base and the tests were not
updated.
2024-11-02 11:46:46 -07:00

34 lines
2.1 KiB
Swift

// RUN: %target-swift-frontend -enable-experimental-feature SymbolLinkageMarkers -primary-file %s -emit-sil | %FileCheck %s --check-prefix=SIL
// RUN: %target-swift-frontend -enable-experimental-feature SymbolLinkageMarkers -primary-file %s -O -emit-sil | %FileCheck %s --check-prefix=SIL
// RUN: %target-swift-frontend -enable-experimental-feature SymbolLinkageMarkers -primary-file %s -emit-ir | %FileCheck %s --check-prefix=IR
// RUN: %target-swift-frontend -enable-experimental-feature SymbolLinkageMarkers -primary-file %s -O -emit-ir | %FileCheck %s --check-prefix=IR
// RUN: %target-swift-frontend -enable-experimental-feature SymbolLinkageMarkers -primary-file %s -emit-sil -parse-as-library | %FileCheck %s --check-prefix=SIL
// RUN: %target-swift-frontend -enable-experimental-feature SymbolLinkageMarkers -primary-file %s -O -emit-sil -parse-as-library | %FileCheck %s --check-prefix=SIL
// RUN: %target-swift-frontend -enable-experimental-feature SymbolLinkageMarkers -primary-file %s -emit-ir -parse-as-library | %FileCheck %s --check-prefix=IR
// RUN: %target-swift-frontend -enable-experimental-feature SymbolLinkageMarkers -primary-file %s -O -emit-ir -parse-as-library | %FileCheck %s --check-prefix=IR
// REQUIRES: swift_in_compiler
// REQUIRES: swift_feature_SymbolLinkageMarkers
@_used var g0: Int = 1
@_used var g1: (Int, Int) = (42, 43)
@_used var g2: Bool = true
@_used func foo() {}
// SIL: @_used @_hasStorage @_hasInitialValue var g0: Int { get set }
// SIL: @_used @_hasStorage @_hasInitialValue var g1: (Int, Int) { get set }
// SIL: @_used @_hasStorage @_hasInitialValue var g2: Bool { get set }
// SIL: @_used func foo()
// SIL: sil_global hidden @$s4used2g0Sivp : $Int
// SIL: sil_global hidden @$s4used2g1Si_Sitvp : $(Int, Int)
// SIL: sil_global hidden @$s4used2g2Sbvp : $Bool
// SIL: sil hidden [used] @$s4used3fooyyF : $@convention(thin)
// IR: @llvm{{(\.compiler)?}}.used = appending global [{{.*}} x ptr] [
// IR-SAME: ptr @"$s4used2g0Sivp"
// IR-SAME: ptr @"$s4used2g1Si_Sitvp"
// IR-SAME: ptr @"$s4used2g2Sbvp"
// IR-SAME: ptr @"$s4used3fooyyF"