[clang] [libunwind] [lld] [llvm] [wasm] Toolchain support for `wasm32-wali-linux-musl` target (PR #156087)
Derek Schuff via cfe-commits
cfe-commits at lists.llvm.org
Fri Aug 29 12:55:04 PDT 2025
================
@@ -88,12 +88,20 @@ class LLVM_LIBRARY_VISIBILITY WebAssemblyTargetInfo : public TargetInfo {
LongDoubleWidth = LongDoubleAlign = 128;
LongDoubleFormat = &llvm::APFloat::IEEEquad();
MaxAtomicPromoteWidth = MaxAtomicInlineWidth = 64;
- // size_t being unsigned long for both wasm32 and wasm64 makes mangled names
- // more consistent between the two.
- SizeType = UnsignedLong;
- PtrDiffType = SignedLong;
- IntPtrType = SignedLong;
HasUnalignedAccess = true;
+ if (T.isWALI()) {
+ // WALI ABI requires 64-bit longs on both wasm32 and wasm64
----------------
dschuff wrote:
I'm curious about this. AFAIK longs match pointers on other Linux ABIs. Why the change here? Is this ABI documented?
https://github.com/llvm/llvm-project/pull/156087
More information about the cfe-commits
mailing list