Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(275)

Side by Side Diff: test/unittests/wasm/module-decoder-unittest.cc

Issue 2929853003: Fix use of history timers in background threads. (Closed)
Patch Set: Make explicit when async_counters is needed. Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « test/common/wasm/wasm-module-runner.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "test/unittests/test-utils.h" 5 #include "test/unittests/test-utils.h"
6 6
7 #include "src/handles.h" 7 #include "src/handles.h"
8 #include "src/objects-inl.h" 8 #include "src/objects-inl.h"
9 #include "src/wasm/module-decoder.h" 9 #include "src/wasm/module-decoder.h"
10 #include "src/wasm/wasm-limits.h" 10 #include "src/wasm/wasm-limits.h"
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 public: 134 public:
135 ModuleResult DecodeModule(const byte* module_start, const byte* module_end) { 135 ModuleResult DecodeModule(const byte* module_start, const byte* module_end) {
136 // Add the wasm magic and version number automatically. 136 // Add the wasm magic and version number automatically.
137 size_t size = static_cast<size_t>(module_end - module_start); 137 size_t size = static_cast<size_t>(module_end - module_start);
138 byte header[] = {WASM_MODULE_HEADER}; 138 byte header[] = {WASM_MODULE_HEADER};
139 size_t total = sizeof(header) + size; 139 size_t total = sizeof(header) + size;
140 auto temp = new byte[total]; 140 auto temp = new byte[total];
141 memcpy(temp, header, sizeof(header)); 141 memcpy(temp, header, sizeof(header));
142 memcpy(temp + sizeof(header), module_start, size); 142 memcpy(temp + sizeof(header), module_start, size);
143 ModuleResult result = 143 ModuleResult result =
144 DecodeWasmModule(isolate(), temp, temp + total, false, kWasmOrigin); 144 SyncDecodeWasmModule(isolate(), temp, temp + total, false, kWasmOrigin);
145 delete[] temp; 145 delete[] temp;
146 return result; 146 return result;
147 } 147 }
148 ModuleResult DecodeModuleNoHeader(const byte* module_start, 148 ModuleResult DecodeModuleNoHeader(const byte* module_start,
149 const byte* module_end) { 149 const byte* module_end) {
150 return DecodeWasmModule(isolate(), module_start, module_end, false, 150 return SyncDecodeWasmModule(isolate(), module_start, module_end, false,
151 kWasmOrigin); 151 kWasmOrigin);
152 } 152 }
153 }; 153 };
154 154
155 TEST_F(WasmModuleVerifyTest, WrongMagic) { 155 TEST_F(WasmModuleVerifyTest, WrongMagic) {
156 for (uint32_t x = 1; x; x <<= 1) { 156 for (uint32_t x = 1; x; x <<= 1) {
157 const byte data[] = {U32_LE(kWasmMagic ^ x), U32_LE(kWasmVersion)}; 157 const byte data[] = {U32_LE(kWasmMagic ^ x), U32_LE(kWasmVersion)};
158 ModuleResult result = DecodeModuleNoHeader(data, data + sizeof(data)); 158 ModuleResult result = DecodeModuleNoHeader(data, data + sizeof(data));
159 EXPECT_FALSE(result.ok()); 159 EXPECT_FALSE(result.ok());
160 } 160 }
161 } 161 }
(...skipping 755 matching lines...) Expand 10 before | Expand all | Expand 10 after
917 kLocalI32, // -- 917 kLocalI32, // --
918 4, 918 4,
919 kLocalI64, // -- 919 kLocalI64, // --
920 5, 920 5,
921 kLocalF32, // -- 921 kLocalF32, // --
922 6, 922 6,
923 kLocalF64, // -- 923 kLocalF64, // --
924 kExprEnd // body 924 kExprEnd // body
925 }; 925 };
926 926
927 FunctionResult result = DecodeWasmFunction(isolate(), zone(), get_env(), data, 927 FunctionResult result = SyncDecodeWasmFunction(isolate(), zone(), get_env(),
928 data + sizeof(data)); 928 data, data + sizeof(data));
929 EXPECT_OK(result); 929 EXPECT_OK(result);
930 930
931 if (result.val && result.ok()) { 931 if (result.val && result.ok()) {
932 WasmFunction* function = result.val.get(); 932 WasmFunction* function = result.val.get();
933 EXPECT_EQ(0u, function->sig->parameter_count()); 933 EXPECT_EQ(0u, function->sig->parameter_count());
934 EXPECT_EQ(0u, function->sig->return_count()); 934 EXPECT_EQ(0u, function->sig->return_count());
935 EXPECT_EQ(0u, function->name.offset()); 935 EXPECT_EQ(0u, function->name.offset());
936 EXPECT_EQ(static_cast<uint32_t>(SIZEOF_SIG_ENTRY_v_v), 936 EXPECT_EQ(static_cast<uint32_t>(SIZEOF_SIG_ENTRY_v_v),
937 function->code.offset()); 937 function->code.offset());
938 EXPECT_EQ(sizeof(data), function->code.end_offset()); 938 EXPECT_EQ(sizeof(data), function->code.end_offset());
(...skipping 660 matching lines...) Expand 10 before | Expand all | Expand 10 after
1599 {{19, 4}, {20, 1}, {21, 2}}, // -- 1599 {{19, 4}, {20, 1}, {21, 2}}, // --
1600 {{29, 8}, {30, 5}, {35, 2}}, // -- 1600 {{29, 8}, {30, 5}, {35, 2}}, // --
1601 }; 1601 };
1602 1602
1603 CheckSections(data, data + sizeof(data), expected, arraysize(expected)); 1603 CheckSections(data, data + sizeof(data), expected, arraysize(expected));
1604 } 1604 }
1605 1605
1606 } // namespace wasm 1606 } // namespace wasm
1607 } // namespace internal 1607 } // namespace internal
1608 } // namespace v8 1608 } // namespace v8
OLDNEW
« no previous file with comments | « test/common/wasm/wasm-module-runner.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698