[master] RFR: 8319185: [Lilliput] Enable and fix vectorization tests

Roman Kennke rkennke at openjdk.org
Tue Nov 21 11:00:01 UTC 2023


The change does two (related) things:
- It white-lists the UseCompactObjectHeaders flag in the IR testing framework. Without this, the flag would not be passed through to any IR framework test.
- That first change makes 3 tests fail. Those are all vectorization tests, and they are failing because 'small' array types (4-byte-elements and smaller) no longer have their elements aligned at 8-byte-boundaries. This throws off vectorization because this only kicks in on aligned accesses. The fix is to allocate those arrays a little larger and align-up the test data to the next 8-byte-boundary. (And no, Lilliput does not break vectorization in general, but it can change the characteristics in particular cases.)

Testing:
 - [x] compiler/c2/irTests/TestVectorizationMismatchedAccess.java +UCOH
 - [x] compiler/c2/irTests/TestVectorizationNotRun.java +UCOH
 - [x] compiler/loopopts/superword/TestIndependentPacksWithCyclicDependency.java +UCOH
 - [x] compiler/c2/irTests/TestVectorizationMismatchedAccess.java -UCOH
 - [x] compiler/c2/irTests/TestVectorizationNotRun.java -UCOH
 - [x] compiler/loopopts/superword/TestIndependentPacksWithCyclicDependency.java -UCOH
 - [x] tier1 +UCOH
 - [x] tier1 -UCOH

-------------

Commit messages:
 - More whitespace fixes
 - Untabify test
 - 8319185: [Lilliput] Enable and fix vectorization tests

Changes: https://git.openjdk.org/lilliput/pull/118/files
 Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=118&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8319185
  Stats: 95 lines in 4 files changed: 57 ins; 0 del; 38 mod
  Patch: https://git.openjdk.org/lilliput/pull/118.diff
  Fetch: git fetch https://git.openjdk.org/lilliput.git pull/118/head:pull/118

PR: https://git.openjdk.org/lilliput/pull/118


More information about the lilliput-dev mailing list