diff options
author | 2024-08-15 07:40:38 +0000 | |
---|---|---|
committer | 2024-08-16 15:44:10 +0000 | |
commit | 2e593076d3db504d68298ff3b9ec04e26202b2fb (patch) | |
tree | 74023cbc5fc39ec9a817cb2bf207b89e2932e341 /compiler/optimizing/stack_map_test.cc | |
parent | 30970448e676c29c283d7b43a2f5115abc004ca0 (diff) |
ART: Clean up loop construction in gtests.
Define and use helper functions for creating loops and
linear loop variables.
Also remove a dead `HAdd` from one BCE test and change a
copy-pasted BCE test for `a[i %200]` to actually test that
case (which also reverses the expectation).
This change adds extra blocks to some tests, for example
empty loop pre-headers, additional return blocks with
`HReturnVoid` and a single-goto block to split a critical
edge (in `BubbleSortArrayBoundsElimination`). It also adds
some extra `HGoto` and `HReturnVoid` instructions and
reorders some instructions (linear loop variable
increments are added earlier).
LSE test helper function `CreateTestControlFlowGraph()`
was changed to reorder successors, effectively changing
i = 0; do { ... } while (i++ >=128);
to
i = 0; do { ... } while (i++ < 128);
with no impact on the tests using it.
`SuperblockClonerTest.IndividualInstrCloner` now clones one
additional `HGoto`.
Test: m test-art-host-gtest
Change-Id: Ie53b07429e62159dee7bfc719c59e06d2609a70e
Diffstat (limited to 'compiler/optimizing/stack_map_test.cc')
0 files changed, 0 insertions, 0 deletions