v8/tools
Jakob Gruber fa2bed3f74 [regexp] Move the RegExpSpeciesProtector to the native context
Prior to this CL, it was possible to pollute another context's
fast/slow-path state for RegExp builtins due to the species protector
being per-isolate rather than per-context. Among other things, this
means that iframes can slow down the main site, and slowdowns persist
across page reloads and navigation within the same tab.

This CL thus moves the RegExpSpeciesProtector to the native context.

The same should be done for all other protectors in the future.

Bug: chromium:977382, v8:5577, v8:9463
Change-Id: I577f470229cb9dfcd4a88c20b1b9111c65a9b85f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1695465
Auto-Submit: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#62631}
2019-07-11 09:08:34 +00:00
..
blink_tests [test] Remove obsolete blink test skips 2019-01-18 12:30:23 +00:00
cfi Reland "Move API-related files" 2019-05-17 12:52:27 +00:00
clusterfuzz [foozzie] Enable passing extra flags on command line 2019-06-25 13:27:11 +00:00
dev [wasm-c-api] Add tests and fixes 2019-05-28 09:57:04 +00:00
gcmole [DevTools] Roll inspector_protocol (v8). 2019-06-28 09:37:18 +00:00
generate_shim_headers
heap-stats [objects] Rename JSValue to JSPrimitiveWrapper 2019-06-24 13:54:38 +00:00
ignition Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
jsfunfuzz [test] update the jsfunfuzz archive in Google Storage 2018-12-18 15:00:35 +00:00
link_clicker.extension
mb Use xenial bot to run v8 tests 2019-07-05 07:52:25 +00:00
memory
msan
ninja
node Remove android_tools deps for v8 repo 2019-07-03 17:59:11 +00:00
perf
profview [profview] Use requestAnimationFrame to schedule a render 2019-01-15 13:08:46 +00:00
profviz [Tools] Add support to tickprocessor to symbolize libraries embedded in APKs 2019-05-28 16:18:47 +00:00
release [tools] Remove cctest from non-ref official archives 2019-04-12 09:17:52 +00:00
sanitizers Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
snapshot [Builtins] Infrastructure for source positions in stubs/builtins 2019-01-22 19:09:36 +00:00
sodium
testrunner [test] Simplify output processor logic 2019-06-28 09:15:18 +00:00
toolchain [build] Add support for the other MIPS architectures 2018-03-19 10:43:07 +00:00
torque Don't write formatted tq files if nothing changed 2019-06-25 12:16:21 +00:00
tracing/proto-converter [tracing] Add the proto to json converter for trace events 2019-03-25 08:56:18 +00:00
turbolizer [turbolizer] Fix keyboard shortcuts in info tab to reveal input/output nodes. 2019-07-09 14:15:52 +00:00
ubsan [test] Remove obsolete ubsan suppression 2019-02-20 09:16:57 +00:00
unittests [tools] Implement confidence-based number of runs 2019-05-09 09:42:28 +00:00
v8.xcodeproj
valgrind/asan [build] Add testrunner data deps 2018-03-26 12:17:08 +00:00
vim [vim] Update CrBuild to use autoninja. 2019-05-27 06:27:29 +00:00
visual_studio
wasm [wasm/tools] Add import profiler 2018-11-22 15:36:21 +00:00
wasm-compilation-hints [wasm-hints] Add tool to inject compilation hints into Wasm modules 2019-05-23 15:16:46 +00:00
__init__.py [test] make python recognize tools and tools/unittests as packages 2018-12-17 12:12:43 +00:00
adb-d8.py Migrate android SDK path to third_party/android_sdk/public for v8 repo 2019-03-21 12:43:39 +00:00
android-build.sh
android-ll-prof.sh
android-run.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
android-sync.sh
arguments.js
avg.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
bash-completion.sh Move remaining files in src/ 2019-05-24 18:24:36 +00:00
bigint-tester.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
BUILD.gn [tools] Implement confidence-based number of runs 2019-05-09 09:42:28 +00:00
callstats.html [tools] Clean up HTML for tools 2019-01-06 14:20:33 +00:00
callstats.py Revert "[browser-stories] gate features behind {experimental} flag" 2019-07-09 11:43:30 +00:00
callstats.py.vpython [tools] Fix platform specification for scipi 2018-08-17 18:49:49 +00:00
check-inline-includes.sh
check-static-initializers.sh [logging] Systematically emit CodeCreateEvents for builtins 2019-05-23 11:55:36 +00:00
check-unused-bailouts.sh
check-unused-symbols.sh [cleanup] Remove unused heap-symbols and add tool. 2018-11-08 17:57:05 +00:00
codemap.js Revert "[prof] Attribute ticks in embedded builtins correctly" 2019-05-27 10:11:14 +00:00
collect_deprecation_stats.sh [objects] Deprecate GetIsolate/Heap behind a flag 2018-06-01 15:19:21 +00:00
compare-table-gen.js
concatenate-files.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
consarray.js
cpu.sh
cross_build_gcc.sh
csvparser.js Escape backslashes when logging. 2018-08-10 09:09:19 +00:00
deprecation_stats.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
DEPS
detect-builtins.js
disasm.py
draw_instruction_graph.sh
dump-cpp.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
dumpcpp-driver.js [Tools] Add support to tickprocessor to symbolize libraries embedded in APKs 2019-05-28 16:18:47 +00:00
dumpcpp.js [log] Improve log parsing 2018-06-20 13:40:22 +00:00
eval_gc_nvp.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
eval_gc_time.sh [in-place weak refs] Remove WeakCell 2018-08-14 08:05:05 +00:00
find_depot_tools.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
find-commit-for-patch.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
freebsd-tick-processor
fuzz-harness.sh
gc_nvp_common.py
gc-nvp-to-csv.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
gc-nvp-trace-processor.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
gdb-v8-support.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
gdbinit [gdb] Add gdb macro 'pn' that prints TurboFan nodes 2019-06-27 13:29:08 +00:00
gen-inlining-tests.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
gen-keywords-gen-h.py [parser] Remove #line directives from keywords-gen.h 2018-11-28 15:22:05 +00:00
gen-postmortem-metadata.py [ptr-compr][cleanup] Replace READ_[WEAK_]FIELD with TaggedField<>::load() 2019-06-28 10:47:40 +00:00
generate-builtins-tests.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
generate-header-include-checks.py Move remaining files in src/ 2019-05-24 18:24:36 +00:00
generate-ten-powers.scm
get_landmines.py [landmines] Force clean build to fix Misc V8 Linux gcc 2019-06-06 21:52:11 +00:00
grokdump.py [grokdump] Fix outdated arm64 identifier value 2019-06-07 08:30:56 +00:00
ic-explorer.html [tools] Clean up HTML for tools 2019-01-06 14:20:33 +00:00
ic-processor
ic-processor-driver.js
ic-processor.js [tools] Make ic-processor print global loads/stores. 2019-01-18 12:35:43 +00:00
js2c.py Move remaining files in src/ 2019-05-24 18:24:36 +00:00
linux-tick-processor [tools] Make tick processor report error to stderr. 2018-11-06 14:25:55 +00:00
ll_prof.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
lldb_commands.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
locs.py [tools] Use ThreadPoolExecutor with reasonable job count default 2019-04-08 10:41:46 +00:00
logreader.js [log] Improve log parsing 2018-06-20 13:40:22 +00:00
mac-nm
mac-tick-processor
Makefile.tags
map-processor tick processor: fix arguments and comments 2018-10-29 09:48:23 +00:00
map-processor-driver.js
map-processor.html [tools] Clean up HTML for tools 2019-01-06 14:20:33 +00:00
map-processor.js [tools] Add file positions to map-explorer 2018-11-29 11:42:25 +00:00
mips_toolchain.tar.gz.sha1 [build] Enable downloading mips toolchain via runhooks 2018-01-31 14:38:43 +00:00
objdump-v8
OWNERS Use COMMON_OWNERS for tools/ 2019-07-02 07:25:11 +00:00
parse-processor tick processor: fix arguments and comments 2018-10-29 09:48:23 +00:00
parse-processor-driver.js
parse-processor.html [tools] Clean up HTML for tools 2019-01-06 14:20:33 +00:00
parse-processor.js [tools] Improve function event logging and parse processor 2018-07-16 14:05:14 +00:00
perf-compare.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
plot-timer-events tick processor: fix arguments and comments 2018-10-29 09:48:23 +00:00
predictable_wrapper.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
PRESUBMIT.py [tools] Clean up presubmit and run all unittests 2019-02-01 10:27:29 +00:00
profile_view.js
profile.js [profview] Avoid treating embedded builtins as CPP code. 2018-09-27 12:14:15 +00:00
run_perf.py [tools] Add support for --confidence-level flag to tools/try_perf.py 2019-06-14 12:33:49 +00:00
run-clang-tidy.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
run-llprof.sh
run-num-fuzzer.py
run-perf.sh [cleanup] Replace underscore by minus in d8 flags 2019-04-03 12:32:08 +00:00
run-tests.py
run-wasm-api-tests.py [wasm-c-api] Introducing WasmCapiFunction 2019-05-08 14:28:06 +00:00
run.py
shell-utils.h Move remaining files in src/ 2019-05-24 18:24:36 +00:00
SourceMap.js
splaytree.js
stats-viewer.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
test262-results-parser.js test262 roll 2018-08-28 21:18:23 +00:00
tick-processor.html [Tools] Add support to tickprocessor to symbolize libraries embedded in APKs 2019-05-28 16:18:47 +00:00
tickprocessor-driver.js [Tools] Add support to tickprocessor to symbolize libraries embedded in APKs 2019-05-28 16:18:47 +00:00
tickprocessor.js [tools] Strip path from library when applying targetRootFS in tickprocessor 2019-06-28 15:07:24 +00:00
trace-maps-processor.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
try_perf.py [tools] Add support for --confidence-level flag to tools/try_perf.py 2019-06-14 12:33:49 +00:00
turbolizer-perf.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
update-object-macros-undef.py Preparing v8 to use with python3 /tools 2019-02-19 09:12:07 +00:00
v8_presubmit.py Enable cpplint 'runtime/references' warning 2019-07-08 09:59:36 +00:00
v8heapconst.py [regexp] Move the RegExpSpeciesProtector to the native context 2019-07-11 09:08:34 +00:00
whitespace.txt Whitespace CL to trigger build. 2019-06-30 07:39:08 +00:00
windbg.js Added !mem and !where extensions to windbg.js 2019-06-21 16:03:38 +00:00
windows-tick-processor.bat