porffor 0.22.5 → 0.22.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/compiler/havoc.js CHANGED
@@ -90,4 +90,29 @@ export const f64ToI32s = (func, targets) => {
90
90
  }
91
91
  }
92
92
  }
93
+ };
94
+
95
+ export const withLocalDomains = (func, targets, domains) => {
96
+ const { wasm } = func;
97
+
98
+ // update wasm
99
+ for (let i = 0; i < wasm.length; i++) {
100
+ const op = wasm[i];
101
+ const opcode = op[0];
102
+ const idx = op[1];
103
+
104
+ let target;
105
+ if ((opcode === Opcodes.local_get || opcode === Opcodes.local_tee) &&
106
+ (target = targets.indexOf(idx)) !== -1) {
107
+ const n1 = wasm[i + 1];
108
+ if (n1?.[0] !== Opcodes.i32_const && n1?.[0] !== Opcodes.f64_const) continue;
109
+
110
+ const n2 = wasm[i + 2];
111
+ if (!n2?.[0]) continue;
112
+
113
+ switch (n2[0]) {
114
+
115
+ }
116
+ }
117
+ }
93
118
  };
package/compiler/pgo.js CHANGED
@@ -10,8 +10,13 @@ export const setup = () => {
10
10
  importedFuncs[importedFuncs.profile2].params = [ Valtype.i32, valtypeBinary ];
11
11
 
12
12
  // enable these prefs by default for pgo
13
- Prefs.typeswitchUniqueTmp = Prefs.typeswitchUniqueTmp === false ? false : true;
14
- Prefs.cyclone = Prefs.cyclone === false ? false : true;
13
+ for (const x of [
14
+ 'typeswitchUniqueTmp', // use unique tmps for typeswitches
15
+ 'lengthNoTmp', // use duplicated inline code instead of tmp for .length
16
+ 'cyclone', // enable cyclone pre-evaler
17
+ ]) {
18
+ Prefs[x] = Prefs[x] === false ? false : true;
19
+ }
15
20
  };
16
21
 
17
22
  export const run = obj => {
@@ -158,8 +163,24 @@ export const run = obj => {
158
163
  return true;
159
164
  });
160
165
 
166
+ const domains = localData[i].map((x, j) => {
167
+ if (j < func.params.length) return false; // param
168
+ if (consistents[j] !== false) return false; // already consistent
169
+ if (x.length < 2) return false; // <2 samples
170
+
171
+ let min = Infinity, max = -Infinity;
172
+ for (const y of x) {
173
+ if (y < min) min = y;
174
+ if (y > max) max = y;
175
+ }
176
+
177
+ counts[2]++;
178
+ return [ min, max ];
179
+ });
180
+
161
181
  func.consistents = consistents;
162
182
  func.integerOnlyF64s = integerOnlyF64s;
183
+ func.domains = domains;
163
184
 
164
185
  log += ` ${func.name}: identified ${counts[0]}/${total} locals as consistent${Prefs.verbosePgo ? ':' : ''}\n`;
165
186
  if (Prefs.verbosePgo) {
@@ -174,12 +195,20 @@ export const run = obj => {
174
195
  if (localValues[j].type !== Valtype.f64) continue;
175
196
  log += ` ${integerOnlyF64s[j] ? '\u001b[92m' : '\u001b[91m'}${localKeys[j]}\u001b[0m\n`;
176
197
  }
198
+ }
199
+
200
+ log += ` ${func.name}: identified ${counts[2]}/${total} local non-consistent domains${Prefs.verbosePgo ? ':' : ''}\n`;
201
+ if (Prefs.verbosePgo) {
202
+ for (let j = func.params.length; j < localData[i].length; j++) {
203
+ if (domains[j] === false) continue;
204
+ log += ` ${domains[j] !== false ? '\u001b[92m' : '\u001b[91m'}${localKeys[j]}\u001b[0m: ${domains[j] !== false ? `${domains[j][0]} ≤ x ≤ ${domains[j][1]}` : ''}\n`;
205
+ }
177
206
 
178
207
  log += '\n';
179
208
  }
180
209
  }
181
210
 
182
- time(2, 'processed PGO data' + log);
211
+ time(2, 'processed PGO data\n' + log);
183
212
  time(3, 'optimizing using PGO data...');
184
213
 
185
214
  log = '';
@@ -216,5 +245,5 @@ export const run = obj => {
216
245
  if (targets.length > 0) Havoc.localsToConsts(wasmFunc, targets, consts, { localKeys: x.localKeys });
217
246
  }
218
247
 
219
- time(3, 'optimized using PGO data' + log);
248
+ time(3, 'optimized using PGO data\n' + log);
220
249
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "porffor",
3
3
  "description": "a basic experimental wip aot optimizing js -> wasm engine/compiler/runtime in js",
4
- "version": "0.22.5+dd1e07d06",
4
+ "version": "0.22.7+b8fea85a7",
5
5
  "author": "CanadaHonk",
6
6
  "license": "MIT",
7
7
  "scripts": {},
package/runner/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import fs from 'node:fs';
3
- globalThis.version = '0.22.5+dd1e07d06';
3
+ globalThis.version = '0.22.7+b8fea85a7';
4
4
 
5
5
  // deno compat
