diff options
Diffstat (limited to 'deps/v8/test/cctest/wasm/test-run-wasm-asmjs.cc')
-rw-r--r-- | deps/v8/test/cctest/wasm/test-run-wasm-asmjs.cc | 76 |
1 files changed, 33 insertions, 43 deletions
diff --git a/deps/v8/test/cctest/wasm/test-run-wasm-asmjs.cc b/deps/v8/test/cctest/wasm/test-run-wasm-asmjs.cc index 2e71a86a1d..286578a580 100644 --- a/deps/v8/test/cctest/wasm/test-run-wasm-asmjs.cc +++ b/deps/v8/test/cctest/wasm/test-run-wasm-asmjs.cc @@ -31,9 +31,9 @@ namespace wasm { void RunWasm_##name(TestExecutionTier execution_tier) ASMJS_EXEC_TEST(Int32AsmjsDivS) { - WasmRunner<int32_t, int32_t, int32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_BINOP(kExprI32AsmjsDivS, WASM_LOCAL_GET(0), WASM_LOCAL_GET(1))); + WasmRunner<int32_t, int32_t, int32_t> r(execution_tier, kAsmJsSloppyOrigin); + r.Build( + {WASM_BINOP(kExprI32AsmjsDivS, WASM_LOCAL_GET(0), WASM_LOCAL_GET(1))}); const int32_t kMin = std::numeric_limits<int32_t>::min(); CHECK_EQ(0, r.Call(0, 100)); CHECK_EQ(0, r.Call(100, 0)); @@ -43,9 +43,9 @@ ASMJS_EXEC_TEST(Int32AsmjsDivS) { } ASMJS_EXEC_TEST(Int32AsmjsRemS) { - WasmRunner<int32_t, int32_t, int32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_BINOP(kExprI32AsmjsRemS, WASM_LOCAL_GET(0), WASM_LOCAL_GET(1))); + WasmRunner<int32_t, int32_t, int32_t> r(execution_tier, kAsmJsSloppyOrigin); + r.Build( + {WASM_BINOP(kExprI32AsmjsRemS, WASM_LOCAL_GET(0), WASM_LOCAL_GET(1))}); const int32_t kMin = std::numeric_limits<int32_t>::min(); CHECK_EQ(33, r.Call(133, 100)); CHECK_EQ(0, r.Call(kMin, -1)); @@ -55,9 +55,9 @@ ASMJS_EXEC_TEST(Int32AsmjsRemS) { } ASMJS_EXEC_TEST(Int32AsmjsDivU) { - WasmRunner<int32_t, int32_t, int32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_BINOP(kExprI32AsmjsDivU, WASM_LOCAL_GET(0), WASM_LOCAL_GET(1))); + WasmRunner<int32_t, int32_t, int32_t> r(execution_tier, kAsmJsSloppyOrigin); + r.Build( + {WASM_BINOP(kExprI32AsmjsDivU, WASM_LOCAL_GET(0), WASM_LOCAL_GET(1))}); const int32_t kMin = std::numeric_limits<int32_t>::min(); CHECK_EQ(0, r.Call(0, 100)); CHECK_EQ(0, r.Call(kMin, -1)); @@ -67,9 +67,9 @@ ASMJS_EXEC_TEST(Int32AsmjsDivU) { } ASMJS_EXEC_TEST(Int32AsmjsRemU) { - WasmRunner<int32_t, int32_t, int32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_BINOP(kExprI32AsmjsRemU, WASM_LOCAL_GET(0), WASM_LOCAL_GET(1))); + WasmRunner<int32_t, int32_t, int32_t> r(execution_tier, kAsmJsSloppyOrigin); + r.Build( + {WASM_BINOP(kExprI32AsmjsRemU, WASM_LOCAL_GET(0), WASM_LOCAL_GET(1))}); const int32_t kMin = std::numeric_limits<int32_t>::min(); CHECK_EQ(17, r.Call(217, 100)); CHECK_EQ(0, r.Call(100, 0)); @@ -79,9 +79,8 @@ ASMJS_EXEC_TEST(Int32AsmjsRemU) { } ASMJS_EXEC_TEST(I32AsmjsSConvertF32) { - WasmRunner<int32_t, float> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_UNOP(kExprI32AsmjsSConvertF32, WASM_LOCAL_GET(0))); + WasmRunner<int32_t, float> r(execution_tier, kAsmJsSloppyOrigin); + r.Build({WASM_UNOP(kExprI32AsmjsSConvertF32, WASM_LOCAL_GET(0))}); FOR_FLOAT32_INPUTS(i) { int32_t expected = DoubleToInt32(i); @@ -90,9 +89,8 @@ ASMJS_EXEC_TEST(I32AsmjsSConvertF32) { } ASMJS_EXEC_TEST(I32AsmjsSConvertF64) { - WasmRunner<int32_t, double> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_UNOP(kExprI32AsmjsSConvertF64, WASM_LOCAL_GET(0))); + WasmRunner<int32_t, double> r(execution_tier, kAsmJsSloppyOrigin); + r.Build({WASM_UNOP(kExprI32AsmjsSConvertF64, WASM_LOCAL_GET(0))}); FOR_FLOAT64_INPUTS(i) { int32_t expected = DoubleToInt32(i); @@ -101,9 +99,8 @@ ASMJS_EXEC_TEST(I32AsmjsSConvertF64) { } ASMJS_EXEC_TEST(I32AsmjsUConvertF32) { - WasmRunner<uint32_t, float> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_UNOP(kExprI32AsmjsUConvertF32, WASM_LOCAL_GET(0))); + WasmRunner<uint32_t, float> r(execution_tier, kAsmJsSloppyOrigin); + r.Build({WASM_UNOP(kExprI32AsmjsUConvertF32, WASM_LOCAL_GET(0))}); FOR_FLOAT32_INPUTS(i) { uint32_t expected = DoubleToUint32(i); @@ -112,9 +109,8 @@ ASMJS_EXEC_TEST(I32AsmjsUConvertF32) { } ASMJS_EXEC_TEST(I32AsmjsUConvertF64) { - WasmRunner<uint32_t, double> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_UNOP(kExprI32AsmjsUConvertF64, WASM_LOCAL_GET(0))); + WasmRunner<uint32_t, double> r(execution_tier, kAsmJsSloppyOrigin); + r.Build({WASM_UNOP(kExprI32AsmjsUConvertF64, WASM_LOCAL_GET(0))}); FOR_FLOAT64_INPUTS(i) { uint32_t expected = DoubleToUint32(i); @@ -123,12 +119,11 @@ ASMJS_EXEC_TEST(I32AsmjsUConvertF64) { } ASMJS_EXEC_TEST(LoadMemI32_oob_asm) { - WasmRunner<int32_t, uint32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); + WasmRunner<int32_t, uint32_t> r(execution_tier, kAsmJsSloppyOrigin); int32_t* memory = r.builder().AddMemoryElems<int32_t>(8); r.builder().RandomizeMemory(1112); - BUILD(r, WASM_UNOP(kExprI32AsmjsLoadMem, WASM_LOCAL_GET(0))); + r.Build({WASM_UNOP(kExprI32AsmjsLoadMem, WASM_LOCAL_GET(0))}); memory[0] = 999999; CHECK_EQ(999999, r.Call(0u)); @@ -143,12 +138,11 @@ ASMJS_EXEC_TEST(LoadMemI32_oob_asm) { } ASMJS_EXEC_TEST(LoadMemF32_oob_asm) { - WasmRunner<float, uint32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); + WasmRunner<float, uint32_t> r(execution_tier, kAsmJsSloppyOrigin); float* memory = r.builder().AddMemoryElems<float>(8); r.builder().RandomizeMemory(1112); - BUILD(r, WASM_UNOP(kExprF32AsmjsLoadMem, WASM_LOCAL_GET(0))); + r.Build({WASM_UNOP(kExprF32AsmjsLoadMem, WASM_LOCAL_GET(0))}); memory[0] = 9999.5f; CHECK_EQ(9999.5f, r.Call(0u)); @@ -163,12 +157,11 @@ ASMJS_EXEC_TEST(LoadMemF32_oob_asm) { } ASMJS_EXEC_TEST(LoadMemF64_oob_asm) { - WasmRunner<double, uint32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); + WasmRunner<double, uint32_t> r(execution_tier, kAsmJsSloppyOrigin); double* memory = r.builder().AddMemoryElems<double>(8); r.builder().RandomizeMemory(1112); - BUILD(r, WASM_UNOP(kExprF64AsmjsLoadMem, WASM_LOCAL_GET(0))); + r.Build({WASM_UNOP(kExprF64AsmjsLoadMem, WASM_LOCAL_GET(0))}); memory[0] = 9799.5; CHECK_EQ(9799.5, r.Call(0u)); @@ -185,13 +178,12 @@ ASMJS_EXEC_TEST(LoadMemF64_oob_asm) { } ASMJS_EXEC_TEST(StoreMemI32_oob_asm) { - WasmRunner<int32_t, uint32_t, uint32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); + WasmRunner<int32_t, uint32_t, uint32_t> r(execution_tier, kAsmJsSloppyOrigin); int32_t* memory = r.builder().AddMemoryElems<int32_t>(8); r.builder().RandomizeMemory(1112); - BUILD(r, WASM_BINOP(kExprI32AsmjsStoreMem, WASM_LOCAL_GET(0), - WASM_LOCAL_GET(1))); + r.Build({WASM_BINOP(kExprI32AsmjsStoreMem, WASM_LOCAL_GET(0), + WASM_LOCAL_GET(1))}); memory[0] = 7777; CHECK_EQ(999999, r.Call(0u, 999999)); @@ -208,9 +200,8 @@ ASMJS_EXEC_TEST(StoreMemI32_oob_asm) { ASMJS_EXEC_TEST(Int32AsmjsDivS_byzero_const) { for (int8_t denom = -2; denom < 8; ++denom) { - WasmRunner<int32_t, int32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_I32_ASMJS_DIVS(WASM_LOCAL_GET(0), WASM_I32V_1(denom))); + WasmRunner<int32_t, int32_t> r(execution_tier, kAsmJsSloppyOrigin); + r.Build({WASM_I32_ASMJS_DIVS(WASM_LOCAL_GET(0), WASM_I32V_1(denom))}); FOR_INT32_INPUTS(i) { if (denom == 0) { CHECK_EQ(0, r.Call(i)); @@ -225,9 +216,8 @@ ASMJS_EXEC_TEST(Int32AsmjsDivS_byzero_const) { ASMJS_EXEC_TEST(Int32AsmjsRemS_byzero_const) { for (int8_t denom = -2; denom < 8; ++denom) { - WasmRunner<int32_t, int32_t> r(execution_tier); - r.builder().ChangeOriginToAsmjs(); - BUILD(r, WASM_I32_ASMJS_REMS(WASM_LOCAL_GET(0), WASM_I32V_1(denom))); + WasmRunner<int32_t, int32_t> r(execution_tier, kAsmJsSloppyOrigin); + r.Build({WASM_I32_ASMJS_REMS(WASM_LOCAL_GET(0), WASM_I32V_1(denom))}); FOR_INT32_INPUTS(i) { if (denom == 0) { CHECK_EQ(0, r.Call(i)); |