v8/test/mjsunit
Leszek Swirski dc92fe0931 [maglev] Fix result regalloc clobbering inputs
Consider the following

  * A ValueNode has inputs A and B
  * Input A has later uses, input B doesn't
  * The ValueNode's result must be in the same register as A

It can then happen that UpdateUses frees B, and the result allocation
emits a gap move from A's register to B's old register (now free) to
preserve the value of A when the ValueNode writes into its register.
This gap move is emmitted before the ValueNode start, which means that
it clobbers B.

Now, UpdateUses only clears registers _after_ node result allocation, so
that the known free registers are still the ones before updating uses.

Done naively, this would have bad consequences -- in the case where A
has no later uses, it would still force the regalloc to save its value
thinking that it is still live. So, this patch also introduces a concept
of "AllocationStage" where we're either allocating at the start or end
of a Node. Inputs are allocated at the start, results at the end. When
walking registers during an allocation, nodes whose lifetimes end at the
current node are considered to be dead at the "end" allocation stage,
and we are allowed to a) use their registers, and b) drop them without
preserving their value.

Bug: v8:7700
Change-Id: I5ca764ed04b12269f189577e81eb7e2a27cd1b09
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3625978
Auto-Submit: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Commit-Queue: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/main@{#80371}
2022-05-05 13:07:16 +00:00
..
asm Reland "[asm] Reject import calls with too many parameters" 2022-03-09 15:46:32 +00:00
async-hooks
baseline [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
bugs
compiler [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
d8 [deserialize] add error object to id_map_ when deserialize 2022-02-22 10:21:11 +00:00
es6 [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
es7 [parser] Disallow await on LHS of exponentiation 2020-12-01 15:34:41 +00:00
es8 [runtime] Fix global_dictionary case in SetOrCopyDataProperties 2020-10-06 12:27:15 +00:00
es9 [runtime] Prevent performing GetOwnPropertyDescriptor on excluded keys 2021-08-09 14:27:41 +00:00
extinction [extinction] Add builtin-subclassing flag and support in Array.{from,of} 2020-12-04 19:35:50 +00:00
harmony [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
ignition [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
lithium
maglev [maglev] Fix result regalloc clobbering inputs 2022-05-05 13:07:16 +00:00
protector-cell [runtime] Use instance type checks in LookupIterator::UpdateProtector 2020-12-16 17:56:10 +00:00
regress [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
shared-memory Plumb Isolate through own property enumeration functions 2022-04-25 22:54:22 +00:00
temporal [Temporal] Add Duration.prototype.(abs|negated) 2022-03-26 22:15:14 +00:00
third_party
tools [ic] name Set/Define/Store property operations more consistently 2022-03-08 18:48:16 +00:00
turboshaft [turboshaft] initial commit 2022-04-25 09:12:15 +00:00
type-profile
wasm [wasm] Fix stack-switching import wrapper return 2022-04-27 10:19:01 +00:00
web-snapshot Revert "[web snapshot] Add support for object with dictionary mode" 2022-05-05 12:33:29 +00:00
accessor-map-sharing.js
accessors-no-prototype.js
accessors-on-global-object.js
allocation-folding.js
allocation-site-info.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
api-call-after-bypassed-exception.js
apply-arguments-gc-safepoint.js
apply.js
argument-assigned.js
argument-named-arguments.js
arguments-apply-deopt.js
arguments-apply.js
arguments-call-apply.js
arguments-deopt.js
arguments-enum.js
arguments-escape.js
arguments-indirect.js
arguments-lazy.js
arguments-load-across-eval.js
arguments-read-and-assignment.js
arguments.js
array-bounds-check-removal.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-concat.js [mjsunit] Check array length in array-concat 2020-10-29 09:33:56 +00:00
array-construct-transition.js
array-constructor-feedback.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-constructor.js
array-elements-from-array-prototype-chain.js
array-elements-from-array-prototype.js
array-elements-from-object-prototype.js
array-feedback.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-foreach.js
array-from-large-set.js
array-functions-prototype-misc.js
array-functions-prototype.js
array-indexing-receiver.js
array-indexing.js
array-isarray.js
array-iteration.js
array-iterator-prototype-next.js
array-join-element-tostring-prototype-side-effects.js
array-join-element-tostring-side-effects.js
array-join-index-getter-side-effects.js
array-join-invalid-string-length.js
array-join-nesting.js
array-join-nonarray-length-getter-side-effects.js
array-join-separator-tostring-side-effects.js
array-join.js
array-lastindexof.js
array-length-number-conversion.js
array-length.js
array-literal-feedback.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-literal-transitions.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-methods-read-only-length.js
array-natives-elements.js
array-non-smi-length.js
array-pop.js
array-prototype-every.js
array-prototype-filter.js
array-prototype-find.js
array-prototype-findindex.js
array-prototype-foreach.js
array-prototype-includes.js
array-prototype-indexof.js
array-prototype-lastindexof.js
array-prototype-map.js
array-prototype-pop.js
array-prototype-reduce.js
array-prototype-slice.js
array-prototype-some.js
array-push2.js
array-push3.js
array-push4.js
array-push5.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-push6.js
array-push8.js
array-push9.js
array-push10.js
array-push11.js
array-push12.js
array-push13.js
array-push14.js
array-push-hole-double.js
array-push-non-smi-value.js
array-push.js
array-reduce.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-reverse.js
array-shift2.js
array-shift3.js
array-shift4.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-shift5.js
array-shift.js
array-slice.js
array-sort.js [language] Fix Array.prototype.sort 2021-03-24 11:20:58 +00:00
array-splice.js
array-store-and-grow.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
array-tolocalestring.js
array-tostring.js
array-unshift.js
arrow-with.js
ascii-regexp-subject.js
asm-directive.js
async-stack-traces-prepare-stacktrace-1.js
async-stack-traces-prepare-stacktrace-2.js
async-stack-traces-prepare-stacktrace-3.js
async-stack-traces-prepare-stacktrace-4.js
async-stack-traces-promise-all-settled.js [runtime] Add async-stack-trace support for Promise.allSettled 2022-03-26 12:04:24 +00:00
async-stack-traces-promise-all.js
async-stack-traces-promise-any.js [flags] Remove --harmony-promise-any 2020-11-12 01:09:38 +00:00
async-stack-traces-realms.js
async-stack-traces.js
basic-promise.js
big-array-literal.js
big-object-literal.js
binary-op-newspace.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
binary-operation-overwrite.js
bit-not.js
bitops-info.js
bitwise-operations-bools.js
bitwise-operations-undefined.js
body-not-visible.js
bool-concat.js
boolean.js
bounds-checks-elimination.js
break.js
BUILD.gn [clusterfuzz] Split directory structure 2022-02-07 15:38:46 +00:00
call-cross-realm.js
call-intrinsic-differential-fuzzing.js [Respect] Rename lists 2020-06-22 15:15:31 +00:00
call-intrinsic-fuzzing.js [Respect] Rename lists 2020-06-22 15:15:31 +00:00
call-intrinsic-type-error.js
call-lhs-web-compat-early-errors.js [logical assignment] Disallow foo() &&= 1 etc 2020-09-24 08:17:17 +00:00
call-non-function-call.js
call-non-function.js
call-stub.js
call.js
char-escape.js
check-bounds-array-index.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
check-bounds-string-from-char-code-at.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
closure.js
closures.js
code-comments.js
code-coverage-ad-hoc.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
code-coverage-block-async.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
code-coverage-block-noopt.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
code-coverage-block-opt.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
code-coverage-block.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
code-coverage-class-fields.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
code-coverage-precise.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
code-coverage-utils.js
codegen-coverage.js
collect-type-profile-undefined-feedback-vector.js
compare-character.js
compare-known-objects-slow.js
compare-known-objects-tostringtag.js
compare-known-objects.js
compare-nan.js
compare-nil.js
compare-objects.js
compare-table-eq.js
compare-table-gt.js
compare-table-gteq.js
compare-table-lt.js
compare-table-lteq.js
compare-table-ne.js
compare-table-seq.js
compare-table-sne.js
comparison-ops-and-undefined.js
compiler-regress-787301.js
concurrent-initial-prototype-change-1.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
concurrent-initial-prototype-change-2.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
console.js
const-dict-tracking.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
const-field-tracking.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
constant-compare-nil-value.js
constant-fold-control-instructions.js [interpreter] Remove unused interpreter intrinsics 2021-06-17 13:43:41 +00:00
constant-folding-2.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
constant-folding.js
context-calls-maintained.js
context-variable-assignments.js
contextual-calls.js
copy-on-write-assert.js
cross-realm-builtin-call.js
cross-realm-filtering.js
cross-realm-global-prototype.js
cyclic-array-to-string.js
cyrillic.js
dataview-growablesharedarraybuffer.js Reland [rab/gsab] Add RAB / GSAB support to DataViews 2021-11-23 16:48:54 +00:00
dataview-resizablearraybuffer-detach.js Reland [rab/gsab] Add RAB / GSAB support to DataViews 2021-11-23 16:48:54 +00:00
dataview-resizablearraybuffer.js Reland [rab/gsab] Add RAB / GSAB support to DataViews 2021-11-23 16:48:54 +00:00
date-parse.js
date.js
debugPrint.js Reland "[heap-stats] Fix heap-stats with ptr-cage" 2022-02-16 14:55:43 +00:00
declare-locally.js
deep-recursion.js
default-nospec.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
define-property-gc.js
dehoisted-array-index.js
delay-syntax-error.js
delete-global-properties.js
delete-in-eval.js
delete-in-with.js
delete-non-configurable.js
delete-vars-from-eval.js
delete.js
deopt-global-accessor.js
deopt-minus-zero.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
deopt-recursive-eager-once.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
deopt-recursive-lazy-once.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
deopt-recursive-soft-once.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
deopt-unlinked.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
deopt-with-fp-regs.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
deopt-with-outer-context.js
deserialize-optimize-inner.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
deserialize-reference.js
destruct-array-spread-done.js Add iterator done check in spread destructuring 2020-09-25 19:08:17 +00:00
detach-twice.js
dictionary-properties.js [dict-proto] Constness tracking of dictionary properties (jitless) 2021-02-04 11:42:33 +00:00
dictionary-prototypes.js [dict-proto] Constness tracking of dictionary properties (jitless) 2021-02-04 11:42:33 +00:00
disallow-codegen-from-strings.js
div-mod.js
div-mul-minus-one.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
do-not-strip-fc.js
dont-enum-array-holes.js
dont-reinit-global-var.js
double-equals.js
double-truncation.js
dtoa.js
dump-counters-quit.js [d8] Do not delete counters on quit 2021-12-03 11:55:46 +00:00
dump-counters.js [d8] Fix data race in counter creation, update, and disposal 2021-12-01 16:41:09 +00:00
duplicate-parameters.js
eagerly-parsed-lazily-compiled-functions.js
element-accessor.js Make TypedArray elements configurable 2021-01-07 17:10:04 +00:00
element-read-only.js
elements-kind-depends.js
elements-kind.js [test] Make test work with deopt fuzzer 2020-08-07 12:54:16 +00:00
elements-length-no-holey.js
elements-transition-and-store.js
elements-transition-hoisting.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
elements-transition.js
elide-double-hole-check-1.js
elide-double-hole-check-2.js
elide-double-hole-check-3.js
elide-double-hole-check-4.js
elide-double-hole-check-5.js
elide-double-hole-check-6.js
elide-double-hole-check-7.js
elide-double-hole-check-8.js
elide-double-hole-check-9.js
elide-double-hole-check-10.js
elide-double-hole-check-11.js
elide-double-hole-check-12.js
empirical_max_arraybuffer.js
ensure-growing-store-learns.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
enumeration-order.js
error-accessors.js
error-constructors.js
error-stack.js
error-tostring-omit.js
error-tostring.js
escape.js Avoid using "<<<<" for better merge conflict grep support 2021-11-05 16:28:59 +00:00
eval-enclosing-function-name.js
eval-origin.js
eval-stack-trace.js
eval-typeof-non-existing.js
eval.js
expose-cputracemark.js
external-array.js [builtins] TypedArray.prototype.set with number 2021-09-02 00:06:23 +00:00
external-backing-store-gc.js
extra-arguments.js
extra-commas.js
fast-array-length.js
fast-element-smi-check.js
fast-literal.js
fast-non-keyed.js
fast-prototype.js [dict-proto] Constness tracking of dictionary properties (jitless) 2021-02-04 11:42:33 +00:00
field-representation-tracking-clone-object.js
field-representation-tracking.js [runtime] Remove --modify-field-representation-inplace flag 2020-11-12 13:44:15 +00:00
field-type-tracking.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
filter-element-kinds.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
fixed-context-shapes-when-recompiling.js Revert "[turbofan] Making OSR concurrent" 2022-02-21 14:02:43 +00:00
for-in-delete.js
for-in-null-or-undefined.js
for-in-special-cases.js
for-in.js
for-of-in-catch-duplicate-decl.js
for.js
frozen-array-reduce.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
fun-as-prototype.js
fun-name.js
function-arguments-duplicate.js
function-arguments-null.js
function-bind-name.js
function-bind.js
function-call.js
function-caller.js
function-length-accessor.js
function-name-eval-shadowed.js
function-named-self-reference.js
function-names.js
function-property.js
function-prototype.js
function-var.js
function-without-prototype.js
function.js
fuzz-accessors.js
generated-transition-stub.js
get-own-property-descriptor-non-objects.js
get-own-property-descriptor.js
get-prototype-of.js
getter-in-prototype.js
getter-in-value-prototype.js
getters-on-elements.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
global-accessors.js
global-arrow-delete-this.js
global-deleted-property-ic.js
global-hash.js
global-ic.js
global-infinity-strict.js
global-infinity.js
global-load-from-eval-in-with.js
global-load-from-eval.js
global-load-from-nested-eval.js
global-load-with-proxy.js
global-nan-strict.js
global-nan.js
global-properties.js
global-prototypes.js
global-proxy-globalThis.js
global-proxy-this.js
global-undefined-strict.js
global-undefined.js
global-vars-eval.js
global-vars-with.js
globals.js [compiler] Disable some tests on NCI 2020-11-16 10:31:47 +00:00
handle-count-ast.js
handle-count-runtime-literals.js
has-own-property-evaluation-order.js
has-own-property.js
hash-code.js
heapObjectVerify.js
hex-parsing.js
holy-double-no-arg-array.js
html-comments.js
html-string-funcs.js
ic-lookup-on-receiver.js
ic-megadom-2.js Reland "[ic] Add a new MegaDOM IC" 2021-04-20 07:36:26 +00:00
ic-megadom.js Reland "[ic] Add a new MegaDOM IC" 2021-04-20 07:36:26 +00:00
ic-migrated-map-add-when-monomorphic.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
ic-migrated-map-add-when-uninitialized.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
ic-migrated-map-update-when-deprecated.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
icu-date-lord-howe.js
icu-date-to-string.js
if-in-undefined.js
immutable-context-slot-inlining.js
in.js
indexed-accessors.js
indexed-value-properties.js
induction-variable-turbofan.js
instanceof-2.js
instanceof.js
int32-ops.js
integer-to-string.js
integrity-level-map-update.js
interrupt-budget-override.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
intl-numberformat-formattoparts.js
intl-pluralrules-select.js
invalid-lhs.js
invalid-source-element.js
json2.js Revert "[objects] Remove MakeExternal case for uncached internal strings" 2021-01-15 20:57:04 +00:00
json-errors.js
json-parse-slice.js
json-parser-recursive.js [test] Lower the stack size & iterations on JSON test 2021-07-29 08:07:48 +00:00
json-replacer-number-wrapper-tostring.js
json-replacer-order.js
json-stringify-holder.js
json-stringify-recursive.js
json-stringify-stack.js
json-stringify-typedarray.js
json.js [json] Fix stringifier gap length above maxint 2021-09-20 15:34:36 +00:00
keyed-array-call.js
keyed-call-generic.js
keyed-call-ic.js
keyed-has-ic-module-export.mjs
keyed-has-ic-module-import.mjs
keyed-has-ic.js
keyed-ic.js
keyed-load-dictionary-stub.js
keyed-load-generic.js
keyed-load-hole-to-undefined.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
keyed-load-null-receiver.js
keyed-load-with-string-key.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
keyed-load-with-symbol-key.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
keyed-named-access.js
keyed-storage-extend.js
keyed-store-array-literal.js
keyed-store-generic.js
keywords-and-reserved_words.js
large-object-allocation.js
large-object-literal-2.js
large-object-literal-slow-elements.js
large-object-literal.js
lazy-inner-functions.js
lazy-load.js
lea-add.js
leakcheck.js
length.js
linecontinuation.js
load_poly_effect.js
load-callback-from-value-classic.js
local-load-from-eval.js
logical.js
lookup-behind-property.js
math-abs.js
math-ceil.js
math-deopt.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
math-exp-precision.js
math-floor-negative.js
math-floor-of-div-minus-zero.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
math-floor-of-div-nosudiv.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
math-floor-of-div.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
math-floor-part1.js
math-floor-part2.js
math-floor-part3.js
math-floor-part4.js
math-imul.js
math-min-max.js [interpreter] Remove unused interpreter intrinsics 2021-06-17 13:43:41 +00:00
math-pow.js
math-round.js
math-sqrt.js
md5.js
measure-memory-multiple-realms.js [d8][mjsunit][tools] Improve d8 file API 2021-06-01 13:37:57 +00:00
measure-memory.js [d8][mjsunit][tools] Improve d8 file API 2021-06-01 13:37:57 +00:00
megamorphic-callbacks.js
messages.js Include count value to InvalidCountValue error message 2022-04-27 06:32:35 +00:00
migrations.js [runtime] Cleanup: we don't need field representation tracking flags 2021-07-14 09:15:01 +00:00
mjsunit_numfuzz.js
mjsunit-assertion-error.js
mjsunit.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
mjsunit.status Skip mjsunit/turboshaft/simple on numfuzz until flake is solved 2022-05-05 12:34:33 +00:00
mod-range.js
mod.js
modules-circular-valid.mjs
modules-cycle.mjs
modules-default-name1.mjs
modules-default-name2.mjs
modules-default-name3.mjs
modules-default-name4.mjs
modules-default-name5.mjs
modules-default-name6.mjs
modules-default-name7.mjs
modules-default-name8.mjs
modules-default-name9.mjs
modules-default.mjs
modules-empty-import1.mjs
modules-empty-import2.mjs
modules-empty-import3.mjs
modules-empty-import4.mjs
modules-error-trace.mjs
modules-export-star-as1.mjs
modules-export-star-as2.mjs
modules-export-star-as3.mjs
modules-exports1.mjs
modules-exports2.mjs
modules-exports3.mjs
modules-import-meta-turbo.mjs [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
modules-imports1.mjs
modules-imports2.mjs
modules-imports3.mjs
modules-imports4.mjs
modules-imports5.mjs
modules-imports6.mjs
modules-imports7.mjs
modules-imports8.mjs
modules-init1.mjs
modules-init2.mjs
modules-init3.mjs
modules-init4.mjs
modules-namespace1.mjs
modules-namespace2.mjs
modules-namespace3.mjs
modules-namespace4.mjs
modules-namespace-getownproperty1.mjs
modules-namespace-getownproperty2.mjs
modules-preparse.mjs
modules-relative-path.mjs
modules-reset.js [d8] Exit with error code upon unhandled promise rejection 2020-06-24 07:21:58 +00:00
modules-skip-1.mjs
modules-skip-2.mjs
modules-skip-3.mjs
modules-skip-4.mjs
modules-skip-5.mjs
modules-skip-6.mjs
modules-skip-7.mjs
modules-skip-8.mjs
modules-skip-9.mjs
modules-skip-circular-valid.mjs
modules-skip-cycle.mjs
modules-skip-default-name1.mjs
modules-skip-default-name2.mjs
modules-skip-default-name3.mjs
modules-skip-default-name4.mjs
modules-skip-default-name5.mjs
modules-skip-default-name6.mjs
modules-skip-default-name7.mjs
modules-skip-default-name8.mjs
modules-skip-default-name9.mjs
modules-skip-empty-import-aux.mjs
modules-skip-empty-import.mjs
modules-skip-import-meta-export.mjs [turbofan] Optimize import.meta 2020-07-15 15:41:11 +00:00
modules-skip-init1.mjs
modules-skip-init3.mjs
modules-skip-init4a.mjs
modules-skip-init4b.mjs
modules-skip-namespace.mjs
modules-skip-reset1.js
modules-skip-reset2.js
modules-skip-reset3.js
modules-skip-star-exports-conflict.mjs
modules-skip-star-exports-cycle.mjs
modules-star-exports-cycle.mjs
modules-this.mjs
modules-turbo1.mjs [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
modules-turbo2.mjs
mul-exhaustive-part1.js
mul-exhaustive-part2.js
mul-exhaustive-part3.js
mul-exhaustive-part4.js
mul-exhaustive-part5.js
mul-exhaustive-part6.js
mul-exhaustive-part7.js
mul-exhaustive-part8.js
mul-exhaustive-part9.js
mul-exhaustive-part10.js
multiline.js
multiple-return.js
nans.js
negate-zero.js
negate.js
never-optimize.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
new-function.js
new.js
newline-in-string.js
no-branch-elimination.js
no-octal-constants-above-256.js
no-semicolon.js
non-ascii-replace.js
non-extensible-array-reduce.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
noopt.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
not.js
nul-characters.js
number-is.js
number-isnan-opt.js
number-limits.js
number-literal.js
number-string-index-call.js
number-tostring-add.js
number-tostring-big-integer.js
number-tostring-func.js
number-tostring-small.js
number-tostring-subnormal.js
number-tostring.js
numops-fuzz-part1.js
numops-fuzz-part2.js
numops-fuzz-part3.js
numops-fuzz-part4.js
obj-construct.js
object-create.js
object-define-properties.js
object-define-property.js
object-freeze-global.js
object-freeze.js
object-get-own-property-names.js
object-is.js
object-keys-typedarray.js
object-keys.js
object-literal-conversions.js
object-literal-gc.js
object-literal-modified-object-prototype.js
object-literal-multiple-fields.js
object-literal-multiple-proto-fields.js
object-literal-overwrite.js
object-literal.js
object-prevent-extensions.js
object-seal-global.js
object-seal.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
object-toprimitive.js
object-tostring-builtins.js Reland "[builtins] Clean up the use of class_name / ES5 [[Class]]" 2020-04-24 11:46:43 +00:00
omit-constant-mapcheck.js
opt-elements-kind.js
optimized-array-every.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-array-find.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-array-findindex.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-array-some.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-filter.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-foreach-holey-2.js
optimized-foreach-holey-3.js
optimized-foreach-holey.js
optimized-foreach-polymorph.js
optimized-foreach.js
optimized-includes-polymorph.js
optimized-map.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-reduce.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-reduceright.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-string-includes.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
optimized-typeof.js
osr-elements-kind.js Revert "[turbofan] Making OSR concurrent" 2022-02-21 14:02:43 +00:00
outobject-double-for-in.js
override-read-only-property.js
packed-elements.js
parallel-compile-tasks.js [compiler-dispatcher] Enqueue tasks for non-eager inner funcs 2021-12-01 13:14:09 +00:00
parse-int-float.js
parse-surrogates.js
pixel-array-rounding.js
polymorph-arrays.js
prepare-missing-label-syntax-error.js
preparse-toplevel-strict-eval.js
primitive-keyed-access.js
print.js
promise-hooks.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
promise-perform-all-resolve-lookup.js [d8] Exit with error code upon unhandled promise rejection 2020-06-24 07:21:58 +00:00
promise-perform-all-settled-resolve-lookup.js [flags] Remove --harmony-promise-all-settled 2020-11-03 19:34:42 +00:00
promise-perfrom-race-resolve-lookup.js
property-load-across-eval.js
property-name-eval-arguments.js
property-object-key.js
proto-accessor-not-accessible.js [test] Add a test for surprising __proto__ behavior 2021-03-12 09:18:17 +00:00
proto-accessor.js
proto-elements-add-during-foreach.js
proto.js
prototype-arity.js [Respect] Rename lists 2020-06-22 15:15:31 +00:00
prototype-changes.js
prototype-non-existing.js
prototype.js
proxy-super-return-define-property-trap.js [class] handle existing readonly properties in StoreOwnIC 2022-01-18 09:22:47 +00:00
random-bit-correlations.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
readonly-accessor.js
readonly.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
realm-property-access.js
receiver-in-with-calls.js
recursive-store-opt.js
regexp-backtrack-limit.js [regexp] Use experimental engine if backtrack limit exceeded 2020-10-14 11:18:37 +00:00
regexp-cache-replace.js
regexp-call-as-function.js
regexp-capture-3.js
regexp-capture.js
regexp-captures.js
regexp-compile.js
regexp-experimental.js [regexp] Add 'l' flag to force experimental engine 2020-10-30 08:33:06 +00:00
regexp-fallback-large-default.js [regexp] Use experimental engine if backtrack limit exceeded 2020-10-14 11:18:37 +00:00
regexp-fallback.js [regexp] Use experimental engine if backtrack limit exceeded 2020-10-14 11:18:37 +00:00
regexp-global.js
regexp-indexof.js
regexp-lastIndex.js
regexp-linear-flag.js [regexp] Implement the /d flag for RegExp indices 2021-01-26 04:14:10 +00:00
regexp-lookahead.js
regexp-loop-capture.js
regexp-multiline.js
regexp-no-linear-flag.js [regexp] Implement the /d flag for RegExp indices 2021-01-26 04:14:10 +00:00
regexp-override-exec.js
regexp-override-symbol-match-all.js
regexp-override-symbol-match.js
regexp-override-symbol-replace.js
regexp-override-symbol-search.js
regexp-override-symbol-split.js
regexp-regexpexec.js
regexp-results-cache.js
regexp-sort.js
regexp-stack-overflow.js
regexp-standalones.js
regexp-static.js
regexp-string-methods.js
regexp-tier-up-multiple.js [regexp] Support some non-trivial EXPERIMENTAL patterns 2020-08-31 11:09:43 +00:00
regexp-tier-up.js [regexp] Support some non-trivial EXPERIMENTAL patterns 2020-08-31 11:09:43 +00:00
regexp-UC16.js
regexp.js [regexp] Early errors 🤯 2021-08-26 11:33:39 +00:00
regress-10782.js Fix for Issue 10782: Bug in semantics of ArraySetLength. 2021-04-13 16:31:13 +00:00
regress-1065094.js
regress-1120905.js [test] Don't flush code for another flaky optimization test 2021-10-27 19:00:19 +00:00
regress-1146106.js [compiler] Remove support for --no-concurrent-inlining 2022-01-17 11:29:48 +00:00
regress-crbug-1078825.js [d8][mjsunit][tools] Improve d8 file API 2021-06-01 13:37:57 +00:00
reindexing-in-classes.js
resizablearraybuffer-growablesharedarraybuffer.js Reland [rab/gsab] Add RAB / GSAB support to DataViews 2021-11-23 16:48:54 +00:00
result-table-max.js
result-table-min.js
runtime-call-stats.js [compiler][test] Remove --block-concurrent-recompilation 2021-08-16 10:15:53 +00:00
runtime-callstats-helpers.js Revert "[super] Optimize super property access in JSNativeContextSpecialization" 2020-11-09 17:42:41 +00:00
samevalue.js
scanner.js
scope-calls-eval.js
sealed-array-reduce.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
search-string-multiple.js
serialize-after-execute.js
serialize-deserialize-now.js Reland "[snapshot] Expose the serializer through %SerializeDeserializeNow" 2020-04-28 10:41:41 +00:00
serialize-embedded-error.js
serialize-ic.js
setter-on-constructor-prototype.js
setters-on-elements.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
shared-function-tier-up-turbo.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
shift-for-integer-div.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
shifts.js
short-circuit-boolean.js
simple-constructor.js
sin-cos.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
skipping-inner-functions-bailout.js
skipping-inner-functions.js
sloppy-arguments-property-access.js Port some SloppyArgumentsElements CSA code to Torque 2020-09-14 15:44:16 +00:00
smi-mul-const.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
smi-mul.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
smi-negative-zero.js
smi-ops-inlined.js Fix typos, intial* -> initial* 2022-03-23 13:20:33 +00:00
smi-ops.js Fix typos, intial* -> initial* 2022-03-23 13:20:33 +00:00
smi-representation.js [runtime] Cleanup: we don't need field representation tracking flags 2021-07-14 09:15:01 +00:00
sparse-array.js
splice-proxy.js
spread-large-array.js
spread-large-map.js
spread-large-set.js
spread-large-string.js
stack-overflow-arity-catch-noinline.js
stack-trace-cpp-function-template-1.js
stack-trace-cpp-function-template-2.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
stack-traces-2.js
stack-traces-class-fields.js [error] Improve error message for static methods 2022-04-09 01:56:02 +00:00
stack-traces-custom-lazy.js
stack-traces-custom.js [stack-traces] Speed up method name inference. 2021-02-05 13:57:12 +00:00
stack-traces-overflow.js
stack-traces.js Reland "stack-trace-api: implement getEnclosingLine/Column" 2020-11-23 20:05:02 +00:00
stackoverflow-underapplication.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
statistics-extension.js [extensions] Fix dcheck failures in getV8Statistics 2022-03-09 15:47:36 +00:00
store-dictionary.js
str-to-num.js
stress-array-push.js
strict-equals.js
strict-mode-eval.js
strict-mode-implicit-receiver.js
strict-mode-opt.js
strict-mode.js
string-add.js
string-case.js Reland^5 "[flags] warn about contradictory flags" 2020-09-18 15:45:00 +00:00
string-charat.js
string-charcodeat-external.js
string-charcodeat.js
string-compare-alignment.js
string-concat.js
string-deopt.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
string-equal.js
string-external-cached.js Revert "[objects] Remove MakeExternal case for uncached internal strings" 2021-01-15 20:57:04 +00:00
string-externalize.js
string-flatten.js
string-fromcharcode.js
string-index.js
string-indexof-1.js
string-indexof-2.js
string-lastindexof.js
string-localecompare.js
string-match.js
string-normalize.js
string-oom-array-join.js
string-oom-concat.js
string-oom-replace-global-regexp-with-string.js
string-oom-replace-regexp-global-with-function.js
string-pad.js
string-replace-gc.js
string-replace-one-char.js
string-replace-with-empty.js
string-replace.js
string-search.js
string-slices-regexp.js
string-slices.js
string-split-cache.js
string-split.js
string-trim.js
string-wrapper.js
strong-rooted-literals.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
substr.js
sum-0-plus-undefined-is-NaN.js
switch-opt.js
switch.js A jump-table implementation for constant case switch statements 2021-06-23 09:26:23 +00:00
test-async.js
test-builtins-setup.js
testcfg.py [test] Clean up Py2 code 2022-03-17 09:12:36 +00:00
thin-strings.js [string] Add additional ThinString test 2022-03-24 16:46:12 +00:00
this-dynamic-lookup.js
this-in-callbacks.js
this-property-assignment.js
this.js
throw-and-catch-function.js
throw-exception-for-null-access.js
to_number_order.js
to-precision.js
tobool.js
toint32.js
top-level-assignments.js
touint32.js
track-fields.js [runtime] Cleanup: we don't need field representation tracking flags 2021-07-14 09:15:01 +00:00
transcendentals.js
transition-elements-kind.js
try-catch-default-destructuring.js
try-catch-extension-object.js
try-catch-scopes.js
try-finally-continue.js
try-finally-nested.js
try.js
typed-array-slice.js
typedarray-constructor-mixed-bigint.js [typedarray] Throw when constructing a TA with another TA of mixed BigInt-ness 2021-08-04 21:55:38 +00:00
typedarray-growablesharedarraybuffer-atomics.js [rab/gsab] Atomics.*: Support RAB / GSAB 2022-04-28 08:05:18 +00:00
typedarray-growablesharedarraybuffer.js [RAB/GSAB] Object.freeze: Support RAB / GSAB 2022-04-07 06:00:44 +00:00
typedarray-helpers.js [rab/gsab] Atomics.*: Support RAB / GSAB 2022-04-28 08:05:18 +00:00
typedarray-resizablearraybuffer-atomics.js [rab/gsab] Atomics.*: Support RAB / GSAB 2022-04-28 08:05:18 +00:00
typedarray-resizablearraybuffer-detach.js Do not consult Symbol.species when constructing TypedArray from TypedArrays 2022-04-06 18:57:18 +00:00
typedarray-resizablearraybuffer.js [RAB/GSAB] Object.freeze: Support RAB / GSAB 2022-04-07 06:00:44 +00:00
typeof.js
tzoffset-seoul-noi18n.js
tzoffset-seoul.js
tzoffset-transition-apia.js
tzoffset-transition-lord-howe.js
tzoffset-transition-moscow.js
tzoffset-transition-new-york-noi18n.js
tzoffset-transition-new-york.js
ubsan-fuzzerbugs.js
unary-minus-deopt.js [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
unbox-double-arrays.js
unbox-double-field-indexed.js
unbox-double-field.js
unbox-smi-field-indexed.js
unbox-smi-field.js
undeletable-functions.js
undetectable-compare.js
undetectable.js
unicode-case-overoptimization0.js Split slow test unicode-case-overoptimization 2020-12-31 10:35:19 +00:00
unicode-case-overoptimization1.js Split slow test unicode-case-overoptimization 2020-12-31 10:35:19 +00:00
unicode-string-to-number.js
unicode-test.js [Respect] Prefer inclusive terms 2020-06-22 18:11:23 +00:00
unicodelctest-no-optimization.js
unicodelctest.js
unused-context-in-with.js
unusual-constructor.js
uri.js
value-callic-prototype-change.js
value-of.js
value-serializer.js [d8] Add ValueSerializer JS api for better fuzzing 2022-04-27 15:05:07 +00:00
value-wrapper-accessor.js
value-wrapper.js
var.js
verify-assert-false.js
verify-check-false.js
verify-no-fail.js Add D8 flag --no-fail that ignores exceptions on exit. 2021-08-19 08:23:18 +00:00
web-snapshot-helpers.js [web snapshots] Support elements in objects 2022-03-10 12:52:28 +00:00
whitespaces0.js
whitespaces1.js
whitespaces2.js
whitespaces3.js
whitespaces4.js
whitespaces5.js
whitespaces6.js
whitespaces7.js
whitespaces8.js
whitespaces9.js
whitespaces.js
with-function-expression.js
with-leave.js
with-parameter-access.js
with-prototype.js
with-readonly.js
with-value.js
worker-ping-test.js [test] Make worker related tests more fuzzable 2021-01-26 12:09:59 +00:00