v8/test
Jakob Gruber a56874d3eb [regexp] Early errors 🤯
This CL implements early SyntaxErrors for regular expressions. Early
errors are thrown when a malformed pattern is parsed, rather than when
the code first runs.

We do this by having the JS parser call into the regexp parser when
a regexp pattern is found. Regexps are expected to be relatively
rare, small, and cheap to parse - that's why we currently accept that
the regexp parser does unnecessary work (e.g. creating the AST
structures).

If needed, we can optimize in the future. Ideas:

- Split up the regexp parser to avoid useless work for syntax validation.
- Preserve parser results to avoid reparsing later.

Bug: v8:896
Change-Id: I3d1ec18c980ba94439576ac3764138552418b85d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3106647
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Patrick Thier <pthier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#76502}
2021-08-26 11:33:39 +00:00
..
benchmarks [test] Mark pdfjs as slow for TSAN builds 2021-07-28 14:03:46 +00:00
bigint [bigint] Faster parsing from long strings 2021-08-20 10:54:34 +00:00
cctest [wasm-simd] Share i32x4.trunc_sat_f64x2 s,u zero implementation 2021-08-25 23:10:59 +00:00
common Reland "[arm64][wasm] Use NEON S/Usra for Wasm SIMD add(shr(x, imm), y)" 2021-08-17 09:27:26 +00:00
debugger [compiler][test] Remove --block-concurrent-recompilation 2021-08-16 10:15:53 +00:00
debugging [d8][mjsunit][tools] Improve d8 file API 2021-06-01 13:37:57 +00:00
fuzzer [fuzzer] Use new d8.file.execute API in generated test case 2021-08-25 15:59:05 +00:00
fuzzilli Fix unhandled promise rejections in REPRL mode 2020-09-30 13:34:23 +00:00
inspector [sandbox] Disallow ArrayBuffers outside the VM Cage 2021-08-25 09:52:38 +00:00
intl [mjsunit] Fix intl test when LC_MESSAGES is set 2021-08-24 10:10:12 +00:00
js-perf-test [class] add microbenchmark for evaluating classes with fields 2021-08-26 10:07:59 +00:00
memory [snapshot] Fix the Memory.json benchmark 2021-04-28 07:54:34 +00:00
message Skip {map,set}-grow-failed tests on more slow bots 2021-08-18 07:05:30 +00:00
mjsunit [regexp] Early errors 🤯 2021-08-26 11:33:39 +00:00
mkgrokdump [sandbox] Disallow ArrayBuffers outside the VM Cage 2021-08-25 09:52:38 +00:00
mozilla Reland "[test] Unmark TSAN tests as SLOW/SKIP" 2021-06-28 10:19:20 +00:00
test262 [regexp] Early errors 🤯 2021-08-26 11:33:39 +00:00
torque [torque] Add LazyNode support 2021-02-23 16:51:53 +00:00
unittests [wasm-gc] Experiment: non-validated non-nullable locals 2021-08-25 14:03:37 +00:00
wasm-api-tests Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
wasm-js [wasm] Update wasm spec tests 2021-07-08 12:46:48 +00:00
wasm-spec-tests [LOONG64] Add LoongArch64 backend 2021-08-16 13:05:19 +00:00
webkit Revert "Reland "[build] Add V8-specific dcheck_always_on"" 2021-07-27 11:14:57 +00:00
BUILD.gn Reland^2 "[bigint] Karatsuba multiplication" 2021-06-07 11:01:14 +00:00
OWNERS Use relative paths to OWNERS files 2019-08-12 13:52:52 +00:00