Commit 059d2f79 authored by Jakob Kummerow's avatar Jakob Kummerow Committed by V8 LUCI CQ

[wasm-gc] Drop --experimental-wasm-gc-experiments flag

Simply putting all features behind --experimental-wasm-gc.
The intent is to simplify command lines.

Bug: v8:7748
Change-Id: Ibfaa4dc720087a490b177a2b95841620a4d25d89
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3141583
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: 's avatarManos Koukoutos <manoskouk@chromium.org>
Cr-Commit-Position: refs/heads/main@{#76703}
parent 0ef2ccec
......@@ -1006,7 +1006,6 @@ DEFINE_STRING(dump_wasm_module_path, nullptr,
FOREACH_WASM_FEATURE_FLAG(DECL_WASM_FLAG)
#undef DECL_WASM_FLAG
DEFINE_IMPLICATION(experimental_wasm_gc_experiments, experimental_wasm_gc)
DEFINE_IMPLICATION(experimental_wasm_gc, experimental_wasm_typed_funcref)
DEFINE_IMPLICATION(experimental_wasm_typed_funcref, experimental_wasm_reftypes)
......
......@@ -4261,7 +4261,6 @@ class WasmFullDecoder : public WasmDecoder<validate, decoding_mode> {
}
case kExprArrayCopy: {
NON_CONST_ONLY
CHECK_PROTOTYPE_OPCODE(gc_experiments);
ArrayIndexImmediate<validate> dst_imm(this, this->pc_ + opcode_length);
if (!this->Validate(this->pc_ + opcode_length, dst_imm)) return 0;
if (!VALIDATE(dst_imm.array_type->mutability())) {
......@@ -4296,7 +4295,6 @@ class WasmFullDecoder : public WasmDecoder<validate, decoding_mode> {
return opcode_length + dst_imm.length + src_imm.length;
}
case kExprArrayInit: {
CHECK_PROTOTYPE_OPCODE(gc_experiments);
if (decoding_mode != kInitExpression) {
this->DecodeError("array.init is only allowed in init. expressions");
return 0;
......@@ -4365,8 +4363,6 @@ class WasmFullDecoder : public WasmDecoder<validate, decoding_mode> {
return opcode_length + imm.length;
}
case kExprRttFreshSub:
CHECK_PROTOTYPE_OPCODE(gc_experiments);
V8_FALLTHROUGH;
case kExprRttSub: {
IndexImmediate<validate> imm(this, this->pc_ + opcode_length,
"type index");
......
......@@ -563,9 +563,10 @@ class ModuleDecoderImpl : public Decoder {
break;
}
case kWasmFunctionExtendingTypeCode: {
if (!enabled_features_.has_gc_experiments()) {
if (!enabled_features_.has_gc()) {
errorf(pc(),
"nominal types need --experimental-wasm-gc-experiments");
"invalid function type definition, enable with "
"--experimental-wasm-gc");
break;
}
const FunctionSig* s = consume_sig(module_->signature_zone.get());
......@@ -591,9 +592,10 @@ class ModuleDecoderImpl : public Decoder {
break;
}
case kWasmStructExtendingTypeCode: {
if (!enabled_features_.has_gc_experiments()) {
if (!enabled_features_.has_gc()) {
errorf(pc(),
"nominal types need --experimental-wasm-gc-experiments");
"invalid struct type definition, enable with "
"--experimental-wasm-gc");
break;
}
const StructType* s = consume_struct(module_->signature_zone.get());
......@@ -617,9 +619,10 @@ class ModuleDecoderImpl : public Decoder {
break;
}
case kWasmArrayExtendingTypeCode: {
if (!enabled_features_.has_gc_experiments()) {
if (!enabled_features_.has_gc()) {
errorf(pc(),
"nominal types need --experimental-wasm-gc-experiments");
"invalid array type definition, enable with "
"--experimental-wasm-gc");
break;
}
const ArrayType* type = consume_array(module_->signature_zone.get());
......
......@@ -26,7 +26,6 @@
\
/* Non-specified, V8-only experimental additions to the GC proposal */ \
/* V8 side owner: jkummerow */ \
V(gc_experiments, "garbage collection V8-only experimental features", false) \
V(nn_locals, \
"allow non-defaultable/non-nullable locals, validated with 'until end of " \
"block' semantics", \
......
......@@ -905,7 +905,6 @@ WASM_COMPILED_EXEC_TEST(WasmPackedArrayS) {
}
WASM_COMPILED_EXEC_TEST(WasmArrayCopy) {
FLAG_SCOPE(experimental_wasm_gc_experiments);
WasmGCTester tester(execution_tier);
const byte array32_index = tester.DefineArray(kWasmI32, true);
const byte array16_index = tester.DefineArray(kWasmI16, true);
......@@ -1187,8 +1186,6 @@ WASM_COMPILED_EXEC_TEST(BasicRtt) {
WASM_COMPILED_EXEC_TEST(RttFreshSub) {
WasmGCTester tester(execution_tier);
FlagScope<bool> flag_gc_experiments(&FLAG_experimental_wasm_gc_experiments,
true);
const byte kType = tester.DefineStruct({F(wasm::kWasmI32, true)});
HeapType::Representation type_repr =
static_cast<HeapType::Representation>(kType);
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --experimental-wasm-gc-experiments --no-liftoff
// Flags: --experimental-wasm-gc --no-liftoff
d8.file.execute("test/mjsunit/wasm/wasm-module-builder.js");
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --experimental-wasm-gc-experiments
// Flags: --experimental-wasm-gc
d8.file.execute("test/mjsunit/wasm/wasm-module-builder.js");
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --experimental-wasm-gc-experiments
// Flags: --experimental-wasm-gc
d8.file.execute("test/mjsunit/wasm/wasm-module-builder.js");
......
......@@ -1091,7 +1091,6 @@ TEST_F(FunctionBodyDecoderTest, UnreachableRefTypes) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
WASM_FEATURE_SCOPE(return_call);
byte function_index = builder.AddFunction(sigs.i_ii());
......@@ -4317,7 +4316,6 @@ TEST_F(FunctionBodyDecoderTest, RttSub) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
uint8_t array_type_index = builder.AddArray(kWasmI8, true);
uint8_t super_struct_type_index = builder.AddStruct({F(kWasmI16, true)});
......
......@@ -838,7 +838,6 @@ TEST_F(WasmModuleVerifyTest, GlobalRttFreshSubOfCanon) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte data[] = {
SECTION(Type, ENTRY_COUNT(2),
......@@ -870,7 +869,6 @@ TEST_F(WasmModuleVerifyTest, GlobalRttFreshSubOfSubOfCanon) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte data[] = {
SECTION(Type, ENTRY_COUNT(2),
......@@ -888,7 +886,6 @@ TEST_F(WasmModuleVerifyTest, GlobalRttFreshSubOfFreshSubOfCanon) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte data[] = {
SECTION(Type, ENTRY_COUNT(2),
......@@ -928,7 +925,6 @@ TEST_F(WasmModuleVerifyTest, GlobalRttFreshSubOfGlobal) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte data[] = {
SECTION(Type, ENTRY_COUNT(2),
......@@ -974,7 +970,6 @@ TEST_F(WasmModuleVerifyTest, GlobalRttFreshSubOfGlobalTypeError) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte data[] = {
SECTION(Type, ENTRY_COUNT(1),
......@@ -1015,7 +1010,6 @@ TEST_F(WasmModuleVerifyTest, GlobalRttFreshSubIllegalParent) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte data[] = {
SECTION(Type, ENTRY_COUNT(2),
......@@ -1049,7 +1043,6 @@ TEST_F(WasmModuleVerifyTest, RttFreshSubGlobalTypeError) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte data[] = {
SECTION(Type, ENTRY_COUNT(1),
......@@ -1066,7 +1059,6 @@ TEST_F(WasmModuleVerifyTest, StructNewInitExpr) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte basic[] = {
SECTION(Type, ENTRY_COUNT(1), // --
......@@ -1116,7 +1108,6 @@ TEST_F(WasmModuleVerifyTest, ArrayInitInitExpr) {
WASM_FEATURE_SCOPE(reftypes);
WASM_FEATURE_SCOPE(typed_funcref);
WASM_FEATURE_SCOPE(gc);
WASM_FEATURE_SCOPE(gc_experiments);
static const byte basic[] = {
SECTION(Type, ENTRY_COUNT(1), WASM_ARRAY_DEF(kI16Code, true)),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment