diff --git a/clang/lib/Basic/Targets/WebAssembly.h b/clang/lib/Basic/Targets/WebAssembly.h index cd7d2a7e8c03..52f36e8ba26a 100644 --- a/clang/lib/Basic/Targets/WebAssembly.h +++ b/clang/lib/Basic/Targets/WebAssembly.h @@ -212,6 +212,8 @@ class CheerpTargetInfo : public TargetInfo { LongDoubleWidth = LongDoubleAlign = 64; LongDoubleFormat = &llvm::APFloat::IEEEdouble(); SizeType = UnsignedInt; + // We define these as 32-bit for now, since AsmJS cannot handle 64-bit atomic operations currently. + MaxAtomicPromoteWidth = MaxAtomicInlineWidth = 32; // Use 32-bit integers for two separated bit fields. UseBitFieldTypeAlignment = true;