[9] RFR(M) 8166416: [AOT] Integrate JDK build changes and launcher 'jaotc' for AOT compiler

Christian Thalinger cthalinger at twitter.com
Thu Oct 27 18:19:08 UTC 2016


> On Oct 27, 2016, at 8:12 AM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
> 
> On 10/27/16 10:55 AM, Christian Thalinger wrote:
>> 
>>> On Oct 27, 2016, at 2:40 AM, Erik Joelsson <erik.joelsson at oracle.com> wrote:
>>> 
>>> 
>>> 
>>> On 2016-10-27 02:45, Vladimir Kozlov wrote:
>>>> AOT JEP:
>>>> https://bugs.openjdk.java.net/browse/JDK-8166089
>>>> Subtask:
>>>> https://bugs.openjdk.java.net/browse/JDK-8166416
>>>> Webrev:
>>>> http://cr.openjdk.java.net/~kvn/aot/top.webrev/
>>> hotspot.m4: 296: Comment is misleading. Should just be removed.
>>> 
>>> CompileJavaModules.gmk: Use of -g flag for java compilation is controlled globally. Please remove.
>> 
>> There is a reason for that.  Some debugging related Graal code makes use of classfile information to provide better information.  Since this is Java and not C++ it *is* possible to have pleasant debugging experience even in product builds.  I want this to be there.
> 
> Chris, do we need -g for JVMCI module too for that?

Yes.

> 
> And do we need -Xlint:-exports for jdk.vm.compiler (Graal)? FOR JVMCI it was added by:
> 
> http://hg.openjdk.java.net/jdk9/hs/rev/81435a812f59 <http://hg.openjdk.java.net/jdk9/hs/rev/81435a812f59>

I can’t remember what the reason for -Xlint was but… wait.  That was added 3 weeks ago.  No clue then.

> 
> Thanks,
> Vladimir
> 
>> 
>>> 
>>> Main.gmk: buildtools-hotspot should be declared inside the CREATING_BUILDJDK conditional like all other buildtools targets.
>>> 
>>>> http://cr.openjdk.java.net/~kvn/aot/jdk.webrev/
>>> The extra exports from java.base needs to go in a new jdk/src/java.base/share/classes/module-info.java.extra since the module jdk.vm.compiler is optional.
>>>> http://cr.openjdk.java.net/~kvn/aot/hs.make.webrev/
>>> Lib-jdk.aot.gmk: Please inline LDFLAGS and LIBS and add $(LIBS_JDKLIB) to LIBS since that will provide -lc on Solaris automatically. No need to set DEBUG_SYMBOLS or STRIP_SYMBOLS as the defaults should be correct and controlled globally.
>>> 
>>> /Erik
>>>> 
>>>> Please, review build changes for AOT.  Only Linux/x64 platform is supported. 'jaotc' and AOT part of Hotspot will be build only on Linux/x64.
>>>> 
>>>> Changes include new 'jaotc' launcher, makefile changes to build jdk.vm.compiler (Graal) and jdk.aot modules used by 'jaotc'.
>>>> Both modules sources are located in Hotspot: hotspot/src/jdk.aot and hotspot/src/jdk.vm.compiler.
>>>> 'jaotc' requires installed libelf package on a system to build native part of 'jaotc'. It is used to generated AOT shared libraries (.so) as result of AOT compilation.
>>>> 
>>>> Hotspot makefile changes will be pushed together with Hotspot AOT changes.
>>>> 
>>>> Thanks,
>>>> Vladimir




More information about the build-dev mailing list