[10] RFR(M) 8182701: Modify JVMCI to allow Graal Compiler to expose platform MBean

Vladimir Kozlov vladimir.kozlov at oracle.com
Fri Aug 18 18:49:44 UTC 2017

Updated changes in all repos: http://cr.openjdk.java.net/~kvn/8182701/webrev.01/

On 8/18/17 7:12 AM, Jaroslav Tulach wrote:

Thanks for pushing me forward, Vladimir. Yes, the changes are still needed if
we want the Graal compiler to expose its MBean in a lazy way. I am offering
new webrev for review. It contains following changes:

Per Mandy's suggestion I created new module jdk.vm.ci.management to bridge between
JVMCI and jdk.management. Adding new module was a bit tricky, but with great help of Jan
Lahoda I even managed to register it as a boot module.

I renamed the JVMCIMXBean class and dropped X per Vladimir's advice. I fixed
the non-standard location of JVMCIMXBean class.

I changed the interface to use Map, so the compiler is able to expose more
than a single bean.

That's it. I am looking forward to your review comments.

Here are original changes for reference:


On 8/17/17 11:54 AM, Vladimir Kozlov wrote:
> Hi Jaroslav,
> What we should do with 8182701? Do you still need JVMCI changes?
> Note, your changes to Graal [GR-5435] were integrated recently into JDK (jdk10/hs):
> https://bugs.openjdk.java.net/browse/JDK-8186158
> Thanks,
> Vladimir
> On 8/14/17 10:06 AM, Jaroslav Tulach wrote:
>> On čtvrtek 3. srpna 2017 17:03:39 CEST Jaroslav Tulach wrote:
>>> On čtvrtek 27. července 2017 15:01:17 CEST Alan Bateman wrote:
>>>> On 27/07/2017 10:07, Jaroslav Tulach wrote:
>>>>> Yes, it seems like a desirable goal to let Graal compiler work with just
>>>>> java.base. Is there a description how to build JDK9/10 with just
>>>>> java.base
>>>>> that I could follow and test against?
>>>> You can use jlink to create a run-time image that only contains
>>>> java.base (jlink --module-path $JAVA_HOME/jmods --add-modules java.base
>>>> --output smalljre).
>>> Status update: I've just tried to run Graal compiler against JDK9 with only
>>> java.base and jdk.internal.vm.ci modules, and there are some problems. I
>>> need to resolve them first before I provide updated version of my patch.
>> FYI: As of
>> https://github.com/graalvm/graal/commit/ca9071941a1be7f1a3725529ecc231ff621d5ed0
>> the Graal compiler can run with java.base, jdk.unsupported and jdk.vm.ci only
>> modules. But it wasn't easy, especially the http://wiki.apidesign.org/wiki/PropertyChangeListener required a bit of work.
>> -jt

More information about the core-libs-dev mailing list