JDK-8293336 : AOT-linking of invokedynamic for lambda expression and string concat
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 20
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2022-09-03
  • Updated: 2024-11-15
  • Resolved: 2024-11-15
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 24
24Resolved
Related Reports
Blocks :  
Blocks :  
Blocks :  
Blocks :  
Duplicate :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
Resolution of dynamic bytecodes such as invokedynamic and invokehandle requires the creation of many objects such as LambdaForm, MethodType, MethodHandle, etc. Also, in many cases, LambdaForm${MH,DMH} classes are generated dynamically. 

The goal is this RFE is to improve start-up time by generate all these resolution artifacts ahead-of-time during CDS archive creation.
Comments
Fixed as part of JDK-8331497: Implement JEP 483: Ahead-of-Time Class Loading & Linking
15-11-2024

A pull request was submitted for review. Branch: pr/20959 URL: https://git.openjdk.org/jdk/pull/21143 Date: 2024-09-23 18:45:49 +0000
22-10-2024

The current work-in-progress uses the AOTHolder pattern as described in https://mail.openjdk.org/pipermail/leyden-dev/2024-August/000911.html This pattern could be adapted to use @StableValue as proposed in https://openjdk.org/jeps/8312611
17-09-2024