RFR: Store cpu features in AOTCodeCache header [v12]
Ashutosh Mehra
asmehra at openjdk.org
Thu Aug 7 21:00:11 UTC 2025
> This is the initial version of storing cpu features in the AOTCodeCache to verify runtime env has the same cpu capabilities as the assembly env. It covers both x86 and aarch64.
> AOTCodeCache header is updated to store the cpu features in arch-dependent form (although its same for currently supported architectures - x86 and aarch64).
>
> It also fixes a bug - the `polling_page_vectors_safepoint_handler_blob` can be null if AVX is not present on a system. This causes crash as this blob's entry point is stored in the address table.
> I came across this when I did the assembly run with -XX:UseAVX=0 option.
Ashutosh Mehra has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 21 commits:
- Merge branch 'premain' into aot-cache-feature-flags
- Add ResourceMark
Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
- Merge JDK-8364128 and remove changes not required
Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
- Fix missing closing parenthesis
Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
- Add changes missed for vm_version_bsd_aarch64.cpp
Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
- Merge branch 'premain' into aot-cache-feature-flags
- Fix incorrect return type
Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
- Fix whitespace issue
Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
- Add dianostic option AOTCodeCPUFeatureCheck to disable cpu feature check
Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
- Update cpu feature incompatibility test
Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
- ... and 11 more: https://git.openjdk.org/leyden/compare/7b7648a4...fc06719e
-------------
Changes: https://git.openjdk.org/leyden/pull/84/files
Webrev: https://webrevs.openjdk.org/?repo=leyden&pr=84&range=11
Stats: 581 lines in 14 files changed: 390 ins; 51 del; 140 mod
Patch: https://git.openjdk.org/leyden/pull/84.diff
Fetch: git fetch https://git.openjdk.org/leyden.git pull/84/head:pull/84
PR: https://git.openjdk.org/leyden/pull/84
More information about the leyden-dev
mailing list