RFR: 8327624: Remove VM implementation that bypass verification for core reflection [v2]
ExE Boss
duke at openjdk.org
Sat Oct 19 11:55:52 UTC 2024
On Thu, 17 Oct 2024 22:44:05 GMT, Mandy Chung <mchung at openjdk.org> wrote:
>> The old core reflection implementation generates dynamic classes that are special cases in the VM to bypass bytecode verification to workaround various issues [1] [2] [3].
>>
>> The old core reflection implementation was [removed in JDK 22](https://bugs.openjdk.org/browse/JDK-8305104). It's time to remove these VM hacks along with the old implementation of `sun.reflect.ReflectionFactory::newConstructorForSerialization`.
>>
>> After this change, `jdk.internal.reflect.DelegatingClassLoader` no longer exists. Hence the special metaspace for reflection is no longer needed. GTests will need to be updated when `Metaspace::ReflectionMetaspaceType` is removed. Such clean up can be done separately (JDK-8342561).
>>
>> [1] [JDK-4486457](https://bugs.openjdk.org/browse/JDK-4486457)
>> [2] [JDK-4474172](https://bugs.openjdk.org/browse/JDK-4474172)
>> [3] [JDK-6790209](https://bugs.openjdk.org/browse/JDK-6790209)
>
> Mandy Chung has updated the pull request incrementally with one additional commit since the last revision:
>
> Remove unused classes
Does this mean that [JDK‑4486457] will finally be able to be made public?
[JDK‑4486457]: https://bugs.openjdk.org/browse/JDK-4486457
-------------
PR Review: https://git.openjdk.org/jdk/pull/21571#pullrequestreview-2379243219
More information about the core-libs-dev
mailing list