Files
swift-mirror/test/IRGen/swift_async_extended_frame_info_watchos.swift
Evan Wilde 83f44cdf40 Relax watchos test requirements
To help this test run in production environments, I've reduced the
requirements of the test. It used to require that the compiler was
running on an armv7k or arm64_32 watchOS device, which I don't think is
a test configuration that gets hit all that often.

The new requirements are that you're on watchOS or the simulator, and
can produce arm64_32 code. The test only verifies that the emitted asm
is valid, not that it runs, so we don't need to be running on the
specific hardware. Additionally, the test only checks the output of
arm64_32, not of armvk7, so we only require the 64-bit arm backend.

It would be better if we could check for available SDKs though. The test
only requires an SDK, it doesn't need to be run on the simulator or the
watch.
2023-01-11 16:02:26 -08:00

23 lines
1.2 KiB
Swift

// RUN: %target-swift-frontend -disable-availability-checking -target arm64_32-apple-watchos7 %s -S | %FileCheck -check-prefix=NEVER %s
// RUN: %target-swift-frontend -disable-availability-checking -target arm64_32-apple-watchos8 %s -S | %FileCheck -check-prefix=ALWAYS %s
// RUN: %target-swift-frontend -disable-availability-checking -target arm64_32-apple-watchos7 -swift-async-frame-pointer=always %s -S | %FileCheck -check-prefix=ALWAYS %s
// RUN: %target-swift-frontend -disable-availability-checking -target arm64_32-apple-watchos7 -swift-async-frame-pointer=never %s -S | %FileCheck -check-prefix=NEVER %s
// RUN: %target-swift-frontend -disable-availability-checking -target arm64_32-apple-watchos7 -swift-async-frame-pointer=auto %s -S | %FileCheck -check-prefix=AUTO %s
// REQUIRES: OS=watchos || OS=watchossimulator
// REQUIRES: CODEGENERATOR=AArch64
@_silgen_name("forward_function")
func forwardFunction()
public func someAsyncFunction() async { forwardFunction() }
// AUTO: swift_async_extendedFramePointerFlags
// ALWAYS-NOT: swift_async_extendedFramePointerFlags
// ALWAYS: 0x1000000000000000
// ALWAYS-NOT: swift_async_extendedFramePointerFlags
// NEVER-NOT: swift_async_extendedFramePointerFlags
// NEVER-NOT: 0x1000000000000000