diff --git a/scripts/fuzz_opt.py b/scripts/fuzz_opt.py index 7261691761d..f37995abcab 100755 --- a/scripts/fuzz_opt.py +++ b/scripts/fuzz_opt.py @@ -921,7 +921,7 @@ def can_run(self, wasm): if random.random() < 0.5: return False # wasm2c doesn't support most features - return all_disallowed(['exception-handling', 'simd', 'threads', 'bulk-memory', 'nontrapping-float-to-int', 'tail-call', 'sign-ext', 'reference-types', 'multivalue', 'gc', 'custom-descriptors', 'relaxed-atomics', 'wide-arithmetic']) + return all_disallowed(['exception-handling', 'simd', 'threads', 'bulk-memory', 'nontrapping-float-to-int', 'tail-call', 'sign-ext', 'reference-types', 'multivalue', 'gc', 'custom-descriptors', 'acquire-release-atomics', 'wide-arithmetic']) @override def run(self, wasm): @@ -1252,7 +1252,7 @@ def can_run_on_wasm(self, wasm): # implement wasm suspending using JS async/await. if JSPI: return False - return all_disallowed(['exception-handling', 'simd', 'threads', 'bulk-memory', 'nontrapping-float-to-int', 'tail-call', 'sign-ext', 'reference-types', 'multivalue', 'gc', 'multimemory', 'memory64', 'custom-descriptors', 'relaxed-atomics', 'wide-arithmetic']) + return all_disallowed(['exception-handling', 'simd', 'threads', 'bulk-memory', 'nontrapping-float-to-int', 'tail-call', 'sign-ext', 'reference-types', 'multivalue', 'gc', 'multimemory', 'memory64', 'custom-descriptors', 'acquire-release-atomics', 'wide-arithmetic']) # Returns the wat for a wasm file. If it is already wat, it just returns that diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp index 5a43aedaee1..a7b344e5380 100644 --- a/src/binaryen-c.cpp +++ b/src/binaryen-c.cpp @@ -505,8 +505,8 @@ BinaryenFeatures BinaryenFeatureBulkMemoryOpt(void) { BinaryenFeatures BinaryenFeatureCallIndirectOverlong(void) { return static_cast(FeatureSet::CallIndirectOverlong); } -BinaryenFeatures BinaryenFeatureRelaxedAtomics(void) { - return static_cast(FeatureSet::RelaxedAtomics); +BinaryenFeatures BinaryenFeatureAcquireReleaseAtomics(void) { + return static_cast(FeatureSet::AcquireReleaseAtomics); } BinaryenFeatures BinaryenFeatureMultibyte(void) { return static_cast(FeatureSet::Multibyte); diff --git a/src/binaryen-c.h b/src/binaryen-c.h index 29fb4d8c745..d9ecb34fb41 100644 --- a/src/binaryen-c.h +++ b/src/binaryen-c.h @@ -245,7 +245,7 @@ BINARYEN_API BinaryenFeatures BinaryenFeatureSharedEverything(void); BINARYEN_API BinaryenFeatures BinaryenFeatureFP16(void); BINARYEN_API BinaryenFeatures BinaryenFeatureBulkMemoryOpt(void); BINARYEN_API BinaryenFeatures BinaryenFeatureCallIndirectOverlong(void); -BINARYEN_API BinaryenFeatures BinaryenFeatureRelaxedAtomics(void); +BINARYEN_API BinaryenFeatures BinaryenFeatureAcquireReleaseAtomics(void); BINARYEN_API BinaryenFeatures BinaryenFeatureMultibyte(void); BINARYEN_API BinaryenFeatures BinaryenFeatureCustomPageSizes(void); BINARYEN_API BinaryenFeatures BinaryenFeatureWideArithmetic(void); diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js index 9551a655fc6..cf69cbcf22d 100644 --- a/src/js/binaryen.js-post.js +++ b/src/js/binaryen.js-post.js @@ -192,7 +192,7 @@ function initializeConstants() { 'FP16', 'BulkMemoryOpt', 'CallIndirectOverlong', - 'RelaxedAtomics', + 'AcquireReleaseAtomics', 'CustomPageSizes', 'WideArithmetic', 'CompactImports', diff --git a/src/passes/SafeHeap.cpp b/src/passes/SafeHeap.cpp index ae691a78fa4..0d346778309 100644 --- a/src/passes/SafeHeap.cpp +++ b/src/passes/SafeHeap.cpp @@ -230,7 +230,7 @@ struct SafeHeap : public Pass { // load funcs Load load; std::vector memoryOrdersToGenerate( - features.hasRelaxedAtomics() + features.hasAcquireReleaseAtomics() ? std::initializer_list{MemoryOrder::Unordered, MemoryOrder::AcqRel, MemoryOrder::SeqCst} diff --git a/src/tools/fuzzing/fuzzing.cpp b/src/tools/fuzzing/fuzzing.cpp index 5b9bcfac9d1..6c5daddfff8 100644 --- a/src/tools/fuzzing/fuzzing.cpp +++ b/src/tools/fuzzing/fuzzing.cpp @@ -54,7 +54,7 @@ std::vector getLoggableTypes(const FeatureSet& features) { } std::vector getMemoryOrders(const FeatureSet& features) { - return features.hasRelaxedAtomics() + return features.hasAcquireReleaseAtomics() ? std::vector{MemoryOrder::AcqRel, MemoryOrder::SeqCst} : std::vector{MemoryOrder::SeqCst}; } diff --git a/src/tools/tool-options.h b/src/tools/tool-options.h index 02500f8955d..2f51767b06c 100644 --- a/src/tools/tool-options.h +++ b/src/tools/tool-options.h @@ -117,7 +117,7 @@ struct ToolOptions : public Options { .addFeature(FeatureSet::CustomDescriptors, "custom descriptors (RTTs) and exact references") .addFeature(FeatureSet::Multibyte, "multibyte array loads and stores") - .addFeature(FeatureSet::RelaxedAtomics, + .addFeature(FeatureSet::AcquireReleaseAtomics, "acquire/release atomic memory operations") .addFeature(FeatureSet::CustomPageSizes, "custom page sizes") .addFeature(FeatureSet::WideArithmetic, "wide arithmetic") diff --git a/src/wasm-binary.h b/src/wasm-binary.h index 6c5787f13ac..f9fcc7fe643 100644 --- a/src/wasm-binary.h +++ b/src/wasm-binary.h @@ -476,7 +476,7 @@ extern const char* FP16Feature; extern const char* BulkMemoryOptFeature; extern const char* CallIndirectOverlongFeature; extern const char* CustomDescriptorsFeature; -extern const char* RelaxedAtomicsFeature; +extern const char* AcquireReleaseAtomicsFeature; extern const char* MultibyteFeature; extern const char* CustomPageSizesFeature; extern const char* WideArithmeticFeature; diff --git a/src/wasm-features.h b/src/wasm-features.h index 2d64953631e..341274972ef 100644 --- a/src/wasm-features.h +++ b/src/wasm-features.h @@ -55,7 +55,7 @@ struct FeatureSet { // it does nothing. Binaryen always accepts LEB call-indirect encodings. CallIndirectOverlong = 1 << 20, CustomDescriptors = 1 << 21, - RelaxedAtomics = 1 << 22, + AcquireReleaseAtomics = 1 << 22, CustomPageSizes = 1 << 23, Multibyte = 1 << 24, WideArithmetic = 1 << 25, @@ -113,8 +113,8 @@ struct FeatureSet { return "call-indirect-overlong"; case CustomDescriptors: return "custom-descriptors"; - case RelaxedAtomics: - return "relaxed-atomics"; + case AcquireReleaseAtomics: + return "acquire-release-atomics"; case CustomPageSizes: return "custom-page-sizes"; case Multibyte: @@ -183,7 +183,9 @@ struct FeatureSet { bool hasCustomDescriptors() const { return (features & CustomDescriptors) != 0; } - bool hasRelaxedAtomics() const { return (features & RelaxedAtomics) != 0; } + bool hasAcquireReleaseAtomics() const { + return (features & AcquireReleaseAtomics) != 0; + } bool hasCustomPageSizes() const { return (features & CustomPageSizes) != 0; } bool hasMultibyte() const { return (features & Multibyte) != 0; } bool hasWideArithmetic() const { return (features & WideArithmetic) != 0; } @@ -214,7 +216,9 @@ struct FeatureSet { void setFP16(bool v = true) { set(FP16, v); } void setBulkMemoryOpt(bool v = true) { set(BulkMemoryOpt, v); } void setCustomDescriptors(bool v = true) { set(CustomDescriptors, v); } - void setRelaxedAtomics(bool v = true) { set(RelaxedAtomics, v); } + void setAcquireReleaseAtomics(bool v = true) { + set(AcquireReleaseAtomics, v); + } void setMultibyte(bool v = true) { set(Multibyte, v); } void setWideArithmetic(bool v = true) { set(WideArithmetic, v); } void setCompactImports(bool v = true) { set(CompactImports, v); } diff --git a/src/wasm/wasm-binary.cpp b/src/wasm/wasm-binary.cpp index e03274d8428..923801b0cfb 100644 --- a/src/wasm/wasm-binary.cpp +++ b/src/wasm/wasm-binary.cpp @@ -1594,8 +1594,8 @@ void WasmBinaryWriter::writeFeaturesSection() { return BinaryConsts::CustomSections::CallIndirectOverlongFeature; case FeatureSet::CustomDescriptors: return BinaryConsts::CustomSections::CustomDescriptorsFeature; - case FeatureSet::RelaxedAtomics: - return BinaryConsts::CustomSections::RelaxedAtomicsFeature; + case FeatureSet::AcquireReleaseAtomics: + return BinaryConsts::CustomSections::AcquireReleaseAtomicsFeature; case FeatureSet::CustomPageSizes: return BinaryConsts::CustomSections::CustomPageSizesFeature; case FeatureSet::WideArithmetic: @@ -5618,8 +5618,9 @@ void WasmBinaryReader::readFeatures(size_t sectionPos, size_t payloadLen) { feature = FeatureSet::FP16; } else if (name == BinaryConsts::CustomSections::CustomDescriptorsFeature) { feature = FeatureSet::CustomDescriptors; - } else if (name == BinaryConsts::CustomSections::RelaxedAtomicsFeature) { - feature = FeatureSet::RelaxedAtomics; + } else if (name == + BinaryConsts::CustomSections::AcquireReleaseAtomicsFeature) { + feature = FeatureSet::AcquireReleaseAtomics; } else if (name == BinaryConsts::CustomSections::CustomPageSizesFeature) { feature = FeatureSet::CustomPageSizes; } else if (name == BinaryConsts::CustomSections::WideArithmeticFeature) { diff --git a/src/wasm/wasm-validator.cpp b/src/wasm/wasm-validator.cpp index c4b39edcc10..8b31ce2026d 100644 --- a/src/wasm/wasm-validator.cpp +++ b/src/wasm/wasm-validator.cpp @@ -1220,10 +1220,10 @@ void FunctionValidator::visitLoad(Load* curr) { } switch (curr->order) { case MemoryOrder::AcqRel: { - shouldBeTrue(getModule()->features.hasRelaxedAtomics(), + shouldBeTrue(getModule()->features.hasAcquireReleaseAtomics(), curr, "Acquire/release operations require relaxed atomics " - "[--enable-relaxed-atomics]"); + "[--enable-acquire-release-atomics]"); break; } case MemoryOrder::Unordered: @@ -1265,10 +1265,10 @@ void FunctionValidator::visitStore(Store* curr) { } switch (curr->order) { case MemoryOrder::AcqRel: { - shouldBeTrue(getModule()->features.hasRelaxedAtomics(), + shouldBeTrue(getModule()->features.hasAcquireReleaseAtomics(), curr, "Acquire/release operations require relaxed atomics " - "[--enable-relaxed-atomics]"); + "[--enable-acquire-release-atomics]"); break; } case MemoryOrder::Unordered: @@ -1310,10 +1310,10 @@ void FunctionValidator::visitAtomicRMW(AtomicRMW* curr) { switch (curr->order) { case MemoryOrder::AcqRel: { - shouldBeTrue(getModule()->features.hasRelaxedAtomics(), + shouldBeTrue(getModule()->features.hasAcquireReleaseAtomics(), curr, "Acquire/release operations require relaxed atomics " - "[--enable-relaxed-atomics]"); + "[--enable-acquire-release-atomics]"); break; } // Unordered RMW should be impossible unless there's a bug in the parser. @@ -1351,10 +1351,10 @@ void FunctionValidator::visitAtomicCmpxchg(AtomicCmpxchg* curr) { switch (curr->order) { case MemoryOrder::AcqRel: { - shouldBeTrue(getModule()->features.hasRelaxedAtomics(), + shouldBeTrue(getModule()->features.hasAcquireReleaseAtomics(), curr, "Acquire/release operations require relaxed atomics " - "[--enable-relaxed-atomics]"); + "[--enable-acquire-release-atomics]"); break; } // Unordered cmpxchg should be impossible unless there's a bug in the @@ -1449,10 +1449,10 @@ void FunctionValidator::visitAtomicFence(AtomicFence* curr) { "Atomic operations require threads [--enable-threads]"); switch (curr->order) { case MemoryOrder::AcqRel: { - shouldBeTrue(getModule()->features.hasRelaxedAtomics(), + shouldBeTrue(getModule()->features.hasAcquireReleaseAtomics(), curr, "Acquire/release operations require relaxed atomics " - "[--enable-relaxed-atomics]"); + "[--enable-acquire-release-atomics]"); break; } case MemoryOrder::SeqCst: diff --git a/src/wasm/wasm.cpp b/src/wasm/wasm.cpp index a8c5afa8d5d..62378d390b2 100644 --- a/src/wasm/wasm.cpp +++ b/src/wasm/wasm.cpp @@ -76,7 +76,7 @@ const char* FP16Feature = "fp16"; const char* BulkMemoryOptFeature = "bulk-memory-opt"; const char* CallIndirectOverlongFeature = "call-indirect-overlong"; const char* CustomDescriptorsFeature = "custom-descriptors"; -const char* RelaxedAtomicsFeature = "relaxed-atomics"; +const char* AcquireReleaseAtomicsFeature = "acquire-release-atomics"; const char* MultibyteFeature = "multibyte"; const char* CustomPageSizesFeature = "custom-page-sizes"; const char* WideArithmeticFeature = "wide-arithmetic"; diff --git a/test/binaryen.js/kitchen-sink.js b/test/binaryen.js/kitchen-sink.js index 0d4c158e66e..4b36ce3ff73 100644 --- a/test/binaryen.js/kitchen-sink.js +++ b/test/binaryen.js/kitchen-sink.js @@ -100,7 +100,7 @@ function test_features() { console.log("Features.ExtendedConst: " + binaryen.Features.ExtendedConst); console.log("Features.Strings: " + binaryen.Features.Strings); console.log("Features.MultiMemory: " + binaryen.Features.MultiMemory); - console.log("Features.RelaxedAtomics: " + binaryen.Features.RelaxedAtomics); + console.log("Features.AcquireReleaseAtomics: " + binaryen.Features.AcquireReleaseAtomics); console.log("Features.CustomPageSizes: " + binaryen.Features.CustomPageSizes); console.log("Features.WideArithmetic: " + binaryen.Features.WideArithmetic); console.log("Features.CompactImports: " + binaryen.Features.CompactImports); @@ -1295,7 +1295,7 @@ function test_relaxed_atomics() { fence, ], binaryen.auto); - module.addFunction("relaxed-atomics", binaryen.none, binaryen.none, [], body); + module.addFunction("acquire-release-atomics", binaryen.none, binaryen.none, [], body); console.log(module.emitText()); module.dispose(); diff --git a/test/binaryen.js/kitchen-sink.js.txt b/test/binaryen.js/kitchen-sink.js.txt index 7a4c6154697..def01a7c395 100644 --- a/test/binaryen.js/kitchen-sink.js.txt +++ b/test/binaryen.js/kitchen-sink.js.txt @@ -33,7 +33,7 @@ Features.RelaxedSIMD: 4096 Features.ExtendedConst: 8192 Features.Strings: 16384 Features.MultiMemory: 32768 -Features.RelaxedAtomics: 4194304 +Features.AcquireReleaseAtomics: 4194304 Features.CustomPageSizes: 8388608 Features.WideArithmetic: 33554432 Features.CompactImports: 67108864 @@ -2887,7 +2887,7 @@ Fence memory order: 2 (type $0 (func)) (memory $0 1 1) (export "memory" (memory $0)) - (func $relaxed-atomics (type $0) + (func $acquire-release-atomics (type $0) (block $body (drop (i32.atomic.load acqrel diff --git a/test/example/c-api-kitchen-sink.c b/test/example/c-api-kitchen-sink.c index 04c69d453a4..301a4cd3560 100644 --- a/test/example/c-api-kitchen-sink.c +++ b/test/example/c-api-kitchen-sink.c @@ -374,8 +374,8 @@ void test_features() { printf("BinaryenFeatureRelaxedSIMD: %d\n", BinaryenFeatureRelaxedSIMD()); printf("BinaryenFeatureExtendedConst: %d\n", BinaryenFeatureExtendedConst()); printf("BinaryenFeatureStrings: %d\n", BinaryenFeatureStrings()); - printf("BinaryenFeatureRelaxedAtomics: %d\n", - BinaryenFeatureRelaxedAtomics()); + printf("BinaryenFeatureAcquireReleaseAtomics: %d\n", + BinaryenFeatureAcquireReleaseAtomics()); printf("BinaryenFeatureCustomPageSizes: %d\n", BinaryenFeatureCustomPageSizes()); printf("BinaryenFeatureMultibyte: %d\n", BinaryenFeatureMultibyte()); @@ -2384,7 +2384,7 @@ void test_relaxed_atomics() { BinaryenTypeAuto()); BinaryenFunctionRef tiny = BinaryenAddFunction(module, - "relaxed-atomics", + "acquire-release-atomics", BinaryenTypeNone(), BinaryenTypeNone(), NULL, diff --git a/test/example/c-api-kitchen-sink.txt b/test/example/c-api-kitchen-sink.txt index 0addded551f..da13c143956 100644 --- a/test/example/c-api-kitchen-sink.txt +++ b/test/example/c-api-kitchen-sink.txt @@ -47,7 +47,7 @@ BinaryenFeatureMemory64: 2048 BinaryenFeatureRelaxedSIMD: 4096 BinaryenFeatureExtendedConst: 8192 BinaryenFeatureStrings: 16384 -BinaryenFeatureRelaxedAtomics: 4194304 +BinaryenFeatureAcquireReleaseAtomics: 4194304 BinaryenFeatureCustomPageSizes: 8388608 BinaryenFeatureMultibyte: 16777216 BinaryenFeatureWideArithmetic: 33554432 @@ -3106,7 +3106,7 @@ Fence memory order: 2 (type $0 (func)) (memory $0 1 1) (export "memory" (memory $0)) - (func $relaxed-atomics (type $0) + (func $acquire-release-atomics (type $0) (block $body (drop (i32.atomic.load acqrel diff --git a/test/lit/help/wasm-as.test b/test/lit/help/wasm-as.test index e169dab6c4a..2b1b5ece56e 100644 --- a/test/lit/help/wasm-as.test +++ b/test/lit/help/wasm-as.test @@ -141,10 +141,10 @@ ;; CHECK-NEXT: ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic memory +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic memory +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm-ctor-eval.test b/test/lit/help/wasm-ctor-eval.test index 717d3c75de0..0eb923b699b 100644 --- a/test/lit/help/wasm-ctor-eval.test +++ b/test/lit/help/wasm-ctor-eval.test @@ -148,10 +148,10 @@ ;; CHECK-NEXT: ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic memory +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic memory +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm-dis.test b/test/lit/help/wasm-dis.test index a2c81677b45..88d8ca67a4b 100644 --- a/test/lit/help/wasm-dis.test +++ b/test/lit/help/wasm-dis.test @@ -134,10 +134,10 @@ ;; CHECK-NEXT: ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic memory +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic memory +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm-emscripten-finalize.test b/test/lit/help/wasm-emscripten-finalize.test index 86860ba7d02..79a273ae737 100644 --- a/test/lit/help/wasm-emscripten-finalize.test +++ b/test/lit/help/wasm-emscripten-finalize.test @@ -176,10 +176,10 @@ ;; CHECK-NEXT: ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic memory +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic memory +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm-merge.test b/test/lit/help/wasm-merge.test index f7fbfdf68f8..c201a33a4da 100644 --- a/test/lit/help/wasm-merge.test +++ b/test/lit/help/wasm-merge.test @@ -171,10 +171,10 @@ ;; CHECK-NEXT: ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic memory +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic memory +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm-metadce.test b/test/lit/help/wasm-metadce.test index 6f86b33fea5..28872b020b5 100644 --- a/test/lit/help/wasm-metadce.test +++ b/test/lit/help/wasm-metadce.test @@ -821,10 +821,10 @@ ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads ;; CHECK-NEXT: and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic ;; CHECK-NEXT: memory operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic ;; CHECK-NEXT: memory operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm-opt.test b/test/lit/help/wasm-opt.test index 763bf958be0..61ec261dfd6 100644 --- a/test/lit/help/wasm-opt.test +++ b/test/lit/help/wasm-opt.test @@ -857,10 +857,10 @@ ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads ;; CHECK-NEXT: and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic ;; CHECK-NEXT: memory operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic ;; CHECK-NEXT: memory operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm-reduce.test b/test/lit/help/wasm-reduce.test index de35e52d766..63de2888176 100644 --- a/test/lit/help/wasm-reduce.test +++ b/test/lit/help/wasm-reduce.test @@ -224,10 +224,10 @@ ;; CHECK-NEXT: ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic memory +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic memory +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm-split.test b/test/lit/help/wasm-split.test index 6a2fb33bc50..5ace6060d5c 100644 --- a/test/lit/help/wasm-split.test +++ b/test/lit/help/wasm-split.test @@ -273,10 +273,10 @@ ;; CHECK-NEXT: ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic memory +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic memory +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic memory ;; CHECK-NEXT: operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/help/wasm2js.test b/test/lit/help/wasm2js.test index 7ead11eea29..538683f4e9c 100644 --- a/test/lit/help/wasm2js.test +++ b/test/lit/help/wasm2js.test @@ -785,10 +785,10 @@ ;; CHECK-NEXT: --disable-multibyte Disable multibyte array loads ;; CHECK-NEXT: and stores ;; CHECK-NEXT: -;; CHECK-NEXT: --enable-relaxed-atomics Enable acquire/release atomic +;; CHECK-NEXT: --enable-acquire-release-atomics Enable acquire/release atomic ;; CHECK-NEXT: memory operations ;; CHECK-NEXT: -;; CHECK-NEXT: --disable-relaxed-atomics Disable acquire/release atomic +;; CHECK-NEXT: --disable-acquire-release-atomics Disable acquire/release atomic ;; CHECK-NEXT: memory operations ;; CHECK-NEXT: ;; CHECK-NEXT: --enable-custom-page-sizes Enable custom page sizes diff --git a/test/lit/passes/safe-heap_enable-threads_enable-simd64_enable-relaxed-atomics.wast b/test/lit/passes/safe-heap_enable-threads_enable-simd64_enable-relaxed-atomics.wast index d078f2009cc..a587debb888 100644 --- a/test/lit/passes/safe-heap_enable-threads_enable-simd64_enable-relaxed-atomics.wast +++ b/test/lit/passes/safe-heap_enable-threads_enable-simd64_enable-relaxed-atomics.wast @@ -1,7 +1,7 @@ ;; NOTE: Assertions have been generated by update_lit_checks.py --all-items and should not be edited. ;; NOTE: This test was ported using port_passes_tests_to_lit.py and could be cleaned up. -;; RUN: foreach %s %t wasm-opt --safe-heap --enable-threads --enable-simd --enable-memory64 --enable-relaxed-atomics -S -o - | filecheck %s +;; RUN: foreach %s %t wasm-opt --safe-heap --enable-threads --enable-simd --enable-memory64 --enable-acquire-release-atomics -S -o - | filecheck %s (module (memory i64 100 100 shared) diff --git a/test/lit/passes/safe-heap_enable-threads_enable-simd_enable-relaxed-atomics.wast b/test/lit/passes/safe-heap_enable-threads_enable-simd_enable-relaxed-atomics.wast index 2b618f82485..fe183a0af1d 100644 --- a/test/lit/passes/safe-heap_enable-threads_enable-simd_enable-relaxed-atomics.wast +++ b/test/lit/passes/safe-heap_enable-threads_enable-simd_enable-relaxed-atomics.wast @@ -1,7 +1,7 @@ ;; NOTE: Assertions have been generated by update_lit_checks.py --all-items and should not be edited. ;; NOTE: This test was ported using port_passes_tests_to_lit.py and could be cleaned up. -;; RUN: foreach %s %t wasm-opt --safe-heap --enable-threads --enable-simd --enable-relaxed-atomics -S -o - | filecheck %s +;; RUN: foreach %s %t wasm-opt --safe-heap --enable-threads --enable-simd --enable-acquire-release-atomics -S -o - | filecheck %s (module (memory 100 100 shared) diff --git a/test/lit/passes/safe-heap_low-memory-unused_enable-threads_enable-simd_enable-relaxed-atomics.wast b/test/lit/passes/safe-heap_low-memory-unused_enable-threads_enable-simd_enable-relaxed-atomics.wast index afcdf26c8ca..030861fabb9 100644 --- a/test/lit/passes/safe-heap_low-memory-unused_enable-threads_enable-simd_enable-relaxed-atomics.wast +++ b/test/lit/passes/safe-heap_low-memory-unused_enable-threads_enable-simd_enable-relaxed-atomics.wast @@ -1,7 +1,7 @@ ;; NOTE: Assertions have been generated by update_lit_checks.py --all-items and should not be edited. ;; NOTE: This test was ported using port_passes_tests_to_lit.py and could be cleaned up. -;; RUN: foreach %s %t wasm-opt --safe-heap --low-memory-unused --enable-threads --enable-simd --enable-relaxed-atomics -S -o - | filecheck %s +;; RUN: foreach %s %t wasm-opt --safe-heap --low-memory-unused --enable-threads --enable-simd --enable-acquire-release-atomics -S -o - | filecheck %s (module (memory 100 100 shared) diff --git a/test/lit/validation/relaxed-atomics.wast b/test/lit/validation/relaxed-atomics.wast index 6a23203d9f2..3e575ff2653 100644 --- a/test/lit/validation/relaxed-atomics.wast +++ b/test/lit/validation/relaxed-atomics.wast @@ -1,18 +1,18 @@ -;; Test the feature flag for --relaxed-atomics +;; Test the feature flag for --acquire-release-atomics ;; The below tests set --enable-threads since it's required for shared memories. ;; text -;; RUN: wasm-opt --enable-threads --enable-relaxed-atomics %s 2>&1 -;; RUN: not wasm-opt --enable-threads --disable-relaxed-atomics %s 2>&1 | filecheck %s +;; RUN: wasm-opt --enable-threads --enable-acquire-release-atomics %s 2>&1 +;; RUN: not wasm-opt --enable-threads --disable-acquire-release-atomics %s 2>&1 | filecheck %s ;; binary -;; RUN: wasm-opt --enable-threads --enable-relaxed-atomics %s -o %t.wasm -;; RUN: not wasm-opt --enable-threads --disable-relaxed-atomics %t.wasm 2>&1 | filecheck %s +;; RUN: wasm-opt --enable-threads --enable-acquire-release-atomics %s -o %t.wasm +;; RUN: not wasm-opt --enable-threads --disable-acquire-release-atomics %t.wasm 2>&1 | filecheck %s (module (memory 1 1 shared) (func $acqrel (result i32) - ;; CHECK: Acquire/release operations require relaxed atomics [--enable-relaxed-atomics] + ;; CHECK: Acquire/release operations require relaxed atomics [--enable-acquire-release-atomics] (i32.atomic.load acqrel (i32.const 1) ) diff --git a/test/passes/strip-target-features_roundtrip_print-features_all-features.txt b/test/passes/strip-target-features_roundtrip_print-features_all-features.txt index b61f97053bd..c24d85c6602 100644 --- a/test/passes/strip-target-features_roundtrip_print-features_all-features.txt +++ b/test/passes/strip-target-features_roundtrip_print-features_all-features.txt @@ -20,7 +20,7 @@ --enable-bulk-memory-opt --enable-call-indirect-overlong --enable-custom-descriptors ---enable-relaxed-atomics +--enable-acquire-release-atomics --enable-custom-page-sizes --enable-multibyte --enable-wide-arithmetic diff --git a/test/unit/test_features.py b/test/unit/test_features.py index 4e1dab185d0..ca5ce347f23 100644 --- a/test/unit/test_features.py +++ b/test/unit/test_features.py @@ -456,7 +456,7 @@ def test_emit_all_features(self): '--enable-bulk-memory-opt', '--enable-call-indirect-overlong', '--enable-custom-descriptors', - '--enable-relaxed-atomics', + '--enable-acquire-release-atomics', '--enable-custom-page-sizes', '--enable-wide-arithmetic', '--enable-compact-imports',