RFR: 8342651: Refactor array constant to use an array of jbyte
Quan Anh Mai
qamai at openjdk.org
Sun Oct 20 11:44:19 UTC 2024
Hi,
This small patch refactors array constants in C2 to use an array of `jbyte`s instead of an array of `jvalue`. The former is much easier to work with and we can do `memcpy` with them trivially.
Since code buffers support alignment of the constant section, I have also allowed constant tables to be aligned more than 8 bytes and used it for constant vectors on machines not supporting `SSE3`. I also fixed an issue with code buffer relocation where the temporary buffer is not correctly aligned.
This patch is extracted from https://github.com/openjdk/jdk/pull/21229. Tests passed with `UseSSE=2` where 16-byte constants would be generated, as well as normal testing routines.
Please take a look and leave your reviews, thanks a lot.
-------------
Commit messages:
- refactor array constant, fix codebuffer reallocation
Changes: https://git.openjdk.org/jdk/pull/21596/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21596&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8342651
Stats: 169 lines in 8 files changed: 74 ins; 44 del; 51 mod
Patch: https://git.openjdk.org/jdk/pull/21596.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/21596/head:pull/21596
PR: https://git.openjdk.org/jdk/pull/21596
More information about the hotspot-compiler-dev
mailing list