v8/test
JialuZhang-intel ea97572d47 [turbofan] Improve jump threading phase
Let jump threading phase be able to handle the jump with gap moves instructions.
Record the first occurrence of the gap jump instruction and forward
the same gap jump instructions into the recorded one.

For example:
  In this case, we merge the second instruction into the first one,
  because those two gap jump instructions have the same gap moves.

    -- Before jump threading phase:
    B0:
    1. gap(rdx=rbx)
       ArchJmp imm:3
    B1:
    2. gap(rdx=rbx)
       ArchJmp imm:3

    -- After jump threading phase:
    B0:
    1. gap(rdx=rbx)
       ArchJmp imm:3
    B1:
    2. ArchNop

This can eliminate redundant jump and move instructions.

Design doc: https://docs.google.com/document/d/1SpO7Kw4e6CnCesFT118MUnCufUHZDy3QaVSymcci5jE/edit?usp=sharing

Change-Id: Ie94c8f63e2f758824619f6ed9513cbdff00186c4
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3858528
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Jialu Zhang <jialu.zhang@intel.com>
Cr-Commit-Position: refs/heads/main@{#83288}
2022-09-19 03:44:11 +00:00
..
benchmarks Re-enable octane/typescript for deopt_fuzzer 2022-09-09 08:34:45 +00:00
bigint [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
cctest [turbofan] Improve jump threading phase 2022-09-19 03:44:11 +00:00
common [wasm] Use a single source of truth for feedback vector size 2022-09-16 10:26:34 +00:00
debugger [mips32] Delete mips32 from v8 2022-09-13 07:54:54 +00:00
debugging [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
fuzzer [wasm] Move js-to-wasm wrappers to the isolate 2022-09-16 15:08:53 +00:00
fuzzilli [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
inspector Don't run sampling-heap-profiler-flags with stress-incremental-marking 2022-09-15 12:53:28 +00:00
intl [Intl] Sync to intl-numberformat-v3 PR107 2022-09-16 20:52:26 +00:00
js-perf-test [turbofan] More benchmarks for BigInt operations 2022-08-17 08:56:08 +00:00
memory
message [mips32] Delete mips32 from v8 2022-09-13 07:54:54 +00:00
mjsunit [wasm-gc][liftoff] Check for null before calling CallRefIC 2022-09-16 14:33:13 +00:00
mkgrokdump [sandbox] Enable the sandbox by default in gm.py 2022-09-15 17:03:19 +00:00
mozilla [mips32] Delete mips32 from v8 2022-09-13 07:54:54 +00:00
test262 [test262] Roll test262 2022-09-17 00:55:09 +00:00
torque
unittests [Temporal] Add ParseTimeZoneIdentifier ParseCalendarName to parser 2022-09-16 20:44:37 +00:00
wasm-api-tests [wasm-gc] Split any and extern type 2022-07-28 13:09:55 +00:00
wasm-js [wasm] Update spec tests 2022-08-11 11:16:17 +00:00
wasm-spec-tests [mips32] Delete mips32 from v8 2022-09-13 07:54:54 +00:00
webkit [mips32] Delete mips32 from v8 2022-09-13 07:54:54 +00:00
BUILD.gn [test] Move cctest/interpreter to unittests 2022-06-10 08:37:10 +00:00
OWNERS