v8/test
Mike Stanton 8f489e73b2 [turbofan] Masking/poisoning in codegen (optimized code, x64)
This introduces masking of loads with speculation bit during code generation.
At the moment, this is done only for x64 optimized code, under the
--branch-load-poisoning flag.

Overview of changes:
- new register configuration configuration with one register reserved for
  the speculation poison/mask (kSpeculationPoisonRegister).
- in codegen, we introduce an update to the poison register at the starts
  of all successors of branches (and deopts) that are marked as safety
  branches (deopts).
- in memory optimizer, we lower all field and element loads to PoisonedLoads.
- poisoned loads are then masked in codegen with the poison register.
  * only integer loads are masked at the moment.

Bug: chromium:798964
Change-Id: Ie51fdbde578fc289dff029794f3cfe8eaf33e1ef
Reviewed-on: https://chromium-review.googlesource.com/901625
Commit-Queue: Michael Stanton <mvstanton@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#51272}
2018-02-13 15:19:17 +00:00
..
benchmarks [test] Forgive tests timing out on num-fuzzers 2018-02-08 23:08:05 +00:00
cctest [turbofan] Masking/poisoning in codegen (optimized code, x64) 2018-02-13 15:19:17 +00:00
common [wasm] Add remaining saturating conversions 2018-02-07 19:45:39 +00:00
debugger [promisehook] Check for JSReceiver in runtime function 2018-02-08 17:28:54 +00:00
fuzzer [multi-return] Restrict number of params and returns in the fuzzer 2018-02-12 10:07:38 +00:00
inspector [inspector] calculate correct script hash 2018-02-08 23:47:36 +00:00
intl [test] Remove context usage from test processors 2018-02-01 10:35:02 +00:00
js-perf-test Add Peter as an owner of the JSTests benchmark 2018-02-13 02:49:25 +00:00
memory
message [parsing] Provide location for function redeclaration error. 2018-02-01 20:46:11 +00:00
mjsunit [builtins] Optimize PromiseResolveThenableJob for the common case. 2018-02-13 05:36:39 +00:00
mkgrokdump [test] Remove context usage from test processors 2018-02-01 10:35:02 +00:00
mozilla [test] Remove context usage from test processors 2018-02-01 10:35:02 +00:00
preparser [test] Remove dead code from suites and tests 2018-02-01 14:12:49 +00:00
test262 [esnext] implement spec change to TaggedTemplate callsite caching 2018-02-12 17:06:18 +00:00
unittests [esnext] implement spec change to TaggedTemplate callsite caching 2018-02-12 17:06:18 +00:00
wasm-spec-tests [test] Remove context usage from test processors 2018-02-01 10:35:02 +00:00
webkit Revert "[builtins] Mega-revert to address the Dev blocker in crbug.com/808911." 2018-02-08 17:25:13 +00:00
bot_default.isolate
BUILD.gn [test] Add a d8_default test suite collection 2018-01-12 15:18:04 +00:00
d8_default.isolate [test] Add a d8_default test suite collection 2018-01-12 15:18:04 +00:00
default.isolate
optimize_for_size.isolate
perf.isolate Reland "Reland "[test] Creating command before execution phase."" 2017-12-04 13:40:29 +00:00