| Index: test/cctest/wasm/test-run-wasm.cc
|
| diff --git a/test/cctest/wasm/test-run-wasm.cc b/test/cctest/wasm/test-run-wasm.cc
|
| index 5c7610a251ee12905cea0caafbaacff5e67d4420..cc9663974b6b0252c56a24f5db4420dfe7abdb79 100644
|
| --- a/test/cctest/wasm/test-run-wasm.cc
|
| +++ b/test/cctest/wasm/test-run-wasm.cc
|
| @@ -71,6 +71,7 @@ class TestingModule : public ModuleEnv {
|
| linker = nullptr;
|
| function_code = nullptr;
|
| asm_js = false;
|
| + memset(global_data, 0, sizeof(global_data));
|
| }
|
|
|
| ~TestingModule() {
|
| @@ -2125,17 +2126,18 @@ TEST(Run_Wasm_CheckMachIntsZero) {
|
| }
|
|
|
|
|
| -// TODO(titzer): Fix for msan and re-enable.
|
| -#if 0
|
| -
|
| TEST(Run_Wasm_MemF32_Sum) {
|
| WasmRunner<int32_t> r(MachineType::Int32());
|
| const byte kSum = r.AllocateLocal(kAstF32);
|
| - ModuleEnv module;
|
| const int kSize = 5;
|
| - float buffer[kSize] = {-99.25, -888.25, -77.25, 66666.25, 5555.25};
|
| - module.mem_start = reinterpret_cast<uintptr_t>(&buffer);
|
| - module.mem_end = reinterpret_cast<uintptr_t>(&buffer[kSize]);
|
| + TestingModule module;
|
| + module.AddMemoryElems<float>(kSize);
|
| + float* buffer = module.raw_mem_start<float>();
|
| + buffer[0] = -99.25;
|
| + buffer[1] = -888.25;
|
| + buffer[2] = -77.25;
|
| + buffer[3] = 66666.25;
|
| + buffer[4] = 5555.25;
|
| r.env()->module = &module;
|
|
|
| BUILD(r, WASM_BLOCK(
|
| @@ -2158,8 +2160,6 @@ TEST(Run_Wasm_MemF32_Sum) {
|
| CHECK_EQ(71256.0f, buffer[0]);
|
| }
|
|
|
| -#endif
|
| -
|
|
|
| #if WASM_64
|
| TEST(Run_Wasm_MemI64_Sum) {
|
| @@ -2197,17 +2197,16 @@ TEST(Run_Wasm_MemI64_Sum) {
|
| #endif
|
|
|
|
|
| -// TODO(titzer): Fix for msan and re-enable.
|
| -#if 0
|
| -
|
| template <typename T>
|
| -void GenerateAndRunFold(WasmOpcode binop, T* buffer, size_t size,
|
| - LocalType astType, MachineType memType) {
|
| +T GenerateAndRunFold(WasmOpcode binop, T* buffer, size_t size,
|
| + LocalType astType, MachineType memType) {
|
| WasmRunner<int32_t> r(MachineType::Int32());
|
| const byte kAccum = r.AllocateLocal(astType);
|
| - ModuleEnv module;
|
| - module.mem_start = reinterpret_cast<uintptr_t>(buffer);
|
| - module.mem_end = reinterpret_cast<uintptr_t>(buffer + size);
|
| + TestingModule module;
|
| + module.AddMemoryElems<T>(size);
|
| + for (size_t i = 0; i < size; i++) {
|
| + module.raw_mem_start<T>()[i] = buffer[i];
|
| + }
|
| r.env()->module = &module;
|
|
|
| BUILD(
|
| @@ -2226,19 +2225,18 @@ void GenerateAndRunFold(WasmOpcode binop, T* buffer, size_t size,
|
| WASM_STORE_MEM(memType, WASM_ZERO, WASM_GET_LOCAL(kAccum)),
|
| WASM_GET_LOCAL(0)));
|
| r.Call(static_cast<int>(sizeof(T) * (size - 1)));
|
| + return module.raw_mem_at<double>(0);
|
| }
|
|
|
|
|
| TEST(Run_Wasm_MemF64_Mul) {
|
| const size_t kSize = 6;
|
| double buffer[kSize] = {1, 2, 2, 2, 2, 2};
|
| - GenerateAndRunFold<double>(kExprF64Mul, buffer, kSize, kAstF64,
|
| - MachineType::Float64());
|
| - CHECK_EQ(32, buffer[0]);
|
| + double result = GenerateAndRunFold<double>(kExprF64Mul, buffer, kSize,
|
| + kAstF64, MachineType::Float64());
|
| + CHECK_EQ(32, result);
|
| }
|
|
|
| -#endif
|
| -
|
|
|
| TEST(Build_Wasm_Infinite_Loop) {
|
| WasmRunner<int32_t> r(MachineType::Int32());
|
| @@ -2466,9 +2464,6 @@ TEST(Run_WasmInt32Global) {
|
| }
|
|
|
|
|
| -// TODO(titzer): Fix for msan and re-enable.
|
| -#if 0
|
| -
|
| TEST(Run_WasmInt32Globals_DontAlias) {
|
| const int kNumGlobals = 3;
|
| TestingModule module;
|
| @@ -2498,8 +2493,6 @@ TEST(Run_WasmInt32Globals_DontAlias) {
|
| }
|
| }
|
|
|
| -#endif
|
| -
|
|
|
| #if WASM_64
|
| TEST(Run_WasmInt64Global) {
|
|
|