Skip to content

Commit 6e0c068

Browse files
authored
Run safe_heap_2 test under wasm64. NFC (#19767)
Also, remove explicit coercion of result of _sbrk() call. As of #19755 this happens automatically.
1 parent 43e6aa7 commit 6e0c068

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

src/runtime_safe_heap.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ function SAFE_HEAP_STORE(dest, value, bytes, isFloat) {
4242
#else
4343
if (runtimeInitialized) {
4444
#endif
45-
var brk = _sbrk() >>> 0;
45+
var brk = _sbrk();
4646
if (dest + bytes > brk) abort(`segmentation fault, exceeded the top of the available dynamic heap when storing ${bytes} bytes to address ${dest}. DYNAMICTOP=${brk}`);
4747
assert(brk >= _emscripten_stack_get_base(), `brk >= _emscripten_stack_get_base() (brk=${brk}, _emscripten_stack_get_base()=${_emscripten_stack_get_base()})`); // sbrk-managed memory must be above the stack
4848
assert(brk <= wasmMemory.buffer.byteLength, `brk <= wasmMemory.buffer.byteLength (brk=${brk}, wasmMemory.buffer.byteLength=${wasmMemory.buffer.byteLength})`);
@@ -70,7 +70,7 @@ function SAFE_HEAP_LOAD(dest, bytes, unsigned, isFloat) {
7070
#else
7171
if (runtimeInitialized) {
7272
#endif
73-
var brk = _sbrk() >>> 0;
73+
var brk = _sbrk();
7474
if (dest + bytes > brk) abort(`segmentation fault, exceeded the top of the available dynamic heap when loading ${bytes} bytes from address ${dest}. DYNAMICTOP=${brk}`);
7575
assert(brk >= _emscripten_stack_get_base(), `brk >= _emscripten_stack_get_base() (brk=${brk}, _emscripten_stack_get_base()=${_emscripten_stack_get_base()})`); // sbrk-managed memory must be above the stack
7676
assert(brk <= wasmMemory.buffer.byteLength, `brk <= wasmMemory.buffer.byteLength (brk=${brk}, wasmMemory.buffer.byteLength=${wasmMemory.buffer.byteLength})`);

test/test_other.py

+1
Original file line numberDiff line numberDiff line change
@@ -10370,6 +10370,7 @@ def test_strict_mode_override(self):
1037010370
self.run_process([EMCC, '-sSTRICT', '-sIGNORE_MISSING_MAIN', 'empty.c'])
1037110371

1037210372
# Tests the difference between options -sSAFE_HEAP=1 and -sSAFE_HEAP=2.
10373+
@also_with_wasm64
1037310374
def test_safe_heap_2(self):
1037410375
self.do_runf(test_file('safe_heap_2.c'), 'alignment fault',
1037510376
emcc_args=['-sSAFE_HEAP=1'], assert_returncode=NON_ZERO)

0 commit comments

Comments
 (0)