GeezerVison is showing github.com — deps: V8: cherry-pick 47800791b35c · nodejs/node@b59af77
File treeExpand file treeCollapse file tree Open diff view settings test/mjsunit/regress/wasm
Expand file treeCollapse file tree Open diff view settings Collapse file Copy file name to clipboardExpand all lines: common.gypi +1-1Lines changed: 1 addition & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
| 38 | 38 |
| 39 | 39 | # Reset this number to 0 on major V8 upgrades. | 40 | 40 | # Increment by one for each non-official patch applied to deps/v8. | 41 | | - 'v8_embedder_string': '-node.7', | | 41 | + 'v8_embedder_string': '-node.8', | 42 | 42 |
| 43 | 43 | ##### V8 defaults for Node.js ##### | 44 | 44 |
| |
Collapse file Copy file name to clipboardExpand all lines: deps/v8/src/wasm/wasm-objects.cc +3Lines changed: 3 additions & 0 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -1207,6 +1207,9 @@ int32_t WasmMemoryObject::Grow(Isolate* isolate, | 1207 | 1207 | if (!old_buffer->is_resizable_by_js()) { | 1208 | 1208 | // Broadcasting the update should update this memory object too. | 1209 | 1209 | CHECK(memory_object->needs_new_buffer()); | | 1210 | + // For the current isolate, immediately update the buffer. | | 1211 | + RefreshSharedBuffer(isolate, memory_object, old_buffer, | | 1212 | + ResizableFlag::kNotResizable); | 1210 | 1213 | } | 1211 | 1214 | // As {old_pages} was read racefully, we return here the synchronized | 1212 | 1215 | // value provided by {GrowWasmMemoryInPlace}, to provide the atomic | |
Collapse file Copy file name to clipboard +20Lines changed: 20 additions & 0 deletions | Original file line number | Diff line number | Diff line change |
|---|
| | 1 | +// Copyright 2025 the V8 project authors. All rights reserved. | | 2 | +// Use of this source code is governed by a BSD-style license that can be | | 3 | +// found in the LICENSE file. | | 4 | + | | 5 | +d8.file.execute('test/mjsunit/wasm/wasm-module-builder.js'); | | 6 | + | | 7 | +let memory = new WebAssembly.Memory({ initial: 1, maximum: 2, shared: true }); | | 8 | +let builder = new WasmModuleBuilder(); | | 9 | +builder.addImportedMemory("m", "memory", 1, 2, "shared"); | | 10 | +builder.addFunction("wait", kSig_i_ii) | | 11 | + .addBody([ | | 12 | + kExprLocalGet, 0, // address | | 13 | + kExprLocalGet, 1, // expected_value | | 14 | + kExprI64Const, 0, // timeout | | 15 | + kAtomicPrefix, kExprI32AtomicWait, 2, 0 | | 16 | + ]) | | 17 | + .exportFunc(); | | 18 | +let instance = builder.instantiate({m: {memory}}); | | 19 | +memory.grow(1); | | 20 | +instance.exports.wait(kPageSize); |
|