v8/src
Ilya Rezvov 57db447bf2 Revert "Reland "[turbofan] Optimize rab/gsab-backed TypedArrays and DataViews""
This reverts commit 05bd7d9cd6.

Reason for revert: Still looks like a reason for rollout tests failure https://ci.chromium.org/ui/p/chromium/builders/try/linux-rel/1179312/overview

Original change's description:
> Reland "[turbofan] Optimize rab/gsab-backed TypedArrays and DataViews"
>
> This reverts commit 4b28d53011.
>
> Original change's description:
> > [turbofan] Optimize rab/gsab-backed TypedArrays and DataViews
> >
> > This CL adds TurboFan optimizations for length and element access
> > of TypedArrays and DataViews that are rab/gsab-backed.
> >
> > To enable this optimization, this CL builds the necessary machinery
> > required to allow machine operators at the front of the pipeline
> > (before simplified lowering). Some key changes to allow this are:
> >  - Introduce Type::Machine() to allow the typer and the verifier to
> >    provide a type to those machine operators in parts of the pipeline
> >    that require nodes to be typed.
> >  - Add EnterMachineGraph and ExitMachineGraph operators that define
> >    the boundary between early machine graphs and the normal graph with
> >    JS semantics.
> >  - Give Branch operators a BranchSemantics parameter to distinguish
> >    between machine branches (condition is a machine level value) and
> >    JS branches (condition is a JS boolean value) and have phases that
> >    handle branches decide on the branch's semantics based on this
> >    parameter instead of the position in the pipeline.
> >  - Extend SimplifiedLowering and SimplifiedLoweringVerifier to handle
> >    machine graphs. In particular, constants required special handling,
> >    because they are cached in the graph but they may have uses in both
> >    a machine and the JS graph, which prevents consistent typing of
> >    them.
> >  - Moved lots of logic from JSCallReducerAssembler into
> >    [JS]GraphAssembler such that functionality can be shared between
> >    different phases (e.g. JSNativeContextSpecialization and
> >    JSCallReducer need to generate logic to compute a TypedArray's
> >    byte length). Extended assembler interface in general with
> >    additional TNode<> overloads.
> >
> >
> > Bug: v8:11111, chromium:1358505
> > Change-Id: Ife006b8c38a83045cd3b8558acbfdcb66408891f
> > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3898690
> > Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
> > Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
> > Reviewed-by: Clemens Backes <clemensb@chromium.org>
> > Cr-Commit-Position: refs/heads/main@{#83881}
>
> Bug: v8:11111, chromium:1358505, v8:13412
> Change-Id: I61664e18a9dba1741bcb70ec22ba6342521f500a
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3976512
> Reviewed-by: Igor Sheludko <ishell@chromium.org>
> Reviewed-by: Clemens Backes <clemensb@chromium.org>
> Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
> Commit-Queue: Nico Hartmann <nicohartmann@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#83904}

Bug: v8:11111, chromium:1358505, v8:13412
Change-Id: I960a34cfdb861feddf51cbcd759218f39b26cd56
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3980313
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Ilya Rezvov <irezvov@chromium.org>
Commit-Queue: Ilya Rezvov <irezvov@chromium.org>
Cr-Commit-Position: refs/heads/main@{#83914}
2022-10-25 22:37:08 +00:00
..
api [heap] Rename safepoint scopes 2022-10-25 16:32:55 +00:00
asmjs Reland "[flags] Remove FLAG_* aliases" 2022-10-14 13:13:55 +00:00
ast Revert "[cleanup] More C++20 fixes" 2022-10-18 06:32:56 +00:00
base Revert "Reland "[turbofan] Optimize rab/gsab-backed TypedArrays and DataViews"" 2022-10-25 22:37:08 +00:00
baseline [interpreter] Remove AsyncGeneratorYieldNoAwait 2022-10-11 23:48:17 +00:00
bigint Reland "Remove some unused includes" 2022-07-05 16:44:13 +00:00
builtins PPC/s390: Reland "[wasm] Allocate feedback vectors on demand" 2022-10-21 20:15:38 +00:00
codegen Revert "Reland "[turbofan] Optimize rab/gsab-backed TypedArrays and DataViews"" 2022-10-25 22:37:08 +00:00
common [arraybuffers, api] Implement [[ArrayBufferDetachKey]] support 2022-10-21 12:55:18 +00:00
compiler Revert "Reland "[turbofan] Optimize rab/gsab-backed TypedArrays and DataViews"" 2022-10-25 22:37:08 +00:00
compiler-dispatcher [compiler-dispatcher] Use v8_flags for accessing flag values 2022-10-10 15:43:11 +00:00
d8 [fastcall] Disable fast calls with stack args on M1 2022-10-24 14:23:17 +00:00
date [date] Use v8_flags for accessing flag values 2022-09-16 12:04:13 +00:00
debug [inspector] Remove experimental_async_stack_tagging_api flag 2022-10-24 05:23:50 +00:00
deoptimizer [turbofan] Decompose CheckBigInt64 and make it precise 2022-10-25 08:57:30 +00:00
diagnostics [arraybuffers, api] Implement [[ArrayBufferDetachKey]] support 2022-10-21 12:55:18 +00:00
execution PPC: Add r15 to the list of liftoff cache registers 2022-10-25 16:20:14 +00:00
extensions [strings] Accomodate shared strings in externalizeString() 2022-09-09 20:49:35 +00:00
flags Revert "Reland "[turbofan] Optimize rab/gsab-backed TypedArrays and DataViews"" 2022-10-25 22:37:08 +00:00
handles [handles] Split off traced handles from regular global handles 2022-10-24 10:04:08 +00:00
heap [heap] Rename safepoint scopes 2022-10-25 16:32:55 +00:00
ic [turbofan] Support feedback for arithmetic BigInt operations 2022-10-18 10:46:26 +00:00
init [cleanup] Use thread_local in Isolate 2022-10-20 08:32:38 +00:00
inspector [inspector] Remove experimental_async_stack_tagging_api flag 2022-10-24 05:23:50 +00:00
interpreter Revert "[cleanup] More C++20 fixes" 2022-10-18 06:32:56 +00:00
json [json-parse-with-source] Remove GCCallback before internalize 2022-10-12 16:03:01 +00:00
libplatform [profiler][etw] Dynamically turn on/off ETW tracing 2022-09-28 16:17:46 +00:00
libsampler [mips32] Delete mips32 from v8 2022-09-13 07:54:54 +00:00
logging [CSA][codegen] Add BitcastElision Phase 2022-10-20 02:29:57 +00:00
maglev [maglev] Use precalculated indices before TryInlineBuiltin 2022-10-25 15:34:14 +00:00
numbers Reland "[flags] Remove FLAG_* aliases" 2022-10-14 13:13:55 +00:00
objects Revert "Reland "[turbofan] Optimize rab/gsab-backed TypedArrays and DataViews"" 2022-10-25 22:37:08 +00:00
parsing [inspector] Remove Type Profiler 2022-10-10 11:50:16 +00:00
profiler [heap] Rename safepoint scopes 2022-10-25 16:32:55 +00:00
protobuf Remove petermarshall from OWNERS 2021-03-31 11:00:22 +00:00
regexp [regexp] Fix wrong unicode case-insensitive matches 2022-10-19 11:12:27 +00:00
roots [interpreter] Remove await from async generator yield* 2022-10-05 21:49:47 +00:00
runtime [test] Fix optimization marking for in-progress 2022-10-21 13:56:58 +00:00
sandbox [sandbox] Introduce BoundedSize 2022-10-11 13:43:43 +00:00
sanitizer Reland "[elements] Avoid racy data reads/writes" 2021-05-06 10:46:52 +00:00
snapshot [heap] Rename safepoint scopes 2022-10-25 16:32:55 +00:00
strings [stringrefs] Fold wtf8 policy into instruction set 2022-09-13 15:32:27 +00:00
tasks Remove some unused includes (3) 2022-07-07 09:42:31 +00:00
temporal [Temporal] Clean up parser 2022-09-27 20:38:54 +00:00
third_party Fix vtunejit issues 2022-07-27 13:02:17 +00:00
torque [c++20] Explicit capture of 'this' 2022-10-05 11:33:06 +00:00
tracing Fix includes of base/platform/wrappers.h 2022-09-06 19:24:55 +00:00
trap-handler [trap-handler] Fix the Windows ARM64 build when using MSVC 2022-10-22 18:52:18 +00:00
utils Reland "Reland "[v8] Use |AllocateAtLeast| for resizing v8 zones."" 2022-10-19 11:55:27 +00:00
wasm PPC: Add r15 to the list of liftoff cache registers 2022-10-25 16:20:14 +00:00
web-snapshot [arraybuffers, api] Implement [[ArrayBufferDetachKey]] support 2022-10-21 12:55:18 +00:00
zone [maglev] Monomorphic load access with similar shape maps 2022-10-21 16:54:57 +00:00
DEPS [heap] Refactor pretenuring logic out of heap 2022-10-05 16:28:38 +00:00
DIR_METADATA Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
OWNERS Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00