Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: Add -threads variant of Wasm stdlib build #72650

Conversation

kateinoigakukun
Copy link
Member

This patch adds a -threads variant of the Wasm stdlib build, which has completely different ABI and target triple.
Now we build non-threaded and threaded variants when --build-wasm-stdlib is enabled.

@kateinoigakukun
Copy link
Member Author

@swift-ci Please test WebAssembly platform

@kateinoigakukun kateinoigakukun force-pushed the pr-92b3c15ca0f4d772ecfcfa10876535d529bb69b7 branch from 7cfecf3 to bfb4b9b Compare March 29, 2024 08:11
@kateinoigakukun
Copy link
Member Author

@swift-ci Please test WebAssembly platform

@kateinoigakukun kateinoigakukun force-pushed the pr-92b3c15ca0f4d772ecfcfa10876535d529bb69b7 branch from bfb4b9b to 9bb3b02 Compare March 29, 2024 11:18
@kateinoigakukun
Copy link
Member Author

@swift-ci Please test WebAssembly platform

@kateinoigakukun
Copy link
Member Author

@swift-ci smoke test

@kateinoigakukun kateinoigakukun marked this pull request as ready for review March 29, 2024 13:43
This patch adds a `-threads` variant of the Wasm stdlib build, which
has completely different ABI and target triple. Now we build
non-threaded and threaded variants when `--build-wasm-stdlib` is
enabled.
The WASI community is transitioning to a new naming for the "preview"
version in the target triple: wasm32-wasi -> wasm32-wasip1.
At this moment, we keep the old triple wasm32-wasi because it's already
widely used, but we should start using the new triple threaded target.

LLVM checks only if the OS field *starts* with "wasi", so "wasip1" is
still considered a valid `isOSWASI()` target.

See: WebAssembly/wasi-libc#478
We should enable them once WasmKit supports WASI threads.
We already have several uses of `OS=wasi` in the test suites, and the
condition should match all the wasi targets regardless of the version.
@kateinoigakukun kateinoigakukun force-pushed the pr-92b3c15ca0f4d772ecfcfa10876535d529bb69b7 branch from 9bb3b02 to e73bc12 Compare March 29, 2024 15:35
@kateinoigakukun
Copy link
Member Author

@swift-ci smoke test

@kateinoigakukun
Copy link
Member Author

@swift-ci test WebAssembly platform

@kateinoigakukun
Copy link
Member Author

@swift-ci smoke test

1 similar comment
@kateinoigakukun
Copy link
Member Author

@swift-ci smoke test

@kateinoigakukun
Copy link
Member Author

@swift-ci test WebAssembly platform

@kateinoigakukun kateinoigakukun merged commit cb12b0c into swiftlang:main Mar 30, 2024
4 checks passed
@kateinoigakukun kateinoigakukun deleted the pr-92b3c15ca0f4d772ecfcfa10876535d529bb69b7 branch April 1, 2024 06:57
@kateinoigakukun kateinoigakukun added the WebAssembly Platform: WebAssembly label Apr 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WebAssembly Platform: WebAssembly
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants