Index: test/unittests/wasm/function-body-decoder-unittest.cc |
diff --git a/test/unittests/wasm/function-body-decoder-unittest.cc b/test/unittests/wasm/function-body-decoder-unittest.cc |
index 9ad78d7484f3599f7c04c96a8466e14e03f319c0..3653d074d65a840b0b837bb4e724d135360e5785 100644 |
--- a/test/unittests/wasm/function-body-decoder-unittest.cc |
+++ b/test/unittests/wasm/function-body-decoder-unittest.cc |
@@ -32,7 +32,7 @@ static const byte kCodeGetLocal1[] = {kExprGetLocal, 1}; |
static const byte kCodeSetLocal0[] = {WASM_SET_LOCAL(0, WASM_ZERO)}; |
static const byte kCodeTeeLocal0[] = {WASM_TEE_LOCAL(0, WASM_ZERO)}; |
-static const LocalType kLocalTypes[] = {kAstI32, kAstI64, kAstF32, kAstF64}; |
+static const ValueType kValueTypes[] = {kWasmI32, kWasmI64, kWasmF32, kWasmF64}; |
static const MachineType machineTypes[] = { |
MachineType::Int8(), MachineType::Uint8(), MachineType::Int16(), |
MachineType::Uint16(), MachineType::Int32(), MachineType::Uint32(), |
@@ -85,7 +85,7 @@ static bool old_eh_flag; |
class FunctionBodyDecoderTest : public TestWithZone { |
public: |
- typedef std::pair<uint32_t, LocalType> LocalsDecl; |
+ typedef std::pair<uint32_t, ValueType> LocalsDecl; |
FunctionBodyDecoderTest() : module(nullptr), local_decls(zone()) {} |
@@ -100,7 +100,7 @@ class FunctionBodyDecoderTest : public TestWithZone { |
ModuleEnv* module; |
LocalDeclEncoder local_decls; |
- void AddLocals(LocalType type, uint32_t count) { |
+ void AddLocals(ValueType type, uint32_t count) { |
local_decls.AddLocals(count, type); |
} |
@@ -139,10 +139,10 @@ class FunctionBodyDecoderTest : public TestWithZone { |
EXPECT_VERIFIES_SC(success, code); |
// Try all combinations of return and parameter types. |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- for (size_t k = 0; k < arraysize(kLocalTypes); k++) { |
- LocalType types[] = {kLocalTypes[i], kLocalTypes[j], kLocalTypes[k]}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ for (size_t k = 0; k < arraysize(kValueTypes); k++) { |
+ ValueType types[] = {kValueTypes[i], kValueTypes[j], kValueTypes[k]}; |
if (types[0] != success->GetReturn(0) || |
types[1] != success->GetParam(0) || |
types[2] != success->GetParam(1)) { |
@@ -159,19 +159,19 @@ class FunctionBodyDecoderTest : public TestWithZone { |
TestUnop(opcode, success->GetReturn(), success->GetParam(0)); |
} |
- void TestUnop(WasmOpcode opcode, LocalType ret_type, LocalType param_type) { |
+ void TestUnop(WasmOpcode opcode, ValueType ret_type, ValueType param_type) { |
// Return(op(local[0])) |
byte code[] = {WASM_UNOP(opcode, WASM_GET_LOCAL(0))}; |
{ |
- LocalType types[] = {ret_type, param_type}; |
+ ValueType types[] = {ret_type, param_type}; |
FunctionSig sig(1, 1, types); |
EXPECT_VERIFIES_SC(&sig, code); |
} |
// Try all combinations of return and parameter types. |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- LocalType types[] = {kLocalTypes[i], kLocalTypes[j]}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ ValueType types[] = {kValueTypes[i], kValueTypes[j]}; |
if (types[0] != ret_type || types[1] != param_type) { |
// Test signature mismatch. |
FunctionSig sig(1, 1, types); |
@@ -258,12 +258,12 @@ TEST_F(FunctionBodyDecoderTest, GetLocal0_param) { |
} |
TEST_F(FunctionBodyDecoderTest, GetLocal0_local) { |
- AddLocals(kAstI32, 1); |
+ AddLocals(kWasmI32, 1); |
EXPECT_VERIFIES_C(i_v, kCodeGetLocal0); |
} |
TEST_F(FunctionBodyDecoderTest, TooManyLocals) { |
- AddLocals(kAstI32, 4034986500); |
+ AddLocals(kWasmI32, 4034986500); |
EXPECT_FAILURE_C(i_v, kCodeGetLocal0); |
} |
@@ -277,7 +277,7 @@ TEST_F(FunctionBodyDecoderTest, GetLocal0_param_n) { |
TEST_F(FunctionBodyDecoderTest, GetLocalN_local) { |
for (byte i = 1; i < 8; i++) { |
- AddLocals(kAstI32, 1); |
+ AddLocals(kWasmI32, 1); |
for (byte j = 0; j < i; j++) { |
byte code[] = {kExprGetLocal, j}; |
EXPECT_VERIFIES_C(i_v, code); |
@@ -299,23 +299,23 @@ TEST_F(FunctionBodyDecoderTest, GetLocal_off_end) { |
} |
TEST_F(FunctionBodyDecoderTest, NumLocalBelowLimit) { |
- AddLocals(kAstI32, kMaxNumWasmLocals - 1); |
+ AddLocals(kWasmI32, kMaxNumWasmLocals - 1); |
EXPECT_VERIFIES(v_v, WASM_NOP); |
} |
TEST_F(FunctionBodyDecoderTest, NumLocalAtLimit) { |
- AddLocals(kAstI32, kMaxNumWasmLocals); |
+ AddLocals(kWasmI32, kMaxNumWasmLocals); |
EXPECT_VERIFIES(v_v, WASM_NOP); |
} |
TEST_F(FunctionBodyDecoderTest, NumLocalAboveLimit) { |
- AddLocals(kAstI32, kMaxNumWasmLocals + 1); |
+ AddLocals(kWasmI32, kMaxNumWasmLocals + 1); |
EXPECT_FAILURE(v_v, WASM_NOP); |
} |
TEST_F(FunctionBodyDecoderTest, GetLocal_varint) { |
const int kMaxLocals = kMaxNumWasmLocals - 1; |
- AddLocals(kAstI32, kMaxLocals); |
+ AddLocals(kWasmI32, kMaxLocals); |
EXPECT_VERIFIES(i_i, kExprGetLocal, U32V_1(66)); |
EXPECT_VERIFIES(i_i, kExprGetLocal, U32V_2(7777)); |
@@ -335,8 +335,8 @@ TEST_F(FunctionBodyDecoderTest, GetLocal_varint) { |
} |
TEST_F(FunctionBodyDecoderTest, GetLocal_toomany) { |
- AddLocals(kAstI32, kMaxNumWasmLocals - 100); |
- AddLocals(kAstI32, 100); |
+ AddLocals(kWasmI32, kMaxNumWasmLocals - 100); |
+ AddLocals(kWasmI32, 100); |
EXPECT_VERIFIES(i_v, kExprGetLocal, U32V_1(66)); |
EXPECT_FAILURE(i_i, kExprGetLocal, U32V_1(66)); |
@@ -405,20 +405,20 @@ TEST_F(FunctionBodyDecoderTest, TeeLocal0_param) { |
TEST_F(FunctionBodyDecoderTest, SetLocal0_local) { |
EXPECT_FAILURE_C(i_v, kCodeSetLocal0); |
EXPECT_FAILURE_C(v_v, kCodeSetLocal0); |
- AddLocals(kAstI32, 1); |
+ AddLocals(kWasmI32, 1); |
EXPECT_FAILURE_C(i_v, kCodeSetLocal0); |
EXPECT_VERIFIES_C(v_v, kCodeSetLocal0); |
} |
TEST_F(FunctionBodyDecoderTest, TeeLocal0_local) { |
EXPECT_FAILURE_C(i_v, kCodeTeeLocal0); |
- AddLocals(kAstI32, 1); |
+ AddLocals(kWasmI32, 1); |
EXPECT_VERIFIES_C(i_v, kCodeTeeLocal0); |
} |
TEST_F(FunctionBodyDecoderTest, TeeLocalN_local) { |
for (byte i = 1; i < 8; i++) { |
- AddLocals(kAstI32, 1); |
+ AddLocals(kWasmI32, 1); |
for (byte j = 0; j < i; j++) { |
EXPECT_FAILURE(v_v, WASM_TEE_LOCAL(j, WASM_I8(i))); |
EXPECT_VERIFIES(i_i, WASM_TEE_LOCAL(j, WASM_I8(i))); |
@@ -678,11 +678,11 @@ TEST_F(FunctionBodyDecoderTest, IfElseUnreachable2) { |
static const byte code[] = { |
WASM_IF_ELSE_I(WASM_GET_LOCAL(0), WASM_UNREACHABLE, WASM_GET_LOCAL(0))}; |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType types[] = {kAstI32, kLocalTypes[i]}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType types[] = {kWasmI32, kValueTypes[i]}; |
FunctionSig sig(1, 1, types); |
- if (kLocalTypes[i] == kAstI32) { |
+ if (kValueTypes[i] == kWasmI32) { |
EXPECT_VERIFIES_SC(&sig, code); |
} else { |
EXPECT_FAILURE_SC(&sig, code); |
@@ -962,7 +962,7 @@ TEST_F(FunctionBodyDecoderTest, Int64Local_param) { |
TEST_F(FunctionBodyDecoderTest, Int64Locals) { |
for (byte i = 1; i < 8; i++) { |
- AddLocals(kAstI64, 1); |
+ AddLocals(kWasmI64, 1); |
for (byte j = 0; j < i; j++) { |
EXPECT_VERIFIES(l_v, WASM_GET_LOCAL(j)); |
} |
@@ -1013,16 +1013,16 @@ TEST_F(FunctionBodyDecoderTest, FloatBinops) { |
} |
TEST_F(FunctionBodyDecoderTest, TypeConversions) { |
- TestUnop(kExprI32SConvertF32, kAstI32, kAstF32); |
- TestUnop(kExprI32SConvertF64, kAstI32, kAstF64); |
- TestUnop(kExprI32UConvertF32, kAstI32, kAstF32); |
- TestUnop(kExprI32UConvertF64, kAstI32, kAstF64); |
- TestUnop(kExprF64SConvertI32, kAstF64, kAstI32); |
- TestUnop(kExprF64UConvertI32, kAstF64, kAstI32); |
- TestUnop(kExprF64ConvertF32, kAstF64, kAstF32); |
- TestUnop(kExprF32SConvertI32, kAstF32, kAstI32); |
- TestUnop(kExprF32UConvertI32, kAstF32, kAstI32); |
- TestUnop(kExprF32ConvertF64, kAstF32, kAstF64); |
+ TestUnop(kExprI32SConvertF32, kWasmI32, kWasmF32); |
+ TestUnop(kExprI32SConvertF64, kWasmI32, kWasmF64); |
+ TestUnop(kExprI32UConvertF32, kWasmI32, kWasmF32); |
+ TestUnop(kExprI32UConvertF64, kWasmI32, kWasmF64); |
+ TestUnop(kExprF64SConvertI32, kWasmF64, kWasmI32); |
+ TestUnop(kExprF64UConvertI32, kWasmF64, kWasmI32); |
+ TestUnop(kExprF64ConvertF32, kWasmF64, kWasmF32); |
+ TestUnop(kExprF32SConvertI32, kWasmF32, kWasmI32); |
+ TestUnop(kExprF32UConvertI32, kWasmF32, kWasmI32); |
+ TestUnop(kExprF32ConvertF64, kWasmF32, kWasmF64); |
} |
TEST_F(FunctionBodyDecoderTest, MacrosStmt) { |
@@ -1057,7 +1057,8 @@ TEST_F(FunctionBodyDecoderTest, MacrosNestedBlocks) { |
} |
TEST_F(FunctionBodyDecoderTest, MultipleReturn) { |
- static LocalType kIntTypes5[] = {kAstI32, kAstI32, kAstI32, kAstI32, kAstI32}; |
+ static ValueType kIntTypes5[] = {kWasmI32, kWasmI32, kWasmI32, kWasmI32, |
+ kWasmI32}; |
FunctionSig sig_ii_v(2, 0, kIntTypes5); |
EXPECT_VERIFIES_S(&sig_ii_v, WASM_RETURNN(2, WASM_ZERO, WASM_ONE)); |
EXPECT_FAILURE_S(&sig_ii_v, WASM_RETURNN(1, WASM_ZERO)); |
@@ -1069,7 +1070,8 @@ TEST_F(FunctionBodyDecoderTest, MultipleReturn) { |
} |
TEST_F(FunctionBodyDecoderTest, MultipleReturn_fallthru) { |
- static LocalType kIntTypes5[] = {kAstI32, kAstI32, kAstI32, kAstI32, kAstI32}; |
+ static ValueType kIntTypes5[] = {kWasmI32, kWasmI32, kWasmI32, kWasmI32, |
+ kWasmI32}; |
FunctionSig sig_ii_v(2, 0, kIntTypes5); |
EXPECT_VERIFIES_S(&sig_ii_v, WASM_ZERO, WASM_ONE); |
@@ -1253,13 +1255,13 @@ TEST_F(FunctionBodyDecoderTest, StoreMemOffset_varint) { |
} |
TEST_F(FunctionBodyDecoderTest, AllLoadMemCombinations) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType local_type = kLocalTypes[i]; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType local_type = kValueTypes[i]; |
for (size_t j = 0; j < arraysize(machineTypes); j++) { |
MachineType mem_type = machineTypes[j]; |
byte code[] = {WASM_LOAD_MEM(mem_type, WASM_ZERO)}; |
FunctionSig sig(1, 0, &local_type); |
- if (local_type == WasmOpcodes::LocalTypeFor(mem_type)) { |
+ if (local_type == WasmOpcodes::ValueTypeFor(mem_type)) { |
EXPECT_VERIFIES_SC(&sig, code); |
} else { |
EXPECT_FAILURE_SC(&sig, code); |
@@ -1269,13 +1271,13 @@ TEST_F(FunctionBodyDecoderTest, AllLoadMemCombinations) { |
} |
TEST_F(FunctionBodyDecoderTest, AllStoreMemCombinations) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType local_type = kLocalTypes[i]; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType local_type = kValueTypes[i]; |
for (size_t j = 0; j < arraysize(machineTypes); j++) { |
MachineType mem_type = machineTypes[j]; |
byte code[] = {WASM_STORE_MEM(mem_type, WASM_ZERO, WASM_GET_LOCAL(0))}; |
FunctionSig sig(0, 1, &local_type); |
- if (local_type == WasmOpcodes::LocalTypeFor(mem_type)) { |
+ if (local_type == WasmOpcodes::ValueTypeFor(mem_type)) { |
EXPECT_VERIFIES_SC(&sig, code); |
} else { |
EXPECT_FAILURE_SC(&sig, code); |
@@ -1293,7 +1295,7 @@ class TestModuleEnv : public ModuleEnv { |
: ModuleEnv(&mod, nullptr) { |
mod.origin = origin; |
} |
- byte AddGlobal(LocalType type, bool mutability = true) { |
+ byte AddGlobal(ValueType type, bool mutability = true) { |
mod.globals.push_back({type, mutability, WasmInitExpr(), 0, false, false}); |
CHECK(mod.globals.size() <= 127); |
return static_cast<byte>(mod.globals.size() - 1); |
@@ -1392,7 +1394,7 @@ TEST_F(FunctionBodyDecoderTest, CallsWithMismatchedSigs3) { |
TEST_F(FunctionBodyDecoderTest, MultiReturn) { |
FLAG_wasm_mv_prototype = true; |
- LocalType storage[] = {kAstI32, kAstI32}; |
+ ValueType storage[] = {kWasmI32, kWasmI32}; |
FunctionSig sig_ii_v(2, 0, storage); |
FunctionSig sig_v_ii(0, 2, storage); |
TestModuleEnv module_env; |
@@ -1408,13 +1410,13 @@ TEST_F(FunctionBodyDecoderTest, MultiReturn) { |
TEST_F(FunctionBodyDecoderTest, MultiReturnType) { |
FLAG_wasm_mv_prototype = true; |
- for (size_t a = 0; a < arraysize(kLocalTypes); a++) { |
- for (size_t b = 0; b < arraysize(kLocalTypes); b++) { |
- for (size_t c = 0; c < arraysize(kLocalTypes); c++) { |
- for (size_t d = 0; d < arraysize(kLocalTypes); d++) { |
- LocalType storage_ab[] = {kLocalTypes[a], kLocalTypes[b]}; |
+ for (size_t a = 0; a < arraysize(kValueTypes); a++) { |
+ for (size_t b = 0; b < arraysize(kValueTypes); b++) { |
+ for (size_t c = 0; c < arraysize(kValueTypes); c++) { |
+ for (size_t d = 0; d < arraysize(kValueTypes); d++) { |
+ ValueType storage_ab[] = {kValueTypes[a], kValueTypes[b]}; |
FunctionSig sig_ab_v(2, 0, storage_ab); |
- LocalType storage_cd[] = {kLocalTypes[c], kLocalTypes[d]}; |
+ ValueType storage_cd[] = {kValueTypes[c], kValueTypes[d]}; |
FunctionSig sig_cd_v(2, 0, storage_cd); |
TestModuleEnv module_env; |
@@ -1544,7 +1546,7 @@ TEST_F(FunctionBodyDecoderTest, Int32Globals) { |
TestModuleEnv module_env; |
module = &module_env; |
- module_env.AddGlobal(kAstI32); |
+ module_env.AddGlobal(kWasmI32); |
EXPECT_VERIFIES_S(sig, WASM_GET_GLOBAL(0)); |
EXPECT_FAILURE_S(sig, WASM_SET_GLOBAL(0, WASM_GET_LOCAL(0))); |
@@ -1556,8 +1558,8 @@ TEST_F(FunctionBodyDecoderTest, ImmutableGlobal) { |
TestModuleEnv module_env; |
module = &module_env; |
- uint32_t g0 = module_env.AddGlobal(kAstI32, true); |
- uint32_t g1 = module_env.AddGlobal(kAstI32, false); |
+ uint32_t g0 = module_env.AddGlobal(kWasmI32, true); |
+ uint32_t g1 = module_env.AddGlobal(kWasmI32, false); |
EXPECT_VERIFIES_S(sig, WASM_SET_GLOBAL(g0, WASM_ZERO)); |
EXPECT_FAILURE_S(sig, WASM_SET_GLOBAL(g1, WASM_ZERO)); |
@@ -1568,10 +1570,10 @@ TEST_F(FunctionBodyDecoderTest, Int32Globals_fail) { |
TestModuleEnv module_env; |
module = &module_env; |
- module_env.AddGlobal(kAstI64); |
- module_env.AddGlobal(kAstI64); |
- module_env.AddGlobal(kAstF32); |
- module_env.AddGlobal(kAstF64); |
+ module_env.AddGlobal(kWasmI64); |
+ module_env.AddGlobal(kWasmI64); |
+ module_env.AddGlobal(kWasmF32); |
+ module_env.AddGlobal(kWasmF64); |
EXPECT_FAILURE_S(sig, WASM_GET_GLOBAL(0)); |
EXPECT_FAILURE_S(sig, WASM_GET_GLOBAL(1)); |
@@ -1589,8 +1591,8 @@ TEST_F(FunctionBodyDecoderTest, Int64Globals) { |
TestModuleEnv module_env; |
module = &module_env; |
- module_env.AddGlobal(kAstI64); |
- module_env.AddGlobal(kAstI64); |
+ module_env.AddGlobal(kWasmI64); |
+ module_env.AddGlobal(kWasmI64); |
EXPECT_VERIFIES_S(sig, WASM_GET_GLOBAL(0)); |
EXPECT_VERIFIES_S(sig, WASM_GET_GLOBAL(1)); |
@@ -1606,7 +1608,7 @@ TEST_F(FunctionBodyDecoderTest, Float32Globals) { |
TestModuleEnv module_env; |
module = &module_env; |
- module_env.AddGlobal(kAstF32); |
+ module_env.AddGlobal(kWasmF32); |
EXPECT_VERIFIES_S(sig, WASM_GET_GLOBAL(0)); |
EXPECT_VERIFIES_S(sig, WASM_SET_GLOBAL(0, WASM_GET_LOCAL(0)), |
@@ -1618,7 +1620,7 @@ TEST_F(FunctionBodyDecoderTest, Float64Globals) { |
TestModuleEnv module_env; |
module = &module_env; |
- module_env.AddGlobal(kAstF64); |
+ module_env.AddGlobal(kWasmF64); |
EXPECT_VERIFIES_S(sig, WASM_GET_GLOBAL(0)); |
EXPECT_VERIFIES_S(sig, WASM_SET_GLOBAL(0, WASM_GET_LOCAL(0)), |
@@ -1626,10 +1628,10 @@ TEST_F(FunctionBodyDecoderTest, Float64Globals) { |
} |
TEST_F(FunctionBodyDecoderTest, AllGetGlobalCombinations) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType local_type = kLocalTypes[i]; |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- LocalType global_type = kLocalTypes[j]; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType local_type = kValueTypes[i]; |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ ValueType global_type = kValueTypes[j]; |
FunctionSig sig(1, 0, &local_type); |
TestModuleEnv module_env; |
module = &module_env; |
@@ -1644,10 +1646,10 @@ TEST_F(FunctionBodyDecoderTest, AllGetGlobalCombinations) { |
} |
TEST_F(FunctionBodyDecoderTest, AllSetGlobalCombinations) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType local_type = kLocalTypes[i]; |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- LocalType global_type = kLocalTypes[j]; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType local_type = kValueTypes[i]; |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ ValueType global_type = kValueTypes[j]; |
FunctionSig sig(0, 1, &local_type); |
TestModuleEnv module_env; |
module = &module_env; |
@@ -1679,9 +1681,9 @@ TEST_F(FunctionBodyDecoderTest, AsmJsGrowMemory) { |
} |
TEST_F(FunctionBodyDecoderTest, AsmJsBinOpsCheckOrigin) { |
- LocalType float32int32float32[] = {kAstF32, kAstI32, kAstF32}; |
+ ValueType float32int32float32[] = {kWasmF32, kWasmI32, kWasmF32}; |
FunctionSig sig_f_if(1, 2, float32int32float32); |
- LocalType float64int32float64[] = {kAstF64, kAstI32, kAstF64}; |
+ ValueType float64int32float64[] = {kWasmF64, kWasmI32, kWasmF64}; |
FunctionSig sig_d_id(1, 2, float64int32float64); |
struct { |
WasmOpcode op; |
@@ -1721,9 +1723,9 @@ TEST_F(FunctionBodyDecoderTest, AsmJsBinOpsCheckOrigin) { |
} |
TEST_F(FunctionBodyDecoderTest, AsmJsUnOpsCheckOrigin) { |
- LocalType float32int32[] = {kAstF32, kAstI32}; |
+ ValueType float32int32[] = {kWasmF32, kWasmI32}; |
FunctionSig sig_f_i(1, 1, float32int32); |
- LocalType float64int32[] = {kAstF64, kAstI32}; |
+ ValueType float64int32[] = {kWasmF64, kWasmI32}; |
FunctionSig sig_d_i(1, 1, float64int32); |
struct { |
WasmOpcode op; |
@@ -1891,9 +1893,9 @@ TEST_F(FunctionBodyDecoderTest, Break_TypeCheck) { |
} |
TEST_F(FunctionBodyDecoderTest, Break_TypeCheckAll1) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- LocalType storage[] = {kLocalTypes[i], kLocalTypes[i], kLocalTypes[j]}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ ValueType storage[] = {kValueTypes[i], kValueTypes[i], kValueTypes[j]}; |
FunctionSig sig(1, 2, storage); |
byte code[] = {WASM_BLOCK_T( |
sig.GetReturn(), WASM_IF(WASM_ZERO, WASM_BRV(0, WASM_GET_LOCAL(0))), |
@@ -1909,9 +1911,9 @@ TEST_F(FunctionBodyDecoderTest, Break_TypeCheckAll1) { |
} |
TEST_F(FunctionBodyDecoderTest, Break_TypeCheckAll2) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- LocalType storage[] = {kLocalTypes[i], kLocalTypes[i], kLocalTypes[j]}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ ValueType storage[] = {kValueTypes[i], kValueTypes[i], kValueTypes[j]}; |
FunctionSig sig(1, 2, storage); |
byte code[] = {WASM_IF_ELSE_T(sig.GetReturn(0), WASM_ZERO, |
WASM_BRV_IF_ZERO(0, WASM_GET_LOCAL(0)), |
@@ -1927,9 +1929,9 @@ TEST_F(FunctionBodyDecoderTest, Break_TypeCheckAll2) { |
} |
TEST_F(FunctionBodyDecoderTest, Break_TypeCheckAll3) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- LocalType storage[] = {kLocalTypes[i], kLocalTypes[i], kLocalTypes[j]}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ ValueType storage[] = {kValueTypes[i], kValueTypes[i], kValueTypes[j]}; |
FunctionSig sig(1, 2, storage); |
byte code[] = {WASM_IF_ELSE_T(sig.GetReturn(), WASM_ZERO, |
WASM_GET_LOCAL(1), |
@@ -1946,16 +1948,16 @@ TEST_F(FunctionBodyDecoderTest, Break_TypeCheckAll3) { |
TEST_F(FunctionBodyDecoderTest, Break_Unify) { |
for (int which = 0; which < 2; which++) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType type = kLocalTypes[i]; |
- LocalType storage[] = {kAstI32, kAstI32, type}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType type = kValueTypes[i]; |
+ ValueType storage[] = {kWasmI32, kWasmI32, type}; |
FunctionSig sig(1, 2, storage); |
byte code1[] = {WASM_BLOCK_T( |
type, WASM_IF(WASM_ZERO, WASM_BRV(1, WASM_GET_LOCAL(which))), |
WASM_GET_LOCAL(which ^ 1))}; |
- if (type == kAstI32) { |
+ if (type == kWasmI32) { |
EXPECT_VERIFIES_SC(&sig, code1); |
} else { |
EXPECT_FAILURE_SC(&sig, code1); |
@@ -1965,14 +1967,14 @@ TEST_F(FunctionBodyDecoderTest, Break_Unify) { |
} |
TEST_F(FunctionBodyDecoderTest, BreakIf_cond_type) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- LocalType types[] = {kLocalTypes[i], kLocalTypes[i], kLocalTypes[j]}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ ValueType types[] = {kValueTypes[i], kValueTypes[i], kValueTypes[j]}; |
FunctionSig sig(1, 2, types); |
byte code[] = {WASM_BLOCK_T( |
types[0], WASM_BRV_IF(0, WASM_GET_LOCAL(0), WASM_GET_LOCAL(1)))}; |
- if (types[2] == kAstI32) { |
+ if (types[2] == kWasmI32) { |
EXPECT_VERIFIES_SC(&sig, code); |
} else { |
EXPECT_FAILURE_SC(&sig, code); |
@@ -1982,10 +1984,10 @@ TEST_F(FunctionBodyDecoderTest, BreakIf_cond_type) { |
} |
TEST_F(FunctionBodyDecoderTest, BreakIf_val_type) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- for (size_t j = 0; j < arraysize(kLocalTypes); j++) { |
- LocalType types[] = {kLocalTypes[i], kLocalTypes[i], kLocalTypes[j], |
- kAstI32}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ for (size_t j = 0; j < arraysize(kValueTypes); j++) { |
+ ValueType types[] = {kValueTypes[i], kValueTypes[i], kValueTypes[j], |
+ kWasmI32}; |
FunctionSig sig(1, 3, types); |
byte code[] = {WASM_BLOCK_T( |
types[1], WASM_BRV_IF(0, WASM_GET_LOCAL(1), WASM_GET_LOCAL(2)), |
@@ -2002,14 +2004,14 @@ TEST_F(FunctionBodyDecoderTest, BreakIf_val_type) { |
TEST_F(FunctionBodyDecoderTest, BreakIf_Unify) { |
for (int which = 0; which < 2; which++) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType type = kLocalTypes[i]; |
- LocalType storage[] = {kAstI32, kAstI32, type}; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType type = kValueTypes[i]; |
+ ValueType storage[] = {kWasmI32, kWasmI32, type}; |
FunctionSig sig(1, 2, storage); |
byte code[] = {WASM_BLOCK_I(WASM_BRV_IF_ZERO(0, WASM_GET_LOCAL(which)), |
WASM_DROP, WASM_GET_LOCAL(which ^ 1))}; |
- if (type == kAstI32) { |
+ if (type == kWasmI32) { |
EXPECT_VERIFIES_SC(&sig, code); |
} else { |
EXPECT_FAILURE_SC(&sig, code); |
@@ -2141,11 +2143,11 @@ TEST_F(FunctionBodyDecoderTest, Select_fail1) { |
} |
TEST_F(FunctionBodyDecoderTest, Select_fail2) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType type = kLocalTypes[i]; |
- if (type == kAstI32) continue; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType type = kValueTypes[i]; |
+ if (type == kWasmI32) continue; |
- LocalType types[] = {type, kAstI32, type}; |
+ ValueType types[] = {type, kWasmI32, type}; |
FunctionSig sig(1, 2, types); |
EXPECT_VERIFIES_S(&sig, WASM_SELECT(WASM_GET_LOCAL(1), WASM_GET_LOCAL(1), |
@@ -2202,24 +2204,24 @@ TEST_F(FunctionBodyDecoderTest, TryCatch) { |
TEST_F(FunctionBodyDecoderTest, MultiValBlock1) { |
FLAG_wasm_mv_prototype = true; |
- EXPECT_VERIFIES(i_ii, WASM_BLOCK_TT(kAstI32, kAstI32, WASM_GET_LOCAL(0), |
+ EXPECT_VERIFIES(i_ii, WASM_BLOCK_TT(kWasmI32, kWasmI32, WASM_GET_LOCAL(0), |
WASM_GET_LOCAL(1)), |
kExprI32Add); |
} |
TEST_F(FunctionBodyDecoderTest, MultiValBlock2) { |
FLAG_wasm_mv_prototype = true; |
- EXPECT_VERIFIES(i_ii, WASM_BLOCK_TT(kAstI32, kAstI32, WASM_GET_LOCAL(0), |
+ EXPECT_VERIFIES(i_ii, WASM_BLOCK_TT(kWasmI32, kWasmI32, WASM_GET_LOCAL(0), |
WASM_GET_LOCAL(1)), |
WASM_I32_ADD(WASM_NOP, WASM_NOP)); |
} |
TEST_F(FunctionBodyDecoderTest, MultiValBlockBr1) { |
FLAG_wasm_mv_prototype = true; |
- EXPECT_FAILURE(i_ii, |
- WASM_BLOCK_TT(kAstI32, kAstI32, WASM_GET_LOCAL(0), WASM_BR(0)), |
- kExprI32Add); |
- EXPECT_VERIFIES(i_ii, WASM_BLOCK_TT(kAstI32, kAstI32, WASM_GET_LOCAL(0), |
+ EXPECT_FAILURE( |
+ i_ii, WASM_BLOCK_TT(kWasmI32, kWasmI32, WASM_GET_LOCAL(0), WASM_BR(0)), |
+ kExprI32Add); |
+ EXPECT_VERIFIES(i_ii, WASM_BLOCK_TT(kWasmI32, kWasmI32, WASM_GET_LOCAL(0), |
WASM_GET_LOCAL(1), WASM_BR(0)), |
kExprI32Add); |
} |
@@ -2227,17 +2229,17 @@ TEST_F(FunctionBodyDecoderTest, MultiValBlockBr1) { |
TEST_F(FunctionBodyDecoderTest, MultiValIf1) { |
FLAG_wasm_mv_prototype = true; |
EXPECT_FAILURE( |
- i_ii, WASM_IF_ELSE_TT(kAstI32, kAstI32, WASM_GET_LOCAL(0), |
+ i_ii, WASM_IF_ELSE_TT(kWasmI32, kWasmI32, WASM_GET_LOCAL(0), |
WASM_SEQ(WASM_GET_LOCAL(0)), |
WASM_SEQ(WASM_GET_LOCAL(1), WASM_GET_LOCAL(0))), |
kExprI32Add); |
EXPECT_FAILURE(i_ii, |
- WASM_IF_ELSE_TT(kAstI32, kAstI32, WASM_GET_LOCAL(0), |
+ WASM_IF_ELSE_TT(kWasmI32, kWasmI32, WASM_GET_LOCAL(0), |
WASM_SEQ(WASM_GET_LOCAL(0), WASM_GET_LOCAL(1)), |
WASM_SEQ(WASM_GET_LOCAL(1))), |
kExprI32Add); |
EXPECT_VERIFIES( |
- i_ii, WASM_IF_ELSE_TT(kAstI32, kAstI32, WASM_GET_LOCAL(0), |
+ i_ii, WASM_IF_ELSE_TT(kWasmI32, kWasmI32, WASM_GET_LOCAL(0), |
WASM_SEQ(WASM_GET_LOCAL(0), WASM_GET_LOCAL(1)), |
WASM_SEQ(WASM_GET_LOCAL(1), WASM_GET_LOCAL(0))), |
kExprI32Add); |
@@ -2543,13 +2545,13 @@ TEST_F(WasmOpcodeLengthTest, SimdExpressions) { |
EXPECT_LENGTH_N(2, kSimdPrefix, 0xff); |
} |
-typedef ZoneVector<LocalType> LocalTypeMap; |
+typedef ZoneVector<ValueType> ValueTypeMap; |
class LocalDeclDecoderTest : public TestWithZone { |
public: |
v8::internal::AccountingAllocator allocator; |
- size_t ExpectRun(LocalTypeMap map, size_t pos, LocalType expected, |
+ size_t ExpectRun(ValueTypeMap map, size_t pos, ValueType expected, |
size_t count) { |
for (size_t i = 0; i < count; i++) { |
EXPECT_EQ(expected, map[pos++]); |
@@ -2557,8 +2559,8 @@ class LocalDeclDecoderTest : public TestWithZone { |
return pos; |
} |
- LocalTypeMap Expand(BodyLocalDecls& decls) { |
- ZoneVector<LocalType> map(zone()); |
+ ValueTypeMap Expand(BodyLocalDecls& decls) { |
+ ZoneVector<ValueType> map(zone()); |
for (auto p : decls.local_types) { |
map.insert(map.end(), p.second, p.first); |
} |
@@ -2581,33 +2583,33 @@ TEST_F(LocalDeclDecoderTest, NoLocals) { |
} |
TEST_F(LocalDeclDecoderTest, OneLocal) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType type = kLocalTypes[i]; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType type = kValueTypes[i]; |
const byte data[] = { |
- 1, 1, static_cast<byte>(WasmOpcodes::LocalTypeCodeFor(type))}; |
+ 1, 1, static_cast<byte>(WasmOpcodes::ValueTypeCodeFor(type))}; |
BodyLocalDecls decls(zone()); |
bool result = DecodeLocalDecls(decls, data, data + sizeof(data)); |
EXPECT_TRUE(result); |
EXPECT_EQ(1u, decls.total_local_count); |
- LocalTypeMap map = Expand(decls); |
+ ValueTypeMap map = Expand(decls); |
EXPECT_EQ(1u, map.size()); |
EXPECT_EQ(type, map[0]); |
} |
} |
TEST_F(LocalDeclDecoderTest, FiveLocals) { |
- for (size_t i = 0; i < arraysize(kLocalTypes); i++) { |
- LocalType type = kLocalTypes[i]; |
+ for (size_t i = 0; i < arraysize(kValueTypes); i++) { |
+ ValueType type = kValueTypes[i]; |
const byte data[] = { |
- 1, 5, static_cast<byte>(WasmOpcodes::LocalTypeCodeFor(type))}; |
+ 1, 5, static_cast<byte>(WasmOpcodes::ValueTypeCodeFor(type))}; |
BodyLocalDecls decls(zone()); |
bool result = DecodeLocalDecls(decls, data, data + sizeof(data)); |
EXPECT_TRUE(result); |
EXPECT_EQ(sizeof(data), decls.decls_encoded_size); |
EXPECT_EQ(5u, decls.total_local_count); |
- LocalTypeMap map = Expand(decls); |
+ ValueTypeMap map = Expand(decls); |
EXPECT_EQ(5u, map.size()); |
ExpectRun(map, 0, type, 5); |
} |
@@ -2627,14 +2629,14 @@ TEST_F(LocalDeclDecoderTest, MixedLocals) { |
EXPECT_EQ(static_cast<uint32_t>(a + b + c + d), |
decls.total_local_count); |
- LocalTypeMap map = Expand(decls); |
+ ValueTypeMap map = Expand(decls); |
EXPECT_EQ(static_cast<uint32_t>(a + b + c + d), map.size()); |
size_t pos = 0; |
- pos = ExpectRun(map, pos, kAstI32, a); |
- pos = ExpectRun(map, pos, kAstI64, b); |
- pos = ExpectRun(map, pos, kAstF32, c); |
- pos = ExpectRun(map, pos, kAstF64, d); |
+ pos = ExpectRun(map, pos, kWasmI32, a); |
+ pos = ExpectRun(map, pos, kWasmI64, b); |
+ pos = ExpectRun(map, pos, kWasmF32, c); |
+ pos = ExpectRun(map, pos, kWasmF64, d); |
} |
} |
} |
@@ -2646,9 +2648,9 @@ TEST_F(LocalDeclDecoderTest, UseEncoder) { |
const byte* end = nullptr; |
LocalDeclEncoder local_decls(zone()); |
- local_decls.AddLocals(5, kAstF32); |
- local_decls.AddLocals(1337, kAstI32); |
- local_decls.AddLocals(212, kAstI64); |
+ local_decls.AddLocals(5, kWasmF32); |
+ local_decls.AddLocals(1337, kWasmI32); |
+ local_decls.AddLocals(212, kWasmI64); |
local_decls.Prepend(zone(), &data, &end); |
BodyLocalDecls decls(zone()); |
@@ -2656,11 +2658,11 @@ TEST_F(LocalDeclDecoderTest, UseEncoder) { |
EXPECT_TRUE(result); |
EXPECT_EQ(5u + 1337u + 212u, decls.total_local_count); |
- LocalTypeMap map = Expand(decls); |
+ ValueTypeMap map = Expand(decls); |
size_t pos = 0; |
- pos = ExpectRun(map, pos, kAstF32, 5); |
- pos = ExpectRun(map, pos, kAstI32, 1337); |
- pos = ExpectRun(map, pos, kAstI64, 212); |
+ pos = ExpectRun(map, pos, kWasmF32, 5); |
+ pos = ExpectRun(map, pos, kWasmI32, 1337); |
+ pos = ExpectRun(map, pos, kWasmI64, 212); |
} |
class BytecodeIteratorTest : public TestWithZone {}; |