From cdf8a35c3a6fa948d3df44f1ab4821883c69e647 Mon Sep 17 00:00:00 2001 From: Kleis Auke Wolthuizen Date: Thu, 2 Jul 2026 20:38:07 +0200 Subject: [PATCH 1/2] Add Closure externs for `growable` and `resizable` properties Prevents Closure compiler from mangling the `resizable` and `growable` properties accessed on `HEAP8.buffer`. --- src/closure-externs/closure-externs.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/closure-externs/closure-externs.js b/src/closure-externs/closure-externs.js index 8199fe8460569..d5f45227a9cb5 100644 --- a/src/closure-externs/closure-externs.js +++ b/src/closure-externs/closure-externs.js @@ -210,3 +210,9 @@ var os = {}; AudioWorkletProcessor.parameterDescriptors; var scheduler = {}; + +/** @type {boolean} */ +ArrayBuffer.prototype.resizable; + +/** @type {boolean} */ +SharedArrayBuffer.prototype.growable; From 2f152401bd9073ce5e3ccfebc4d0666658addad8 Mon Sep 17 00:00:00 2001 From: Kleis Auke Wolthuizen Date: Fri, 3 Jul 2026 07:54:33 +0000 Subject: [PATCH 2/2] Automatic rebaseline of codesize expectations. NFC This is an automatic change generated by tools/maint/rebaseline_tests.py. The following (3) test expectation files were updated by running the tests with `--rebaseline`: ``` codesize/test_codesize_mem_O3_grow.json: 9647 => 9655 [+8 bytes / +0.08%] codesize/test_codesize_mem_O3_grow_standalone.json: 9493 => 9501 [+8 bytes / +0.08%] codesize/test_codesize_minimal_pthreads_memgrowth.json: 26607 => 26614 [+7 bytes / +0.03%] Average change: +0.06% (+0.03% - +0.08%) ``` --- test/codesize/test_codesize_mem_O3_grow.json | 8 ++++---- test/codesize/test_codesize_mem_O3_grow_standalone.json | 4 ++-- .../test_codesize_minimal_pthreads_memgrowth.json | 8 ++++---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/test/codesize/test_codesize_mem_O3_grow.json b/test/codesize/test_codesize_mem_O3_grow.json index 47a146c9c54f5..f6607092d8ce1 100644 --- a/test/codesize/test_codesize_mem_O3_grow.json +++ b/test/codesize/test_codesize_mem_O3_grow.json @@ -1,10 +1,10 @@ { - "a.out.js": 4386, - "a.out.js.gz": 2154, + "a.out.js": 4394, + "a.out.js.gz": 2155, "a.out.nodebug.wasm": 5261, "a.out.nodebug.wasm.gz": 2419, - "total": 9647, - "total_gz": 4573, + "total": 9655, + "total_gz": 4574, "sent": [ "a (emscripten_resize_heap)" ], diff --git a/test/codesize/test_codesize_mem_O3_grow_standalone.json b/test/codesize/test_codesize_mem_O3_grow_standalone.json index c3689358c5a28..3d8fe2492cb6f 100644 --- a/test/codesize/test_codesize_mem_O3_grow_standalone.json +++ b/test/codesize/test_codesize_mem_O3_grow_standalone.json @@ -1,9 +1,9 @@ { - "a.out.js": 3852, + "a.out.js": 3860, "a.out.js.gz": 1896, "a.out.nodebug.wasm": 5641, "a.out.nodebug.wasm.gz": 2659, - "total": 9493, + "total": 9501, "total_gz": 4555, "sent": [ "args_get", diff --git a/test/codesize/test_codesize_minimal_pthreads_memgrowth.json b/test/codesize/test_codesize_minimal_pthreads_memgrowth.json index 371d9194c76c6..ef610802c66d8 100644 --- a/test/codesize/test_codesize_minimal_pthreads_memgrowth.json +++ b/test/codesize/test_codesize_minimal_pthreads_memgrowth.json @@ -1,10 +1,10 @@ { - "a.out.js": 7543, - "a.out.js.gz": 3705, + "a.out.js": 7550, + "a.out.js.gz": 3708, "a.out.nodebug.wasm": 19064, "a.out.nodebug.wasm.gz": 8804, - "total": 26607, - "total_gz": 12509, + "total": 26614, + "total_gz": 12512, "sent": [ "a (memory)", "b (exit)",