[9] RFR(L) 8166417: Graal-core into JDK for AOT compiler

Christian Thalinger cthalinger at twitter.com
Fri Oct 28 21:41:07 UTC 2016


> On Oct 28, 2016, at 11:05 AM, Remi Forax <forax at univ-mlv.fr> wrote:
> 
> 
> 
> On October 28, 2016 7:11:05 PM GMT+02:00, Christian Thalinger <cthalinger at twitter.com> wrote:
>> 
>>> On Oct 27, 2016, at 11:20 PM, Volker Simonis
>> <volker.simonis at gmail.com> wrote:
>>> 
>>> On Thu, Oct 27, 2016 at 6:20 PM, Vladimir Kozlov
>>> <vladimir.kozlov at oracle.com <mailto:vladimir.kozlov at oracle.com>>
>> wrote:
>>>> AOT JEP:
>>>> https://bugs.openjdk.java.net/browse/JDK-8166089
>>>> Subtask:
>>>> https://bugs.openjdk.java.net/browse/JDK-8166417
>>>> Graal-core:
>>>> http://hg.openjdk.java.net/graal/graal-core/
>>>> Webrev:
>>>> http://cr.openjdk.java.net/~kvn/aot/graal.webrev/
>>>> 
>>>> This is last part of AOT project. AOT requires Graal-core to be part
>> of JDK.
>>>> AOT compiler uses Graal-core as backend compiler - we use its
>> ability to
>>>> generate immutable PIC code.
>>>> 
>>>> We are working with Oracle's Labs on this integration.
>>>> 
>>>> Meanwhile, if you want to experiment do next:
>>>> 
>>>> hg clone http://hg.openjdk.java.net/graal/graal-core/
>>>> 
>>>> apply patch from graal.webrev
>>>> 
>>>> cp graal-core/graal myjdk/hotspot/src/jdk.vm.compiler
>>>> 
>>> 
>>> The convention is that the directory name under "src/" (i.e.
>>> "jdk.vm.ci") corresponds to the package name of the contained sources
>>> (i.e. "jdk.vm.ci/share/classes/jdk.vm.ci.code/src/jdk/vm/ci/code”).
>> 
>> I don’t think that’s a convention.  There are plenty of examples that
>> say otherwise.  Also, you could drop another compiler in the same
>> module jdk.vm.compiler and things would just work.
> 
> That's the convention but obviously the jdk was not designed when modules were around thus the actual jdk modules do not respect that convention. 
> New modules should try to respect that convention.

Since it’s only a convention I wouldn’t do it.  Future merges with upstream Graal would be a major PITA.  Luckily I don’t have to do it...

> 
> Rémi 
> 
>> 
>>> 
>>> Following this convention, the graal sources should either be copied
>>> to myjdk/hotspot/src/com.oracle.graal/share/classes or the graal
>> packe
>>> should be renamed to jdk.vm.compiler. And then there's still the
>>> package com.oracle.nfi which would require a separate sub-dir under
>>> hotspot/src if it wouldn't be moved into com.oracle.graal...
>>> 
>>>> After that you can build JDK with AOT.
>>>> 
>>>> Thanks,
>>>> Vladimir
> 
> -- 
> Sent from my Android device with K-9 Mail. Please excuse my brevity.



More information about the hotspot-dev mailing list