Looks good to me.
Few minor comment:
* traceFileStream (and even the preexisting mainArgument) is accessed
only inside GenerateJLIClassesPlugin. Could be private?
-Sundar
On 04/09/20 3:41 am, Yumin Qi wrote:
HI, Mandy
Thanks for review and comment.
Yumin
On 9/3/20 9:13 AM, Mandy Chung wrote:
On 9/3/20 8:36 AM, Yumin Qi wrote:
Hi, Please review
bug: https://bugs.openjdk.java.net/browse/JDK-8252725
webrev: http://cr.openjdk.java.net/~minqi/2020/8252725/webrev-01/
Looks good to me. Sundar should also review it.
A few things to mention compared to the proposed patch from 8247536:
we no longer log the error case for LF_RESOLVE since it's ignored
anyway. As the code is moved to java.lang.invoke, we also clean up
the code to use constants and methods defined in LambdaForm and
MethodTypeForm and BasicType (rather than duplicating such definitions).
Mandy
Summary: The work is part of 8247536, which supports archive
pre-generated java.lang.invoke classes in CDS. In this patch (thanks
to Mandy):
1. Two methods for tracing SPECIES_RESOLVE and LF_RESOLVE are added
to GenerateJLIClassesHelper: traceSpeciesType and traceLambdaForm
respectively;
2. Move log file parsing work to java.lang.InvokeJLIClassesHelper;
3. Clean up interface APIs since old APIs no longer used with the
moving;
4. New API JavaLangInvokeAccess::generateHolderClassesreturns a map
of class name, which in internal form as key rather than the jimage
entry point, vs class bytes.
This makes both JLI and CDS can use the new interface easily. CDS
will add a new function (in 8247536 patch, only for convenience for
converting the map to array) to GenerateJLIClassesHelper to call the
new added interface API (generateHolderClasses)to regenerate holder
classes during dump time.
Thanks
Yumin