Skip to content

Commit 700c81a

Browse files
committed
Make more use of makeModuleReceiveWithVar. NFC
This saves a little on code size and improves locality of reference.
1 parent 109dd7a commit 700c81a

File tree

88 files changed

+92
-99
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

88 files changed

+92
-99
lines changed

Diff for: src/lib/libcore.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1697,7 +1697,7 @@ addToLibrary({
16971697
return "./this.program";
16981698
},
16991699
#else
1700-
$getExecutableName: () => thisProgram || './this.program',
1700+
$getExecutableName: () => thisProgram,
17011701
#endif
17021702

17031703
$listenOnce: (object, event, func) =>

Diff for: src/shell.js

+5-12
Original file line numberDiff line numberDiff line change
@@ -131,8 +131,8 @@ var ENVIRONMENT_IS_WASM_WORKER = !!Module['$ww'];
131131
// refer to Module (if they choose; they can also define Module)
132132
{{{ preJS() }}}
133133

134-
var arguments_ = [];
135-
var thisProgram = './this.program';
134+
{{{ makeModuleReceiveWithVar('arguments_', 'arguments', undefined, true) }}}
135+
{{{ makeModuleReceiveWithVar('thisProgram', undefined, undefined, true) }}}
136136
var quit_ = (status, toThrow) => {
137137
throw toThrow;
138138
};
@@ -208,10 +208,10 @@ if (ENVIRONMENT_IS_NODE) {
208208
#include "node_shell_read.js"
209209

210210
if (process.argv.length > 1) {
211-
thisProgram = process.argv[1].replace(/\\/g, '/');
211+
thisProgram ??= process.argv[1].replace(/\\/g, '/');
212212
}
213213

214-
arguments_ = process.argv.slice(2);
214+
arguments_ ??= process.argv.slice(2);
215215

216216
#if !MODULARIZE
217217
// MODULARIZE will export the module in the proper place outside, we don't need to export here
@@ -283,7 +283,7 @@ if (ENVIRONMENT_IS_SHELL) {
283283
globalThis.setTimeout ??= (f) => f();
284284

285285
// v8 uses `arguments_` whereas spidermonkey uses `scriptArgs`
286-
arguments_ = globalThis.arguments || globalThis.scriptArgs;
286+
arguments_ ??= globalThis.arguments || globalThis.scriptArgs;
287287

288288
if (typeof quit == 'function') {
289289
quit_ = (status, toThrow) => {
@@ -406,13 +406,6 @@ if (ENVIRONMENT_IS_NODE) {
406406
checkIncomingModuleAPI();
407407
#endif
408408

409-
// Emit code to handle expected values on the Module object. This applies Module.x
410-
// to the proper local x. This has two benefits: first, we only emit it if it is
411-
// expected to arrive, and second, by using a local everywhere else that can be
412-
// minified.
413-
{{{ makeModuleReceive('arguments_', 'arguments') }}}
414-
{{{ makeModuleReceive('thisProgram') }}}
415-
416409
// perform assertions in shell.js after we set up out() and err(), as otherwise if an assertion fails it cannot print the message
417410
#if ASSERTIONS
418411
// Assertions on removed incoming Module JS APIs.

Diff for: test/other/codesize/test_codesize_cxx_ctors1.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8232
1+
8221

Diff for: test/other/codesize/test_codesize_cxx_ctors1.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
19993
1+
19956

Diff for: test/other/codesize/test_codesize_cxx_ctors2.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8221
1+
8209

Diff for: test/other/codesize/test_codesize_cxx_ctors2.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
19971
1+
19934

Diff for: test/other/codesize/test_codesize_cxx_except.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9231
1+
9216

Diff for: test/other/codesize/test_codesize_cxx_except.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
23730
1+
23693
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8177
1+
8167
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
19885
1+
19848
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8177
1+
8167
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
19885
1+
19848

Diff for: test/other/codesize/test_codesize_cxx_lto.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8245
1+
8235

Diff for: test/other/codesize/test_codesize_cxx_lto.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20067
1+
20030

Diff for: test/other/codesize/test_codesize_cxx_mangle.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
9268
1+
9254

Diff for: test/other/codesize/test_codesize_cxx_mangle.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
23844
1+
23807
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8232
1+
8221
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
19993
1+
19956

Diff for: test/other/codesize/test_codesize_cxx_wasmfs.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3440
1+
3431

Diff for: test/other/codesize/test_codesize_cxx_wasmfs.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
7429
1+
7393

Diff for: test/other/codesize/test_codesize_files_js_fs.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
7542
1+
7587

Diff for: test/other/codesize/test_codesize_files_js_fs.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
18551
1+
18653
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2682
1+
2732
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
5753
1+
5855

Diff for: test/other/codesize/test_codesize_hello_O0.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
7940
1+
7974

Diff for: test/other/codesize/test_codesize_hello_O0.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
21295
1+
21352

Diff for: test/other/codesize/test_codesize_hello_O1.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2547
1+
2596

Diff for: test/other/codesize/test_codesize_hello_O1.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6584
1+
6704

Diff for: test/other/codesize/test_codesize_hello_O2.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2204
1+
2249

Diff for: test/other/codesize/test_codesize_hello_O2.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4546
1+
4648

Diff for: test/other/codesize/test_codesize_hello_O3.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2162
1+
2209

Diff for: test/other/codesize/test_codesize_hello_O3.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4488
1+
4590

Diff for: test/other/codesize/test_codesize_hello_Os.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2162
1+
2209

Diff for: test/other/codesize/test_codesize_hello_Os.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4488
1+
4590

Diff for: test/other/codesize/test_codesize_hello_Oz.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2162
1+
2209

Diff for: test/other/codesize/test_codesize_hello_Oz.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4488
1+
4590
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
5860
1+
5845
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
12839
1+
12781
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1577
1+
1627
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3419
1+
3517
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3690
1+
3737
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6783
1+
6885
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2162
1+
2209
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4488
1+
4590
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1761
1+
1808
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3773
1+
3871
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1798
1+
1842
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3816
1+
3914

Diff for: test/other/codesize/test_codesize_mem_O3.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2211
1+
2192

Diff for: test/other/codesize/test_codesize_mem_O3.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4644
1+
4588

Diff for: test/other/codesize/test_codesize_mem_O3_grow.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2358
1+
2338

Diff for: test/other/codesize/test_codesize_mem_O3_grow.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4928
1+
4871
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2058
1+
2038
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4341
1+
4284
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2018
1+
1999
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4273
1+
4217
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1793
1+
1836
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3829
1+
3927
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1798
1+
1842
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3816
1+
3914
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1798
1+
1842
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3816
1+
3914

Diff for: test/other/codesize/test_codesize_minimal_64.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1317
1+
1354

Diff for: test/other/codesize/test_codesize_minimal_64.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2775
1+
2847

Diff for: test/other/codesize/test_codesize_minimal_O0.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6284
1+
6309

Diff for: test/other/codesize/test_codesize_minimal_O0.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
16651
1+
16678

Diff for: test/other/codesize/test_codesize_minimal_O1.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1381
1+
1422

Diff for: test/other/codesize/test_codesize_minimal_O1.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3240
1+
3326

Diff for: test/other/codesize/test_codesize_minimal_O2.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1247
1+
1283

Diff for: test/other/codesize/test_codesize_minimal_O2.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2522
1+
2594

Diff for: test/other/codesize/test_codesize_minimal_O3.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1212
1+
1249

Diff for: test/other/codesize/test_codesize_minimal_O3.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2472
1+
2544

Diff for: test/other/codesize/test_codesize_minimal_Os.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1212
1+
1249

Diff for: test/other/codesize/test_codesize_minimal_Os.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2472
1+
2544
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1197
1+
1234
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2451
1+
2523

Diff for: test/other/codesize/test_codesize_minimal_Oz.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1212
1+
1249

Diff for: test/other/codesize/test_codesize_minimal_Oz.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2472
1+
2544

Diff for: test/other/codesize/test_codesize_minimal_esm.gzsize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1404
1+
1441

Diff for: test/other/codesize/test_codesize_minimal_esm.jssize

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2928
1+
3000
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
4045
1+
4073
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
8382
1+
8458
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1212
1+
1249
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2472
1+
2544

Diff for: test/other/test_INCOMING_MODULE_JS_API.js.size

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3488
1+
3611

Diff for: test/other/test_unoptimized_code_size.js.size

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
52240
1+
51792
+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
27112
1+
26755

Diff for: test/other/test_unoptimized_code_size_strict.js.size

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
50453
1+
50082

0 commit comments

Comments
 (0)