mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Merge pull request #85835 from MaxDesiatov/embedded-wasm-mutex
This commit is contained in:
@@ -192,13 +192,24 @@ if(SWIFT_SHOULD_BUILD_EMBEDDED_STDLIB)
|
||||
if(SWIFT_EMBEDDED_STDLIB_SDKS_FOR_TARGET_TRIPLES)
|
||||
set(SWIFT_SDK_embedded_ARCH_${arch}_PATH "${EMBEDDED_STDLIB_SDK_FOR_${triple}}")
|
||||
endif()
|
||||
|
||||
set(SWIFT_SYNCHRONIZATION_EMBEDDED_SOURCES)
|
||||
|
||||
if("${arch}" MATCHES "wasm32")
|
||||
list(APPEND SWIFT_SYNCHRONIZATION_EMBEDDED_SOURCES ${SWIFT_SYNCHRONIZATION_SOURCES})
|
||||
list(APPEND SWIFT_SYNCHRONIZATION_EMBEDDED_SOURCES ${SWIFT_SYNCHRONIZATION_WASM_SOURCES})
|
||||
else()
|
||||
list(APPEND SWIFT_SYNCHRONIZATION_EMBEDDED_SOURCES ${SWIFT_SYNCHRONIZATION_ATOMIC_SOURCES})
|
||||
endif()
|
||||
|
||||
add_swift_target_library_single(
|
||||
embedded-synchronization-${mod}
|
||||
swiftSynchronization
|
||||
ONLY_SWIFTMODULE
|
||||
IS_FRAGILE
|
||||
|
||||
${SWIFT_SYNCHRONIZATION_ATOMIC_SOURCES}
|
||||
${SWIFT_SYNCHRONIZATION_EMBEDDED_SOURCES}
|
||||
|
||||
GYB_SOURCES
|
||||
${SWIFT_SYNCHRONIZATION_GYB_SOURCES}
|
||||
|
||||
|
||||
21
test/embedded/wasm/mutex.swift
Normal file
21
test/embedded/wasm/mutex.swift
Normal file
@@ -0,0 +1,21 @@
|
||||
// RUN: %target-run-simple-swift(-enable-experimental-feature Embedded -parse-as-library -wmo) | %FileCheck %s
|
||||
|
||||
// REQUIRES: executable_test
|
||||
// REQUIRES: OS=wasip1
|
||||
// REQUIRES: swift_feature_Embedded
|
||||
|
||||
import Synchronization
|
||||
@main struct Main {
|
||||
static func main() {
|
||||
let m = Mutex(42)
|
||||
|
||||
m.withLock {
|
||||
print("Hello \($0)") // CHECK: Hello 42
|
||||
$0 = 37
|
||||
}
|
||||
|
||||
m.withLock {
|
||||
print("Hello \($0)") // CHECK: Hello 37
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user