• Joshua Litt's avatar
    [regexp] Clone match info for match indices. · dfd9ceb9
    Joshua Litt authored
    The current behavior for generating match indices simply stashes a
    pointer to the match info and then constructs the indices lazily.
    However, it turns out the match info object used to create the result
    object is the regexp_last_match_info living on native context, and thus
    it can change between the creation of the result object and the generation
    of indices. This cl clones the match info which will be safer.
    
    Bug: v8:9548
    Change-Id: Ia6f26f88fbc22fd09671bf4c579d39a1510b552d
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864585
    Commit-Queue: Joshua Litt <joshualitt@chromium.org>
    Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#64356}
    dfd9ceb9
Name
Last commit
Last update
..
bigint Loading commit data...
regress Loading commit data...
weakrefs Loading commit data...
array-concat-array-proto-getter.js Loading commit data...
array-concat-array-proto.js Loading commit data...
array-concat-object-proto-dict-getter.js Loading commit data...
array-concat-object-proto-dict.js Loading commit data...
array-concat-object-proto-generic-dict.js Loading commit data...
array-concat-object-proto.js Loading commit data...
array-flat-species.js Loading commit data...
array-flat.js Loading commit data...
array-flatMap-species.js Loading commit data...
array-flatMap.js Loading commit data...
array-sort-comparefn.js Loading commit data...
async-await-optimization.js Loading commit data...
async-for-of-non-iterable.js Loading commit data...
async-from-sync-iterator-next-tick-count.js Loading commit data...
async-from-sync-iterator-return-tick-count.js Loading commit data...
async-from-sync-iterator-throw-tick-count.js Loading commit data...
async-from-sync-iterator.js Loading commit data...
async-generators-basic.js Loading commit data...
async-generators-resume-return.js Loading commit data...
async-generators-return.js Loading commit data...
async-generators-yield.js Loading commit data...
async-iterators-resolve.js Loading commit data...
atomics-notify.js Loading commit data...
atomics-value-check.js Loading commit data...
atomics.js Loading commit data...
bigintarray-keyedstore-tobigint.js Loading commit data...
block-lazy-compile.js Loading commit data...
dataview-accessors.js Loading commit data...
for-await-of.js Loading commit data...
function-tostring.js Loading commit data...
futex.js Loading commit data...
generators-reduced.js Loading commit data...
generators.js Loading commit data...
global-configurable.js Loading commit data...
global-writable.js Loading commit data...
global.js Loading commit data...
harmony-string-pad-end.js Loading commit data...
harmony-string-pad-start.js Loading commit data...
hashbang-eval.js Loading commit data...
import-from-compilation-errored.js Loading commit data...
import-from-evaluation-errored.js Loading commit data...
import-from-fetch-errored.js Loading commit data...
import-from-instantiation-errored.js Loading commit data...
module-parsing-eval.mjs Loading commit data...
modules-import-1.mjs Loading commit data...
modules-import-10.mjs Loading commit data...
modules-import-11.mjs Loading commit data...
modules-import-12.mjs Loading commit data...
modules-import-13.mjs Loading commit data...
modules-import-14.mjs Loading commit data...
modules-import-15-top-level-await.mjs Loading commit data...
modules-import-15.mjs Loading commit data...
modules-import-16.mjs Loading commit data...
modules-import-17.mjs Loading commit data...
modules-import-2.mjs Loading commit data...
modules-import-3.mjs Loading commit data...
modules-import-4.mjs Loading commit data...
modules-import-5.mjs Loading commit data...
modules-import-6.mjs Loading commit data...
modules-import-7.mjs Loading commit data...
modules-import-8.mjs Loading commit data...
modules-import-9.mjs Loading commit data...
modules-import-large.mjs Loading commit data...
modules-import-meta.mjs Loading commit data...
modules-import-namespace.mjs Loading commit data...
modules-import-rqstd-order-top-level-await-1.mjs Loading commit data...
modules-import-rqstd-order-top-level-await-2.mjs Loading commit data...
modules-import-rqstd-order-top-level-await-3.mjs Loading commit data...
modules-import-rqstd-order-top-level-await-4.mjs Loading commit data...
modules-import-rqstd-order-top-level-await-5.mjs Loading commit data...
modules-import-rqstd-order-top-level-await-6.mjs Loading commit data...
modules-import-rqstd-order-top-level-await-7.mjs Loading commit data...
modules-import-rqstd-order-top-level-await-8.mjs Loading commit data...
modules-import-top-level-await-1.mjs Loading commit data...
modules-import-top-level-await-2.mjs Loading commit data...
modules-import-top-level-await-3.mjs Loading commit data...
modules-import-top-level-await-4.mjs Loading commit data...
modules-import-top-level-await-5.mjs Loading commit data...
modules-import-top-level-await-6.mjs Loading commit data...
modules-import-top-level-await-7.mjs Loading commit data...
modules-import-top-level-await-8.mjs Loading commit data...
modules-import-top-level-await-cycle.mjs Loading commit data...
modules-import-top-level-await-exception-1.mjs Loading commit data...
modules-import-top-level-await-exception-2.mjs Loading commit data...
modules-import-top-level-await-exception-3.mjs Loading commit data...
modules-skip-1-rqstd-order-indirect-top-level-await.mjs Loading commit data...
modules-skip-1-rqstd-order-indirect-unreached-top-level-await.mjs Loading commit data...
modules-skip-1-rqstd-order-top-level-await.mjs Loading commit data...
modules-skip-1-rqstd-order-unreached-top-level-await.mjs Loading commit data...
modules-skip-1-rqstd-order.mjs Loading commit data...
modules-skip-1-top-level-await-cycle.mjs Loading commit data...
modules-skip-1-top-level-await.mjs Loading commit data...
modules-skip-1.mjs Loading commit data...
modules-skip-10.mjs Loading commit data...
modules-skip-11.mjs Loading commit data...
modules-skip-12.mjs Loading commit data...
modules-skip-13.mjs Loading commit data...
modules-skip-2-rqstd-order-indirect-top-level-await.mjs Loading commit data...
modules-skip-2-rqstd-order-top-level-await.mjs Loading commit data...
modules-skip-2-rqstd-order.mjs Loading commit data...
modules-skip-2-top-level-await-cycle.mjs Loading commit data...
modules-skip-2-top-level-await.mjs Loading commit data...
modules-skip-2.mjs Loading commit data...
modules-skip-3-rqstd-order-indirect-top-level-await.mjs Loading commit data...
modules-skip-3-rqstd-order-top-level-await.mjs Loading commit data...
modules-skip-3-rqstd-order.mjs Loading commit data...
modules-skip-3-top-level-await-cycle.mjs Loading commit data...
modules-skip-3-top-level-await.mjs Loading commit data...
modules-skip-3.mjs Loading commit data...
modules-skip-4-rqstd-order-indirect-top-level-await.mjs Loading commit data...
modules-skip-4-rqstd-order-top-level-await.mjs Loading commit data...
modules-skip-4-rqstd-order.mjs Loading commit data...
modules-skip-4-top-level-await-cycle.mjs Loading commit data...
modules-skip-4-top-level-await.mjs Loading commit data...
modules-skip-4.mjs Loading commit data...
modules-skip-5-top-level-await.mjs Loading commit data...
modules-skip-5.mjs Loading commit data...
modules-skip-6-top-level-await.mjs Loading commit data...
modules-skip-6.mjs Loading commit data...
modules-skip-7-top-level-await.mjs Loading commit data...
modules-skip-7.mjs Loading commit data...
modules-skip-8.mjs Loading commit data...
modules-skip-9.mjs Loading commit data...
modules-skip-empty.mjs Loading commit data...
modules-skip-export-import-meta.mjs Loading commit data...
modules-skip-large1.mjs Loading commit data...
modules-skip-large2.mjs Loading commit data...
nullish.js Loading commit data...
numeric-separator.js Loading commit data...
object-fromentries.js Loading commit data...
optional-catch-binding-breaks.js Loading commit data...
optional-catch-binding.js Loading commit data...
optional-chaining.js Loading commit data...
private-accessors.js Loading commit data...
private-fields-ic.js Loading commit data...
private-fields-special-object.js Loading commit data...
private-fields-static.js Loading commit data...
private-fields.js Loading commit data...
private-methods.js Loading commit data...
private-name-scopes.js Loading commit data...
private-symbols.js Loading commit data...
private.js Loading commit data...
promise-all-settled.js Loading commit data...
promise-prototype-finally.js Loading commit data...
public-instance-class-fields.js Loading commit data...
public-static-class-fields.js Loading commit data...
regexp-change-exec.js Loading commit data...
regexp-dotall.js Loading commit data...
regexp-match-indices.js Loading commit data...
regexp-named-captures.js Loading commit data...
regexp-overriden-exec.js Loading commit data...
regexp-property-binary.js Loading commit data...
regexp-property-char-class.js Loading commit data...
regexp-property-emoji-flag-sequence-generated.js Loading commit data...
regexp-property-emoji-keycap-sequence-generated.js Loading commit data...
regexp-property-emoji-modifier-sequence-generated.js Loading commit data...
regexp-property-emoji-tag-sequence-generated.js Loading commit data...
regexp-property-emoji-zwj-sequence-generated.js Loading commit data...
regexp-property-enumerated.js Loading commit data...
regexp-property-exact-match.js Loading commit data...
regexp-property-general-category.js Loading commit data...
regexp-property-invalid.js Loading commit data...
regexp-property-lu-ui.js Loading commit data...
regexp-property-lu-ui0.js Loading commit data...
regexp-property-lu-ui1.js Loading commit data...
regexp-property-lu-ui2.js Loading commit data...
regexp-property-lu-ui3.js Loading commit data...
regexp-property-lu-ui4.js Loading commit data...
regexp-property-lu-ui5.js Loading commit data...
regexp-property-lu-ui6.js Loading commit data...
regexp-property-lu-ui7.js Loading commit data...
regexp-property-lu-ui8.js Loading commit data...
regexp-property-lu-ui9.js Loading commit data...
regexp-property-script-extensions.js Loading commit data...
regexp-property-scripts.js Loading commit data...
regexp-property-sequence.js Loading commit data...
regexp-property-special.js Loading commit data...
regress-generators-resume.js Loading commit data...
set-prototype-of.js Loading commit data...
sharedarraybuffer-stress.js Loading commit data...
sharedarraybuffer-worker-gc-stress.js Loading commit data...
sharedarraybuffer.js Loading commit data...
static-private-methods.js Loading commit data...
string-matchAll-deleted-matchAll.js Loading commit data...
string-matchAll.js Loading commit data...
symbol-async-iterator.js Loading commit data...
symbol-description.js Loading commit data...
to-length.js Loading commit data...
to-name.js Loading commit data...
to-number.js Loading commit data...
to-string.js Loading commit data...
trailing-commas-length.js Loading commit data...
well-formed-json-stringify-checked.js Loading commit data...
well-formed-json-stringify-unchecked.js Loading commit data...