RFR: 8341094: Clean up relax_verify in ClassFileParser [v3]
Ioi Lam
iklam at openjdk.org
Tue Nov 12 05:47:57 UTC 2024
On Fri, 8 Nov 2024 12:18:59 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:
>> Removed ClassFileParser::_relax_verify and cleaned up setting need_verify in the ClassFileStream code and ClassFileParser. Wrote up how I found control to flow to this setting with -Xverify:all/none/remote settings, which become BytecodeVerificationRemote/Local in the CR comments.
>>
>> Tested with tier1-4. Valid class, field and method name testing is done through the JCK and there are CDS tests that test verification in runtime/cds/appcds/VerifierTest.java.
>
> Coleen Phillimore has updated the pull request incrementally with one additional commit since the last revision:
>
> Unexpose the ClassFileStream's need_verify field. It's used internally based on what ClassFileParser gets for the answer based on the BytecodeVerificationnRemote/Local flags and the class loader.
Why do we need `ClassFileStream::_need_verify`? Is it for performance? If so, we are making a trade off here -- boot classes will be marginally faster, but non-boot classes will be marginally slower. Assuming that large apps load many more non-boot classes than boot classes, this seems counter productive.
Maybe we should get rid of `ClassFileStream::_need_verify` altogether?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/21954#issuecomment-2469658407
More information about the hotspot-runtime-dev
mailing list