v8/test/unittests/compiler
Darius M 6b690a6b48 Reland [compiler] Simplify "==0" branches in MachineOperatorReducer
This is a reland of 48b443f692.

While fixing the initial CL, we stumbled upon a few bugs that
we had to fix:

 - CommonOperatorReducer and SimplifiedOperatorReducer were applied
   before and after SimplifiedLowering, but always assumed that it
   was before SimplifiedLowering, and thus had the wrong semantics
   for branches in some cases. They now have an added parameter to
   know which semantics of branch they should use.

 - The lowering of StaticAssert was wrong and could leave kHeapConstant
   in the assert (instead of machine Booleans).

Original change's description:
> [compiler] Simplify "==0" branches in MachineOperatorReducer
>
> Bug: v8:12484
> Change-Id: I0667c7464c0dd71338bc199a24a69248a7a0a525
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3497303
> Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
> Owners-Override: Tobias Tebbi <tebbi@chromium.org>
> Commit-Queue: Darius Mercadier <dmercadier@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#79379}

Bug: v8:12484
Change-Id: Ibbf5df96fce5ccb04868dc517539479bf69f5703
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3516869
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Darius Mercadier <dmercadier@chromium.org>
Cr-Commit-Position: refs/heads/main@{#79528}
2022-03-18 09:45:15 +00:00
..
arm [wasm-simd][arm] Fuse extadd_pairwise and add SIMD on arm. 2021-06-28 14:26:00 +00:00
arm64 Reland "[arm64][wasm-simd] Use Cm(0) for integer comparison with 0" 2021-10-06 12:59:27 +00:00
backend [codegen] Change RegList into a class 2022-03-14 12:59:48 +00:00
ia32 [ia32] Use AVX for some Float ops if supported 2021-09-09 17:15:54 +00:00
loong64 [mips64][loong64][codegen] Sign-extend uint32 values to 64-bit 2021-09-30 07:53:06 +00:00
mips Move architecture dependent files 2019-05-28 14:02:15 +00:00
mips64 [mips64][loong64][codegen] Sign-extend uint32 values to 64-bit 2021-09-30 07:53:06 +00:00
ppc PPC: remove unused OWNERS files 2021-05-12 16:44:03 +00:00
regalloc [riscv64][register-alloc] Implement vector register independently allocating 2022-03-11 05:07:45 +00:00
riscv64 [riscv64] Improve unaligned memory accesses 2021-12-22 01:56:43 +00:00
s390 Move architecture dependent files 2019-05-28 14:02:15 +00:00
x64 [x64] Optimize F64x2PromoteLowF32x4 with S128Load64Zero 2021-09-17 16:52:23 +00:00
branch-elimination-unittest.cc [turbofan] Optimize traps after Merge/IfTrue/IfFalse 2021-10-01 05:05:15 +00:00
bytecode-analysis-unittest.cc [compiler] Make accumulator index 0 in liveness bitvectors 2022-02-14 10:15:06 +00:00
checkpoint-elimination-unittest.cc [cleanup] Refactor compiler to use default members. 2018-09-17 12:12:21 +00:00
common-operator-reducer-unittest.cc Reland [compiler] Simplify "==0" branches in MachineOperatorReducer 2022-03-18 09:45:15 +00:00
common-operator-unittest.cc [compiler] Fix typo in IfValueParameters operator== 2021-01-11 11:15:14 +00:00
compiler-test-utils.h [turbofan] Drop V8_TURBOFAN_BACKEND and V8_TURBOFAN_TARGET defines. 2015-08-10 07:17:34 +00:00
constant-folding-reducer-unittest.cc [compiler] Fix --trace-turbo-reduction in the presence of direct reads 2020-09-11 17:21:43 +00:00
control-equivalence-unittest.cc [test][cleanup] Fix -Wshadow warnings in unittests 2021-09-27 08:59:01 +00:00
control-flow-optimizer-unittest.cc [turbofan] introduce a deterministic tick measurement and assert optimization doesn't take too long 2019-07-17 07:00:00 +00:00
csa-load-elimination-unittest.cc [turbofan] Fix CsaLoadElimination for small types 2021-03-11 11:09:06 +00:00
dead-code-elimination-unittest.cc [compiler] Remove most instances of DisallowHeapAccessIf scope 2021-06-25 08:52:24 +00:00
decompression-optimizer-unittest.cc [compiler] Rename type BailoutId to BytecodeOffset 2021-01-20 13:03:41 +00:00
diamond-unittest.cc [cleanup] [compiler] Fix (D)CHECK macros 2017-09-25 10:21:34 +00:00
effect-control-linearizer-unittest.cc Remove the turboprop implementation 2022-01-20 12:31:39 +00:00
frame-unittest.cc Reland "Reland "Reland "[compiler][wasm] Align Frame slots to value size""" 2021-03-05 19:49:19 +00:00
graph-reducer-unittest.cc [test][cleanup] Fix -Wshadow warnings in unittests 2021-09-27 08:59:01 +00:00
graph-reducer-unittest.h [unittests] Convert to the new MOCK_METHOD macro. 2020-06-10 15:50:38 +00:00
graph-trimmer-unittest.cc [turbofan] Proper dead code elimination as regular reducer. 2015-06-19 12:07:26 +00:00
graph-unittest.cc [compiler] Remove support for --no-concurrent-inlining 2022-01-17 11:29:48 +00:00
graph-unittest.h [turbofan] introduce a deterministic tick measurement and assert optimization doesn't take too long 2019-07-17 07:00:00 +00:00
int64-lowering-unittest.cc [turbofan] Disallow floating control in wasm 2021-05-12 15:26:33 +00:00
js-call-reducer-unittest.cc Revert "factory: Move FeedbackVector construction to type" 2022-01-21 17:09:16 +00:00
js-create-lowering-unittest.cc [compiler] Change all JS operators to hold TinyRefs instead of handles 2021-08-05 12:32:38 +00:00
js-intrinsic-lowering-unittest.cc [interpreter] Remove unused interpreter intrinsics 2021-06-17 13:43:41 +00:00
js-native-context-specialization-unittest.cc [TurboFan] Fix max double string length in JSNativeContextSpecialization 2021-04-21 13:29:50 +00:00
js-operator-unittest.cc [tests] Fix subobject-linkage error when building with GCC 2019-10-07 11:11:39 +00:00
js-typed-lowering-unittest.cc [compiler] Remove support for --no-concurrent-inlining 2022-01-17 11:29:48 +00:00
linkage-tail-call-unittest.cc [codegen] Change RegList into a class 2022-03-14 12:59:48 +00:00
load-elimination-unittest.cc Retire PretenureFlag and use AllocationType everywhere. 2019-03-12 08:10:44 +00:00
loop-peeling-unittest.cc [test][cleanup] Fix -Wshadow warnings in unittests 2021-09-27 08:59:01 +00:00
machine-operator-reducer-unittest.cc [wasm] Optimize when Select's cond is a constant 2021-08-27 16:22:59 +00:00
machine-operator-unittest.cc [turbofan] Disallow floating control in wasm 2021-05-12 15:26:33 +00:00
node-cache-unittest.cc [turbofan] use ZoneUnorderedMap for NodeCache 2020-03-05 13:00:34 +00:00
node-matchers-unittest.cc [cleanup] Refactor compiler to use default members. 2018-09-17 12:12:21 +00:00
node-properties-unittest.cc [zone-compr] Add kCompressGraphZone constant 2020-07-24 08:50:11 +00:00
node-test-utils.cc [Compiler] Remove untrusted code mitigations. 2021-08-12 12:58:24 +00:00
node-test-utils.h [Compiler] Remove untrusted code mitigations. 2021-08-12 12:58:24 +00:00
node-unittest.cc [zone-compr] Add kCompressGraphZone constant 2020-07-24 08:50:11 +00:00
opcodes-unittest.cc [compiler] Refactor opcode macro lists 2020-06-23 07:54:14 +00:00
persistent-unittest.cc [ubsan] Fix numerical overflows in the compiler 2019-01-10 11:17:37 +00:00
redundancy-elimination-unittest.cc Revert "factory: Move FeedbackVector construction to type" 2022-01-21 17:09:16 +00:00
schedule-unittest.cc Reland "[zone-compr] Introduce ZoneTypeTraits and ZoneCompression" 2020-07-31 11:43:08 +00:00
scheduler-rpo-unittest.cc [test][cleanup] Fix -Wshadow warnings in unittests 2021-09-27 08:59:01 +00:00
scheduler-unittest.cc [zone-compr] Add kCompressGraphZone constant 2020-07-24 08:50:11 +00:00
simplified-lowering-unittest.cc [Compiler] Remove untrusted code mitigations. 2021-08-12 12:58:24 +00:00
simplified-operator-reducer-unittest.cc Reland [compiler] Simplify "==0" branches in MachineOperatorReducer 2022-03-18 09:45:15 +00:00
simplified-operator-unittest.cc [ptr-compr] Remove Compressed mentions from in the pipeline 2019-11-11 12:23:41 +00:00
state-values-utils-unittest.cc [compiler] Make accumulator index 0 in liveness bitvectors 2022-02-14 10:15:06 +00:00
typed-optimization-unittest.cc [compiler] Fix --trace-turbo-reduction in the presence of direct reads 2020-09-11 17:21:43 +00:00
typer-unittest.cc [test][cleanup] Fix -Wshadow warnings in unittests 2021-09-27 08:59:01 +00:00
value-numbering-reducer-unittest.cc Reland "[zone-compr] Introduce ZoneTypeTraits and ZoneCompression" 2020-07-31 11:43:08 +00:00
zone-stats-unittest.cc [zone] Cleanup zone allocations in src/compiler and tests, pt.3 2020-07-10 16:39:05 +00:00