mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
The test has been crashed with WebAssembly target due to lack of tail-call
support guard in the CoroSplit llvm pass. The crash has been fixed by
8c5c4d9a63
but the new codegen produces slightly different IR (`call` instead of
`tail call`, while they are lowered to the same wasm instruction). So
this patch adds new checks for wasm target.
14 lines
721 B
Swift
14 lines
721 B
Swift
// RUN: %target-swift-frontend -primary-file %S/async.swift -emit-ir -disable-availability-checking | %FileCheck %s --check-prefix=NOTAIL
|
|
// TODO(katei): %target-swift-frontend -primary-file %S/async.swift -emit-ir -disable-availability-checking -Xcc -mtail-call | %FileCheck %s --check-prefix=TAIL
|
|
|
|
// REQUIRES: concurrency && CPU=wasm32
|
|
|
|
// NOTAIL: "$s5async1fyyYaF"
|
|
// NOTAIL: "$s5async1gyyYaKF"
|
|
// NOTAIL: "$s5async1hyyS2iYbXEF"
|
|
|
|
// NOTAIL: define{{.*}} swiftcc void @"$s5async8testThisyyAA9SomeClassCnYaF"(ptr swiftasync %0{{.*}}
|
|
// NOTAIL-NOT: @swift_task_alloc
|
|
// NOTAIL-NOT: musttail call
|
|
// NOTAIL: call swiftcc void @swift_task_future_wait_throwing(ptr {{.*}}, ptr {{.*}}, ptr {{.*}}, ptr {{.*}}, ptr {{.*}})
|