[12] RFR(S) 8209165: [GRAAL] Skip Graal build if C1 is not present

Liu Xin navy.xliu at gmail.com
Thu Aug 9 17:12:43 UTC 2018


Hi, Vladimir, 

I think that one single JIT is good to pinpoint the problem. 
Why not just allow Graal-only there. You don’t need to run all tests for Graal-only hotspot. 

I understand that Graal itself needs to JIT itself. libgraal.so is AOT result of Graal itself, right? 
Is it easy to do that?  I can take a shot.  If you have the compiled graal, you will revert this commit. 

Thanks,
—lx 


> On Aug 8, 2018, at 10:22 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
> 
> http://cr.openjdk.java.net/~kvn/8209165/webrev.00/
> https://bugs.openjdk.java.net/browse/JDK-8209165
> 
> Graal Java JIT requires C1 compiler to compile Graal's methods. Otherwise it takes long time to compile application's hot methods because Graal have to compile itself and run in Interpreter until then. Some tests timeout in such configuration.
> 
> I assume when people build Hotspot without C1 they want to have only C2 and don't care about Graal.
> I suggest to not build Graal's module in such case (it save space). We will enable Graal build later when libgraal.so is available regardless C1 presence because it will not depend on it.
> 
> Also generation of graalunit libraries should be guarded by presence of Graal. Currently Hotspot VM features setup done after libraries are set:
> http://hg.openjdk.java.net/jdk/jdk/file/554bb4e2d10d/make/autoconf/configure.ac#l219
> 
> But we can fix it by reverting changes done by JDK-8171008 when AOT was dependent on presence of libelf:
> http://hg.openjdk.java.net/jdk/jdk/rev/4780f4130eb0
> 
> Currently I don't see any dependencies on libraries in hotspot.m4
> 
> Testing by running tier1-3 tests without C1.
> 
> -- 
> Thanks,
> Vladimir




More information about the build-dev mailing list