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 | 48 |
1 files changed, 35 insertions, 13 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 4d39dd6ff7..007fc7a864 100644 --- a/deps/v8/test/cctest/wasm/test-run-wasm-asmjs.cc +++ b/deps/v8/test/cctest/wasm/test-run-wasm-asmjs.cc @@ -12,8 +12,8 @@ #include "test/cctest/cctest.h" #include "test/cctest/compiler/value-helper.h" -#include "test/cctest/wasm/test-signatures.h" #include "test/cctest/wasm/wasm-run-utils.h" +#include "test/common/wasm/test-signatures.h" using namespace v8::base; using namespace v8::internal; @@ -38,8 +38,9 @@ uint32_t GetMatchingRelocInfoCount(Handle<Code> code, RelocInfo::Mode rmode) { } WASM_EXEC_TEST(Int32AsmjsDivS) { - WasmRunner<int32_t> r(execution_mode, MachineType::Int32(), - MachineType::Int32()); + TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; + WasmRunner<int32_t> r(&module, MachineType::Int32(), MachineType::Int32()); BUILD(r, WASM_BINOP(kExprI32AsmjsDivS, WASM_GET_LOCAL(0), WASM_GET_LOCAL(1))); const int32_t kMin = std::numeric_limits<int32_t>::min(); CHECK_EQ(0, r.Call(0, 100)); @@ -50,8 +51,9 @@ WASM_EXEC_TEST(Int32AsmjsDivS) { } WASM_EXEC_TEST(Int32AsmjsRemS) { - WasmRunner<int32_t> r(execution_mode, MachineType::Int32(), - MachineType::Int32()); + TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; + WasmRunner<int32_t> r(&module, MachineType::Int32(), MachineType::Int32()); BUILD(r, WASM_BINOP(kExprI32AsmjsRemS, WASM_GET_LOCAL(0), WASM_GET_LOCAL(1))); const int32_t kMin = std::numeric_limits<int32_t>::min(); CHECK_EQ(33, r.Call(133, 100)); @@ -62,8 +64,9 @@ WASM_EXEC_TEST(Int32AsmjsRemS) { } WASM_EXEC_TEST(Int32AsmjsDivU) { - WasmRunner<int32_t> r(execution_mode, MachineType::Int32(), - MachineType::Int32()); + TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; + WasmRunner<int32_t> r(&module, MachineType::Int32(), MachineType::Int32()); BUILD(r, WASM_BINOP(kExprI32AsmjsDivU, WASM_GET_LOCAL(0), WASM_GET_LOCAL(1))); const int32_t kMin = std::numeric_limits<int32_t>::min(); CHECK_EQ(0, r.Call(0, 100)); @@ -74,8 +77,9 @@ WASM_EXEC_TEST(Int32AsmjsDivU) { } WASM_EXEC_TEST(Int32AsmjsRemU) { - WasmRunner<int32_t> r(execution_mode, MachineType::Int32(), - MachineType::Int32()); + TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; + WasmRunner<int32_t> r(&module, MachineType::Int32(), MachineType::Int32()); BUILD(r, WASM_BINOP(kExprI32AsmjsRemU, WASM_GET_LOCAL(0), WASM_GET_LOCAL(1))); const int32_t kMin = std::numeric_limits<int32_t>::min(); CHECK_EQ(17, r.Call(217, 100)); @@ -86,7 +90,9 @@ WASM_EXEC_TEST(Int32AsmjsRemU) { } WASM_EXEC_TEST(I32AsmjsSConvertF32) { - WasmRunner<int32_t> r(execution_mode, MachineType::Float32()); + TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; + WasmRunner<int32_t> r(&module, MachineType::Float32()); BUILD(r, WASM_UNOP(kExprI32AsmjsSConvertF32, WASM_GET_LOCAL(0))); FOR_FLOAT32_INPUTS(i) { @@ -96,7 +102,9 @@ WASM_EXEC_TEST(I32AsmjsSConvertF32) { } WASM_EXEC_TEST(I32AsmjsSConvertF64) { - WasmRunner<int32_t> r(execution_mode, MachineType::Float64()); + TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; + WasmRunner<int32_t> r(&module, MachineType::Float64()); BUILD(r, WASM_UNOP(kExprI32AsmjsSConvertF64, WASM_GET_LOCAL(0))); FOR_FLOAT64_INPUTS(i) { @@ -106,7 +114,9 @@ WASM_EXEC_TEST(I32AsmjsSConvertF64) { } WASM_EXEC_TEST(I32AsmjsUConvertF32) { - WasmRunner<uint32_t> r(execution_mode, MachineType::Float32()); + TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; + WasmRunner<uint32_t> r(&module, MachineType::Float32()); BUILD(r, WASM_UNOP(kExprI32AsmjsUConvertF32, WASM_GET_LOCAL(0))); FOR_FLOAT32_INPUTS(i) { @@ -116,7 +126,9 @@ WASM_EXEC_TEST(I32AsmjsUConvertF32) { } WASM_EXEC_TEST(I32AsmjsUConvertF64) { - WasmRunner<uint32_t> r(execution_mode, MachineType::Float64()); + TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; + WasmRunner<uint32_t> r(&module, MachineType::Float64()); BUILD(r, WASM_UNOP(kExprI32AsmjsUConvertF64, WASM_GET_LOCAL(0))); FOR_FLOAT64_INPUTS(i) { @@ -127,6 +139,7 @@ WASM_EXEC_TEST(I32AsmjsUConvertF64) { WASM_EXEC_TEST(LoadMemI32_oob_asm) { TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; int32_t* memory = module.AddMemoryElems<int32_t>(8); WasmRunner<int32_t> r(&module, MachineType::Uint32()); module.RandomizeMemory(1112); @@ -147,6 +160,7 @@ WASM_EXEC_TEST(LoadMemI32_oob_asm) { WASM_EXEC_TEST(LoadMemF32_oob_asm) { TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; float* memory = module.AddMemoryElems<float>(8); WasmRunner<float> r(&module, MachineType::Uint32()); module.RandomizeMemory(1112); @@ -167,6 +181,7 @@ WASM_EXEC_TEST(LoadMemF32_oob_asm) { WASM_EXEC_TEST(LoadMemF64_oob_asm) { TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; double* memory = module.AddMemoryElems<double>(8); WasmRunner<double> r(&module, MachineType::Uint32()); module.RandomizeMemory(1112); @@ -189,6 +204,7 @@ WASM_EXEC_TEST(LoadMemF64_oob_asm) { WASM_EXEC_TEST(StoreMemI32_oob_asm) { TestingModule module(execution_mode); + module.origin = kAsmJsOrigin; int32_t* memory = module.AddMemoryElems<int32_t>(8); WasmRunner<int32_t> r(&module, MachineType::Uint32(), MachineType::Uint32()); module.RandomizeMemory(1112); @@ -224,6 +240,7 @@ WASM_EXEC_TEST(StoreMemI32_oob_asm) { #define INT_LOAD_TEST(OP_TYPE) \ TEST(RunWasm_AsmCheckedRelocInfo##OP_TYPE) { \ TestingModule module(kExecuteCompiled); \ + module.origin = kAsmJsOrigin; \ WasmRunner<int32_t> r(&module, MachineType::Uint32()); \ BUILD(r, WASM_UNOP(OP_TYPE, WASM_GET_LOCAL(0))); \ CHECK_EQ(1, GetMatchingRelocInfoCount(module.instance->function_code[0], \ @@ -238,6 +255,7 @@ FOREACH_INT_CHECKED_LOAD_OP(INT_LOAD_TEST) #define INT_STORE_TEST(OP_TYPE) \ TEST(RunWasm_AsmCheckedRelocInfo##OP_TYPE) { \ TestingModule module(kExecuteCompiled); \ + module.origin = kAsmJsOrigin; \ WasmRunner<int32_t> r(&module, MachineType::Uint32(), \ MachineType::Uint32()); \ BUILD(r, WASM_BINOP(OP_TYPE, WASM_GET_LOCAL(0), WASM_GET_LOCAL(1))); \ @@ -252,6 +270,7 @@ FOREACH_INT_CHECKED_STORE_OP(INT_STORE_TEST) TEST(RunWasm_AsmCheckedLoadFloat32RelocInfo) { TestingModule module(kExecuteCompiled); + module.origin = kAsmJsOrigin; WasmRunner<float> r(&module, MachineType::Uint32()); BUILD(r, WASM_UNOP(kExprF32AsmjsLoadMem, WASM_GET_LOCAL(0))); @@ -263,6 +282,7 @@ TEST(RunWasm_AsmCheckedLoadFloat32RelocInfo) { TEST(RunWasm_AsmCheckedStoreFloat32RelocInfo) { TestingModule module(kExecuteCompiled); + module.origin = kAsmJsOrigin; WasmRunner<float> r(&module, MachineType::Uint32(), MachineType::Float32()); BUILD(r, WASM_BINOP(kExprF32AsmjsStoreMem, WASM_GET_LOCAL(0), WASM_GET_LOCAL(1))); @@ -275,6 +295,7 @@ TEST(RunWasm_AsmCheckedStoreFloat32RelocInfo) { TEST(RunWasm_AsmCheckedLoadFloat64RelocInfo) { TestingModule module(kExecuteCompiled); + module.origin = kAsmJsOrigin; WasmRunner<double> r(&module, MachineType::Uint32()); BUILD(r, WASM_UNOP(kExprF64AsmjsLoadMem, WASM_GET_LOCAL(0))); @@ -286,6 +307,7 @@ TEST(RunWasm_AsmCheckedLoadFloat64RelocInfo) { TEST(RunWasm_AsmCheckedStoreFloat64RelocInfo) { TestingModule module(kExecuteCompiled); + module.origin = kAsmJsOrigin; WasmRunner<double> r(&module, MachineType::Uint32(), MachineType::Float64()); BUILD(r, WASM_BINOP(kExprF64AsmjsStoreMem, WASM_GET_LOCAL(0), WASM_GET_LOCAL(1))); |