6
6
  if (typeof process === 'undefined' && typeof Deno !== 'undefined') {
package/tmp.txt ADDED
@@ -0,0 +1,423 @@
1
+ harness/nativeFunctionMatcher.js
2
+ built-ins/Map/iterable-calls-set.js
3
+ built-ins/Map/iterator-close-after-set-failure.js
4
+ built-ins/Function/S15.3_A3_T5.js
5
+ built-ins/Map/map-no-iterable-does-not-call-set.js
6
+ built-ins/Function/S15.3_A3_T3.js
7
+ built-ins/Map/map-iterable-empty-does-not-call-set.js
8
+ built-ins/Map/iterator-close-failure-after-set-failure.js
9
+ built-ins/RegExp/S15.10.2.13_A1_T1.js
10
+ built-ins/RegExp/S15.10.2.13_A1_T2.js
11
+ built-ins/Set/set-iterable-calls-add.js
12
+ built-ins/Set/set-iterator-close-after-add-failure.js
13
+ built-ins/Set/set-iterable-empty-does-not-call-add.js
14
+ built-ins/WeakMap/empty-iterable.js
15
+ built-ins/WeakMap/iterator-close-after-set-failure.js
16
+ built-ins/WeakMap/iterable-with-symbol-keys.js
17
+ built-ins/WeakMap/iterable-with-object-keys.js
18
+ built-ins/WeakSet/empty-iterable.js
19
+ built-ins/WeakSet/iterator-close-after-add-failure.js
20
+ built-ins/WeakSet/iterable-with-symbol-values.js
21
+ built-ins/WeakSet/iterable-with-object-values.js
22
+ built-ins/decodeURI/S15.1.3.1_A2.2_T1.js
23
+ language/function-code/10.4.3-1-26-s.js
24
+ language/global-code/script-decl-func-err-non-extensible.js
25
+ language/global-code/script-decl-func-err-non-configurable.js
26
+ language/global-code/script-decl-var-err.js
27
+ language/punctuators/S7.7_A1.js
28
+ language/reserved-words/unreserved-words.js
29
+ staging/JSON/json-parse-with-source-snapshot.js
30
+ staging/decorators/accessor-as-identifier.js
31
+ built-ins/JSON/parse/reviver-array-get-prop-from-prototype.js
32
+ built-ins/JSON/parse/reviver-array-non-configurable-prop-create.js
33
+ built-ins/JSON/parse/reviver-object-get-prop-from-prototype.js
34
+ built-ins/JSON/parse/reviver-object-non-configurable-prop-create.js
35
+ built-ins/JSON/parse/reviver-array-non-configurable-prop-delete.js
36
+ built-ins/JSON/parse/reviver-object-non-configurable-prop-delete.js
37
+ built-ins/Object/defineProperties/15.2.3.7-2-18.js
38
+ built-ins/Object/defineProperties/15.2.3.7-5-b-109.js
39
+ built-ins/Object/defineProperties/15.2.3.7-5-b-137.js
40
+ built-ins/Object/defineProperties/15.2.3.7-5-b-188.js
41
+ built-ins/Object/defineProperties/15.2.3.7-5-b-216.js
42
+ built-ins/Object/defineProperties/15.2.3.7-5-b-31.js
43
+ built-ins/Object/defineProperties/15.2.3.7-5-b-56.js
44
+ built-ins/Object/defineProperties/15.2.3.7-5-b-84.js
45
+ built-ins/Object/defineProperties/15.2.3.7-6-a-24.js
46
+ built-ins/Object/defineProperty/15.2.3.6-3-151.js
47
+ built-ins/Object/defineProperty/15.2.3.6-3-177.js
48
+ built-ins/Object/defineProperty/15.2.3.6-3-202.js
49
+ built-ins/Object/defineProperty/15.2.3.6-3-230.js
50
+ built-ins/Object/defineProperty/15.2.3.6-3-260.js
51
+ built-ins/Object/defineProperty/15.2.3.6-3-45.js
52
+ built-ins/Object/defineProperty/15.2.3.6-3-70.js
53
+ built-ins/Object/defineProperty/15.2.3.6-3-98.js
54
+ built-ins/Temporal/Duration/call-builtin.js
55
+ language/block-scope/leave/nested-block-let-declaration-only-shadows-outer-parameter-value-1.js
56
+ language/block-scope/leave/nested-block-let-declaration-only-shadows-outer-parameter-value-2.js
57
+ language/block-scope/leave/x-after-break-to-label.js
58
+ language/block-scope/leave/verify-context-in-labelled-block.js
59
+ language/eval-code/direct/non-definable-global-var.js
60
+ language/eval-code/indirect/non-definable-global-var.js
61
+ language/expressions/arrow-function/lexical-new.target.js
62
+ language/expressions/arrow-function/lexical-new.target-closure-returned.js
63
+ language/expressions/assignment/assignment-operator-calls-putvalue-lref--rval--1.js
64
+ language/expressions/class/accessor-name-inst-computed-in.js
65
+ language/expressions/class/accessor-name-static-computed-in.js
66
+ language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-assignment-expression-coalesce.js
67
+ language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-assignment-expression-logical-and.js
68
+ language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-await-expression.js
69
+ language/expressions/class/cpn-class-expr-accessors-computed-property-name-from-assignment-expression-logical-or.js
70
+ language/expressions/class/cpn-class-expr-computed-property-name-from-assignment-expression-coalesce.js
71
+ language/expressions/class/cpn-class-expr-computed-property-name-from-assignment-expression-logical-or.js
72
+ language/expressions/class/cpn-class-expr-computed-property-name-from-await-expression.js
73
+ language/expressions/class/cpn-class-expr-computed-property-name-from-assignment-expression-logical-and.js
74
+ language/expressions/class/cpn-class-expr-fields-computed-property-name-from-assignment-expression-coalesce.js
75
+ language/expressions/class/cpn-class-expr-fields-computed-property-name-from-assignment-expression-logical-and.js
76
+ language/expressions/class/cpn-class-expr-fields-computed-property-name-from-assignment-expression-logical-or.js
77
+ language/expressions/class/cpn-class-expr-fields-computed-property-name-from-await-expression.js
78
+ language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-logical-or.js
79
+ language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-await-expression.js
80
+ language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-logical-and.js
81
+ language/expressions/class/cpn-class-expr-fields-methods-computed-property-name-from-assignment-expression-coalesce.js
82
+ language/expressions/dynamic-import/await-import-evaluation.js
83
+ language/expressions/dynamic-import/eval-export-dflt-cls-named.js
84
+ language/expressions/dynamic-import/eval-export-dflt-expr-in.js
85
+ language/expressions/dynamic-import/eval-export-dflt-expr-gen-named.js
86
+ language/expressions/dynamic-import/eval-export-dflt-cls-name-meth.js
87
+ language/expressions/dynamic-import/eval-export-dflt-expr-cls-anon.js
88
+ language/expressions/dynamic-import/eval-export-dflt-expr-cls-named.js
89
+ language/expressions/dynamic-import/eval-export-dflt-expr-fn-anon.js
90
+ language/expressions/dynamic-import/eval-export-dflt-expr-cls-name-meth.js
91
+ language/expressions/dynamic-import/indirect-resolution.js
92
+ language/expressions/dynamic-import/eval-export-dflt-expr-gen-anon.js
93
+ language/expressions/dynamic-import/eval-export-dflt-cls-anon.js
94
+ language/expressions/dynamic-import/eval-export-dflt-expr-fn-named.js
95
+ language/expressions/new.target/value-via-call.js
96
+ language/expressions/new.target/asi.js
97
+ language/expressions/new.target/unary-expr.js
98
+ language/expressions/new.target/value-via-new.js
99
+ language/expressions/new.target/value-via-reflect-apply.js
100
+ language/expressions/new.target/value-via-tagged-template.js
101
+ language/expressions/new.target/value-via-reflect-construct.js
102
+ language/expressions/new.target/value-via-fpcall.js
103
+ language/expressions/new.target/value-via-fpapply.js
104
+ language/expressions/object/__proto__-permitted-dup-shorthand.js
105
+ language/expressions/object/cpn-obj-lit-computed-property-name-from-assignment-expression-coalesce.js
106
+ language/expressions/object/cpn-obj-lit-computed-property-name-from-assignment-expression-logical-or.js
107
+ language/expressions/object/cpn-obj-lit-computed-property-name-from-await-expression.js
108
+ language/expressions/object/cpn-obj-lit-computed-property-name-from-assignment-expression-logical-and.js
109
+ language/expressions/optional-chaining/new-target-optional-call.js
110
+ language/expressions/property-accessors/S11.2.1_A4_T1.js
111
+ language/expressions/super/call-construct-invocation.js
112
+ language/expressions/super/prop-dot-obj-ref-non-strict.js
113
+ language/expressions/super/prop-dot-obj-null-proto.js
114
+ language/expressions/super/prop-expr-obj-err.js
115
+ language/expressions/super/prop-expr-obj-key-err.js
116
+ language/expressions/super/prop-expr-obj-ref-non-strict.js
117
+ language/expressions/super/prop-expr-obj-unresolvable.js
118
+ language/expressions/super/prop-expr-obj-null-proto.js
119
+ language/expressions/typeof/get-value.js
120
+ language/module-code/top-level-await/dynamic-import-rejection.js
121
+ language/module-code/top-level-await/dynamic-import-resolution.js
122
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-assignment-expression-coalesce.js
123
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-assignment-expression-logical-or.js
124
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-assignment-expression-bitwise-or.js
125
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-expression-logical-and.js
126
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-assignment-expression-assignment.js
127
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-expression-coalesce.js
128
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-await-expression.js
129
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-expression-logical-or.js
130
+ language/statements/class/cpn-class-decl-accessors-computed-property-name-from-assignment-expression-logical-and.js
131
+ language/statements/class/cpn-class-decl-computed-property-name-from-await-expression.js
132
+ language/statements/class/cpn-class-decl-computed-property-name-from-assignment-expression-coalesce.js
133
+ language/statements/class/cpn-class-decl-computed-property-name-from-assignment-expression-logical-and.js
134
+ language/statements/class/cpn-class-decl-computed-property-name-from-assignment-expression-logical-or.js
135
+ language/statements/class/cpn-class-decl-fields-computed-property-name-from-assignment-expression-coalesce.js
136
+ language/statements/class/cpn-class-decl-fields-computed-property-name-from-assignment-expression-logical-and.js
137
+ language/statements/class/cpn-class-decl-fields-computed-property-name-from-await-expression.js
138
+ language/statements/class/cpn-class-decl-fields-computed-property-name-from-assignment-expression-logical-or.js
139
+ language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-assignment-expression-logical-and.js
140
+ language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-assignment-expression-coalesce.js
141
+ language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-assignment-expression-logical-or.js
142
+ language/statements/class/cpn-class-decl-fields-methods-computed-property-name-from-await-expression.js
143
+ language/statements/continue/nested-let-bound-for-loops-outer-continue.js
144
+ language/statements/function/S13.2.2_A14.js
145
+ language/statements/function/S13.2.2_A9.js
146
+ language/statements/labeled/cptn-break.js
147
+ language/statements/try/S12.14_A17.js
148
+ language/types/object/S8.6.2_A5_T3.js
149
+ language/types/object/S8.6.2_A5_T4.js
150
+ built-ins/Array/prototype/filter/15.4.4.20-5-30.js
151
+ built-ins/Array/prototype/find/predicate-call-this-non-strict.js
152
+ built-ins/Array/prototype/findIndex/predicate-call-this-non-strict.js
153
+ built-ins/Array/prototype/findLast/predicate-call-this-non-strict.js
154
+ built-ins/Array/prototype/findLastIndex/predicate-call-this-non-strict.js
155
+ built-ins/Array/prototype/flatMap/this-value-ctor-object-species-custom-ctor-poisoned-throws.js
156
+ built-ins/Array/prototype/flatMap/this-value-ctor-object-species-custom-ctor.js
157
+ built-ins/Array/prototype/forEach/15.4.4.18-5-25.js
158
+ built-ins/Array/prototype/sort/stability-513-elements.js
159
+ built-ins/Array/prototype/sort/stability-2048-elements.js
160
+ built-ins/Function/prototype/apply/S15.3.4.3_A3_T5.js
161
+ built-ins/Function/prototype/apply/S15.3.4.3_A3_T6.js
162
+ built-ins/Function/prototype/apply/S15.3.4.3_A7_T10.js
163
+ built-ins/Function/prototype/apply/S15.3.4.3_A7_T3.js
164
+ built-ins/Function/prototype/apply/S15.3.4.3_A7_T5.js
165
+ built-ins/Function/prototype/apply/S15.3.4.3_A7_T4.js
166
+ built-ins/Function/prototype/apply/S15.3.4.3_A7_T6.js
167
+ built-ins/Function/prototype/apply/S15.3.4.3_A7_T9.js
168
+ built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget-bound.js
169
+ built-ins/Function/prototype/bind/instance-construct-newtarget-self-new.js
170
+ built-ins/Function/prototype/call/S15.3.4.4_A3_T5.js
171
+ built-ins/Function/prototype/call/S15.3.4.4_A3_T6.js
172
+ built-ins/Function/prototype/call/S15.3.4.4_A6_T10.js
173
+ built-ins/Function/prototype/call/S15.3.4.4_A6_T4.js
174
+ built-ins/Function/prototype/bind/instance-construct-newtarget-self-reflect.js
175
+ built-ins/Function/prototype/call/S15.3.4.4_A6_T5.js
176
+ built-ins/Function/prototype/call/S15.3.4.4_A6_T6.js
177
+ built-ins/Function/prototype/call/S15.3.4.4_A6_T3.js
178
+ built-ins/Function/prototype/bind/instance-construct-newtarget-boundtarget.js
179
+ built-ins/Function/prototype/call/S15.3.4.4_A6_T9.js
180
+ built-ins/Set/prototype/difference/combines-sets.js
181
+ built-ins/Set/prototype/difference/add-not-called.js
182
+ built-ins/Set/prototype/difference/allows-set-like-object.js
183
+ built-ins/Set/prototype/difference/combines-itself.js
184
+ built-ins/Set/prototype/difference/combines-same-sets.js
185
+ built-ins/Set/prototype/difference/combines-empty-sets.js
186
+ built-ins/Set/prototype/difference/allows-set-like-class.js
187
+ built-ins/Set/prototype/difference/set-like-array.js
188
+ built-ins/Set/prototype/difference/combines-Map.js
189
+ built-ins/Set/prototype/difference/set-like-class-order.js
190
+ built-ins/Set/prototype/difference/converts-negative-zero.js
191
+ built-ins/Set/prototype/intersection/allows-set-like-class.js
192
+ built-ins/Set/prototype/intersection/combines-empty-sets.js
193
+ built-ins/Set/prototype/intersection/add-not-called.js
194
+ built-ins/Set/prototype/intersection/combines-Map.js
195
+ built-ins/Set/prototype/intersection/combines-same-sets.js
196
+ built-ins/Set/prototype/intersection/combines-sets.js
197
+ built-ins/Set/prototype/intersection/allows-set-like-object.js
198
+ built-ins/Set/prototype/intersection/combines-itself.js
199
+ built-ins/Set/prototype/intersection/converts-negative-zero.js
200
+ built-ins/Set/prototype/intersection/set-like-array.js
201
+ built-ins/Set/prototype/intersection/set-like-class-order.js
202
+ built-ins/Set/prototype/symmetricDifference/allows-set-like-class.js
203
+ built-ins/Set/prototype/symmetricDifference/combines-same-sets.js
204
+ built-ins/Set/prototype/symmetricDifference/combines-itself.js
205
+ built-ins/Set/prototype/symmetricDifference/allows-set-like-object.js
206
+ built-ins/Set/prototype/symmetricDifference/add-not-called.js
207
+ built-ins/Set/prototype/symmetricDifference/converts-negative-zero.js
208
+ built-ins/Set/prototype/symmetricDifference/set-like-class-order.js
209
+ built-ins/Set/prototype/symmetricDifference/combines-sets.js
210
+ built-ins/Set/prototype/symmetricDifference/combines-Map.js
211
+ built-ins/Set/prototype/union/appends-new-values.js
212
+ built-ins/Set/prototype/union/add-not-called.js
213
+ built-ins/Set/prototype/union/allows-set-like-object.js
214
+ built-ins/Set/prototype/union/allows-set-like-class.js
215
+ built-ins/Set/prototype/symmetricDifference/set-like-array.js
216
+ built-ins/Set/prototype/union/combines-sets.js
217
+ built-ins/Set/prototype/union/combines-empty-sets.js
218
+ built-ins/Set/prototype/union/combines-itself.js
219
+ built-ins/Set/prototype/union/combines-Map.js
220
+ built-ins/Set/prototype/union/set-like-array.js
221
+ built-ins/Set/prototype/union/converts-negative-zero.js
222
+ built-ins/Set/prototype/union/set-like-class-order.js
223
+ built-ins/Set/prototype/symmetricDifference/combines-empty-sets.js
224
+ built-ins/Set/prototype/union/combines-same-sets.js
225
+ built-ins/String/prototype/match/S15.5.4.10_A1_T3.js
226
+ built-ins/Symbol/prototype/Symbol.toPrimitive/redefined-symbol-wrapper-ordinary-toprimitive.js
227
+ built-ins/Symbol/prototype/Symbol.toPrimitive/removed-symbol-wrapper-ordinary-toprimitive.js
228
+ built-ins/Temporal/Duration/compare/relativeto-propertybag-infinity-throws-rangeerror.js
229
+ built-ins/Temporal/PlainDate/compare/infinity-throws-rangeerror.js
230
+ built-ins/Temporal/PlainDate/from/infinity-throws-rangeerror.js
231
+ built-ins/Temporal/PlainDateTime/compare/infinity-throws-rangeerror.js
232
+ built-ins/Temporal/PlainDateTime/from/infinity-throws-rangeerror.js
233
+ built-ins/Temporal/PlainMonthDay/from/infinity-throws-rangeerror.js
234
+ built-ins/Temporal/PlainTime/from/infinity-throws-rangeerror.js
235
+ built-ins/Temporal/PlainYearMonth/compare/infinity-throws-rangeerror.js
236
+ built-ins/Temporal/PlainYearMonth/from/infinity-throws-rangeerror.js
237
+ built-ins/Temporal/ZonedDateTime/compare/infinity-throws-rangeerror.js
238
+ built-ins/Temporal/ZonedDateTime/from/infinity-throws-rangeerror.js
239
+ intl402/DateTimeFormat/prototype/formatRangeToParts/en-US.js
240
+ intl402/ListFormat/prototype/format/iterable-iteratorclose.js
241
+ intl402/ListFormat/prototype/formatToParts/iterable-iteratorclose.js
242
+ intl402/NumberFormat/prototype/formatToParts/signDisplay-currency-de-DE.js
243
+ intl402/RelativeTimeFormat/prototype/format/en-us-numeric-always.js
244
+ intl402/RelativeTimeFormat/prototype/format/en-us-numeric-auto.js
245
+ intl402/RelativeTimeFormat/prototype/formatToParts/en-us-numeric-auto.js
246
+ intl402/RelativeTimeFormat/prototype/formatToParts/en-us-numeric-always.js
247
+ language/expressions/dynamic-import/catch/nested-block-import-catch-file-does-not-exist.js
248
+ language/expressions/dynamic-import/catch/nested-block-import-catch-eval-rqstd-abrupt-typeerror.js
249
+ language/expressions/dynamic-import/catch/nested-block-import-catch-instn-iee-err-ambiguous-import.js
250
+ language/expressions/dynamic-import/catch/nested-block-import-catch-eval-rqstd-abrupt-urierror.js
251
+ language/expressions/dynamic-import/catch/nested-block-labeled-eval-script-code-target.js
252
+ language/expressions/dynamic-import/catch/nested-block-import-catch-eval-script-code-target.js
253
+ language/expressions/dynamic-import/catch/nested-block-labeled-instn-iee-err-ambiguous-import.js
254
+ language/expressions/dynamic-import/catch/nested-block-labeled-eval-rqstd-abrupt-urierror.js
255
+ language/expressions/dynamic-import/catch/nested-block-labeled-eval-rqstd-abrupt-typeerror.js
256
+ language/expressions/dynamic-import/catch/nested-do-while-eval-script-code-target.js
257
+ language/expressions/dynamic-import/catch/nested-block-import-catch-specifier-tostring-abrupt-rejects.js
258
+ language/expressions/dynamic-import/catch/nested-block-import-catch-instn-iee-err-circular.js
259
+ language/expressions/dynamic-import/catch/nested-do-while-eval-rqstd-abrupt-urierror.js
260
+ language/expressions/dynamic-import/catch/nested-block-labeled-instn-iee-err-circular.js
261
+ language/expressions/dynamic-import/catch/nested-block-labeled-specifier-tostring-abrupt-rejects.js
262
+ language/expressions/dynamic-import/catch/nested-block-labeled-file-does-not-exist.js
263
+ language/expressions/dynamic-import/catch/nested-do-while-file-does-not-exist.js
264
+ language/expressions/dynamic-import/catch/nested-do-while-instn-iee-err-ambiguous-import.js
265
+ language/expressions/dynamic-import/catch/nested-do-while-instn-iee-err-circular.js
266
+ language/expressions/dynamic-import/catch/nested-else-import-catch-file-does-not-exist.js
267
+ language/expressions/dynamic-import/catch/nested-else-import-catch-eval-rqstd-abrupt-urierror.js
268
+ language/expressions/dynamic-import/catch/nested-else-import-catch-eval-script-code-target.js
269
+ language/expressions/dynamic-import/catch/nested-do-while-specifier-tostring-abrupt-rejects.js
270
+ language/expressions/dynamic-import/catch/nested-if-import-catch-eval-script-code-target.js
271
+ language/expressions/dynamic-import/catch/nested-else-import-catch-instn-iee-err-circular.js
272
+ language/expressions/dynamic-import/catch/nested-if-import-catch-instn-iee-err-ambiguous-import.js
273
+ language/expressions/dynamic-import/catch/nested-else-import-catch-specifier-tostring-abrupt-rejects.js
274
+ language/expressions/dynamic-import/catch/nested-if-import-catch-file-does-not-exist.js
275
+ language/expressions/dynamic-import/catch/nested-else-import-catch-eval-rqstd-abrupt-typeerror.js
276
+ language/expressions/dynamic-import/catch/nested-do-while-eval-rqstd-abrupt-typeerror.js
277
+ language/expressions/dynamic-import/catch/nested-if-import-catch-eval-rqstd-abrupt-typeerror.js
278
+ language/expressions/dynamic-import/catch/nested-if-import-catch-instn-iee-err-circular.js
279
+ language/expressions/dynamic-import/catch/nested-else-import-catch-instn-iee-err-ambiguous-import.js
280
+ language/expressions/dynamic-import/catch/top-level-import-catch-eval-rqstd-abrupt-urierror.js
281
+ language/expressions/dynamic-import/catch/top-level-import-catch-eval-rqstd-abrupt-typeerror.js
282
+ language/expressions/dynamic-import/catch/top-level-import-catch-instn-iee-err-ambiguous-import.js
283
+ language/expressions/dynamic-import/catch/top-level-import-catch-eval-script-code-target.js
284
+ language/expressions/dynamic-import/catch/top-level-import-catch-specifier-tostring-abrupt-rejects.js
285
+ language/expressions/dynamic-import/catch/top-level-import-catch-file-does-not-exist.js
286
+ language/expressions/dynamic-import/catch/nested-if-import-catch-specifier-tostring-abrupt-rejects.js
287
+ language/expressions/dynamic-import/catch/nested-if-import-catch-eval-rqstd-abrupt-urierror.js
288
+ language/expressions/dynamic-import/catch/top-level-import-catch-instn-iee-err-circular.js
289
+ language/expressions/dynamic-import/namespace/default-property-not-set-own.js
290
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-dflt-indirect.js
291
+ language/expressions/dynamic-import/namespace/promise-then-ns-delete-exported-init-no-strict.js
292
+ language/expressions/dynamic-import/namespace/promise-then-ns-extensible.js
293
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-sym-not-found.js
294
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-str-not-found.js
295
+ language/expressions/dynamic-import/namespace/promise-then-ns-has-property-sym-found.js
296
+ language/expressions/dynamic-import/namespace/promise-then-ns-has-property-str-found-init.js
297
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-dflt-direct.js
298
+ language/expressions/dynamic-import/namespace/promise-then-ns-Symbol-toStringTag.js
299
+ language/expressions/dynamic-import/namespace/promise-then-ns-define-own-property.js
300
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-sym-found.js
301
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-sym.js
302
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-str-not-found.js
303
+ language/expressions/dynamic-import/namespace/promise-then-ns-no-iterator.js
304
+ language/expressions/dynamic-import/namespace/promise-then-ns-prototype.js
305
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-nested-namespace-props-nrml.js
306
+ language/expressions/dynamic-import/namespace/promise-then-ns-delete-non-exported-no-strict.js
307
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-own-property-str-found-init.js
308
+ language/expressions/dynamic-import/namespace/promise-then-ns-has-property-sym-not-found.js
309
+ language/expressions/dynamic-import/namespace/promise-then-ns-prevent-extensions-reflect.js
310
+ language/expressions/dynamic-import/namespace/promise-then-ns-prevent-extensions-object.js
311
+ language/expressions/dynamic-import/namespace/promise-then-ns-set-no-strict.js
312
+ language/expressions/dynamic-import/namespace/promise-then-ns-has-property-str-not-found.js
313
+ language/expressions/dynamic-import/namespace/promise-then-ns-set-prototype-of.js
314
+ language/expressions/dynamic-import/namespace/promise-then-ns-prop-descs.js
315
+ language/expressions/dynamic-import/namespace/promise-then-ns-set-prototype-of-null.js
316
+ language/expressions/dynamic-import/namespace/promise-then-ns-set-same-values-no-strict.js
317
+ language/expressions/dynamic-import/namespace/promise-then-ns-own-property-keys-sort.js
318
+ language/expressions/dynamic-import/namespace/promise-then-ns-get-str-found.js
319
+ language/expressions/dynamic-import/usage/nested-block-import-then-specifier-tostring.js
320
+ language/expressions/dynamic-import/usage/nested-block-import-then-eval-script-code-host-resolves-module-code.js
321
+ language/expressions/dynamic-import/usage/nested-do-while-specifier-tostring.js
322
+ language/expressions/dynamic-import/usage/nested-block-import-then-returns-thenable.js
323
+ language/expressions/dynamic-import/usage/nested-do-while-eval-script-code-host-resolves-module-code.js
324
+ language/expressions/dynamic-import/usage/nested-block-import-then-eval-gtbndng-indirect-update-dflt.js
325
+ language/expressions/dynamic-import/usage/nested-else-import-then-is-call-expression-square-brackets.js
326
+ language/expressions/dynamic-import/usage/nested-do-while-eval-gtbndng-indirect-update.js
327
+ language/expressions/dynamic-import/usage/nested-block-import-then-eval-gtbndng-indirect-update.js
328
+ language/expressions/dynamic-import/usage/nested-block-import-then-is-call-expression-square-brackets.js
329
+ language/expressions/dynamic-import/usage/nested-else-import-then-eval-script-code-host-resolves-module-code.js
330
+ language/expressions/dynamic-import/usage/nested-do-while-is-call-expression-square-brackets.js
331
+ language/expressions/dynamic-import/usage/nested-else-import-then-eval-gtbndng-indirect-update-dflt.js
332
+ language/expressions/dynamic-import/usage/nested-if-braceless-eval-gtbndng-indirect-update-dflt.js
333
+ language/expressions/dynamic-import/usage/nested-else-import-then-eval-gtbndng-indirect-update.js
334
+ language/expressions/dynamic-import/usage/nested-if-braceless-specifier-tostring.js
335
+ language/expressions/dynamic-import/usage/nested-else-import-then-returns-thenable.js
336
+ language/expressions/dynamic-import/usage/nested-if-braceless-eval-script-code-host-resolves-module-code.js
337
+ language/expressions/dynamic-import/usage/nested-if-braceless-eval-gtbndng-indirect-update.js
338
+ language/expressions/dynamic-import/usage/nested-if-import-then-specifier-tostring.js
339
+ language/expressions/dynamic-import/usage/nested-do-while-eval-gtbndng-indirect-update-dflt.js
340
+ language/expressions/dynamic-import/usage/nested-if-import-then-is-call-expression-square-brackets.js
341
+ language/expressions/dynamic-import/usage/nested-if-braceless-returns-thenable.js
342
+ language/expressions/dynamic-import/usage/nested-if-import-then-eval-gtbndng-indirect-update-dflt.js
343
+ language/expressions/dynamic-import/usage/nested-if-import-then-returns-thenable.js
344
+ language/expressions/dynamic-import/usage/nested-if-braceless-is-call-expression-square-brackets.js
345
+ language/expressions/dynamic-import/usage/nested-if-import-then-eval-script-code-host-resolves-module-code.js
346
+ language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-gtbndng-indirect-update-dflt.js
347
+ language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-gtbndng-indirect-update.js
348
+ language/expressions/dynamic-import/usage/nested-if-import-then-eval-gtbndng-indirect-update.js
349
+ language/expressions/dynamic-import/usage/syntax-nested-block-labeled-returns-thenable.js
350
+ language/expressions/dynamic-import/usage/top-level-import-then-returns-thenable.js
351
+ language/expressions/dynamic-import/usage/syntax-nested-block-labeled-eval-script-code-host-resolves-module-code.js
352
+ language/expressions/dynamic-import/usage/syntax-nested-block-labeled-is-call-expression-square-brackets.js
353
+ language/expressions/dynamic-import/usage/top-level-import-then-eval-script-code-host-resolves-module-code.js
354
+ language/expressions/dynamic-import/usage/top-level-import-then-eval-gtbndng-indirect-update-dflt.js
355
+ language/expressions/dynamic-import/usage/top-level-import-then-specifier-tostring.js
356
+ language/expressions/dynamic-import/usage/top-level-import-then-is-call-expression-square-brackets.js
357
+ language/expressions/dynamic-import/usage/syntax-nested-block-labeled-specifier-tostring.js
358
+ language/expressions/dynamic-import/usage/top-level-import-then-eval-gtbndng-indirect-update.js
359
+ language/expressions/dynamic-import/usage/nested-do-while-returns-thenable.js
360
+ language/expressions/dynamic-import/usage/nested-else-import-then-specifier-tostring.js
361
+ staging/Intl402/Temporal/old/duration-arithmetic-dst.js
362
+ staging/Intl402/Temporal/old/japanese-era.js
363
+ staging/Intl402/Temporal/old/monthday-toLocaleString.js
364
+ staging/Intl402/Temporal/old/date-toLocaleString.js
365
+ staging/Intl402/Temporal/old/yearmonth-toLocaleString.js
366
+ staging/Temporal/Duration/old/limits.js
367
+ staging/Intl402/Temporal/old/instant-toLocaleString.js
368
+ staging/Intl402/Temporal/old/tzdb-string-parsing.js
369
+ staging/Temporal/Instant/old/add.js
370
+ staging/Temporal/TimeZone/old/dst-change.js
371
+ staging/Temporal/Instant/old/since.js
372
+ staging/Temporal/Instant/old/until.js
373
+ staging/Temporal/ZonedDateTime/old/add.js
374
+ staging/Temporal/ZonedDateTime/old/dst-properties.js
375
+ staging/Temporal/ZonedDateTime/old/subtract.js
376
+ staging/Temporal/ZonedDateTime/old/string-parsing.js
377
+ staging/Temporal/ZonedDateTime/old/reversibility-of-differences.js
378
+ staging/Temporal/ZonedDateTime/old/dst-math.js
379
+ staging/Temporal/ZonedDateTime/old/with.js
380
+ staging/Intl402/Temporal/old/non-iso-calendars.js
381
+ built-ins/Temporal/Calendar/prototype/dateAdd/date-infinity-throws-rangeerror.js
382
+ built-ins/Temporal/Calendar/prototype/dateFromFields/infinity-throws-rangeerror.js
383
+ built-ins/Temporal/Calendar/prototype/dateUntil/argument-infinity-throws-rangeerror.js
384
+ built-ins/Temporal/Calendar/prototype/day/infinity-throws-rangeerror.js
385
+ built-ins/Temporal/Calendar/prototype/dayOfWeek/infinity-throws-rangeerror.js
386
+ built-ins/Temporal/Calendar/prototype/dayOfYear/infinity-throws-rangeerror.js
387
+ built-ins/Temporal/Calendar/prototype/daysInMonth/infinity-throws-rangeerror.js
388
+ built-ins/Temporal/Calendar/prototype/daysInWeek/infinity-throws-rangeerror.js
389
+ built-ins/Temporal/Calendar/prototype/daysInYear/infinity-throws-rangeerror.js
390
+ built-ins/Temporal/Calendar/prototype/inLeapYear/infinity-throws-rangeerror.js
391
+ built-ins/Temporal/Calendar/prototype/month/infinity-throws-rangeerror.js
392
+ built-ins/Temporal/Calendar/prototype/monthCode/infinity-throws-rangeerror.js
393
+ built-ins/Temporal/Calendar/prototype/monthDayFromFields/infinity-throws-rangeerror.js
394
+ built-ins/Temporal/Calendar/prototype/monthsInYear/infinity-throws-rangeerror.js
395
+ built-ins/Temporal/Calendar/prototype/weekOfYear/infinity-throws-rangeerror.js
396
+ built-ins/Temporal/Calendar/prototype/year/infinity-throws-rangeerror.js
397
+ built-ins/Temporal/Calendar/prototype/yearMonthFromFields/infinity-throws-rangeerror.js
398
+ built-ins/Temporal/Calendar/prototype/yearOfWeek/infinity-throws-rangeerror.js
399
+ built-ins/Temporal/Duration/prototype/round/relativeto-infinity-throws-rangeerror.js
400
+ built-ins/Temporal/Duration/prototype/total/relativeto-infinity-throws-rangeerror.js
401
+ built-ins/Temporal/PlainDate/prototype/equals/infinity-throws-rangeerror.js
402
+ built-ins/Temporal/PlainDate/prototype/since/infinity-throws-rangeerror.js
403
+ built-ins/Temporal/PlainDate/prototype/until/infinity-throws-rangeerror.js
404
+ built-ins/Temporal/PlainDate/prototype/with/infinity-throws-rangeerror.js
405
+ built-ins/Temporal/PlainDateTime/prototype/equals/infinity-throws-rangeerror.js
406
+ built-ins/Temporal/PlainDateTime/prototype/since/infinity-throws-rangeerror.js
407
+ built-ins/Temporal/PlainDateTime/prototype/until/infinity-throws-rangeerror.js
408
+ built-ins/Temporal/PlainDateTime/prototype/with/infinity-throws-rangeerror.js
409
+ built-ins/Temporal/PlainMonthDay/prototype/equals/infinity-throws-rangeerror.js
410
+ built-ins/Temporal/PlainTime/prototype/with/infinity-throws-rangeerror.js
411
+ built-ins/Temporal/PlainYearMonth/prototype/equals/infinity-throws-rangeerror.js
412
+ built-ins/Temporal/PlainYearMonth/prototype/since/infinity-throws-rangeerror.js
413
+ built-ins/Temporal/PlainYearMonth/prototype/until/infinity-throws-rangeerror.js
414
+ built-ins/Temporal/PlainYearMonth/prototype/with/infinity-throws-rangeerror.js
415
+ built-ins/Temporal/TimeZone/prototype/getInstantFor/infinity-throws-rangeerror.js
416
+ built-ins/Temporal/TimeZone/prototype/getPossibleInstantsFor/infinity-throws-rangeerror.js
417
+ built-ins/Temporal/ZonedDateTime/prototype/equals/infinity-throws-rangeerror.js
418
+ built-ins/Temporal/ZonedDateTime/prototype/since/infinity-throws-rangeerror.js
419
+ built-ins/Temporal/ZonedDateTime/prototype/until/infinity-throws-rangeerror.js
420
+ built-ins/Temporal/ZonedDateTime/prototype/with/infinity-throws-rangeerror.js
421
+ language/expressions/object/method-definition/forbidden-ext/b2/meth-forbidden-ext-indirect-access-own-prop-caller-get.js
422
+ language/expressions/object/method-definition/forbidden-ext/b2/meth-forbidden-ext-indirect-access-prop-caller.js
423
+ language/expressions/object/method-definition/forbidden-ext/b2/meth-forbidden-ext-indirect-access-own-prop-caller-value.js