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/assemble.js +21 -2
- package/compiler/builtins/_internal_object.ts +45 -2
- package/compiler/builtins/reflect.ts +132 -0
- package/compiler/codegen.js +46 -15
- package/compiler/generated_builtins.js +70 -11
- package/compiler/havoc.js +25 -0
- package/compiler/pgo.js +33 -4
- package/package.json +1 -1
- package/runner/index.js +1 -1
- package/tmp.txt +423 -0
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
|
-
|
14
|
-
|
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
package/runner/index.js
CHANGED
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
|