RFR(S): 8145331: SEGV in DirectivesStack::release(DirectiveSet*)

Nils Eliasson nils.eliasson at oracle.com
Thu Jan 14 19:21:10 UTC 2016

On 2016-01-14 19:55, Christian Thalinger wrote:
> It would be nice if we somehow could detect if we are using C2 or not.  I mean this is sufficient:
> +             // Dont bother check JVMCI compiler - returns false on all intrinsics.
> +             if (!Boolean.valueOf(getVMOption("UseJVMCICompiler"))) {
> but we are doing the reverse test:  we should be testing for isC2() not !isJVMCI().
Yes, we should really get away from using the messy 
complevel-to-compiler-translation in these test and iterate over the 
available compilers instead. That would allow for having different 
compilers behind the JVMCI interface too.

Thanks for having a look,

> Anyway, that is a different issue.  This change looks good.
>> On Jan 14, 2016, at 2:44 AM, Nils Eliasson <nils.eliasson at oracle.com> wrote:
>> Hi,
>> Please review this patch:
>> Description:
>> In the fix for JDK-8144873 I updated only one of the two use cases of CompilerDirectives::get_for(AbstractCompiler..)
>> Summary:
>> I simplify CompilerDirectives::get_for(..) to always return the c1_store for all unsupported cases. Makes getMatchingDirective and getDefaultDirective simpler too. Moved refcount out of get_for(...) since it is not guaranteed to be used if updated here.
>> Testing:
>> All intrinsic tests and all compilercontrol tests in addition to testset hotspot.
>> IntrinsicAvailableTest is updated to not check JVMCI compiler for intrinsics.
>> IntrinsicDisabledTest.jtr doesn't work with JVMCI - no action taken
>> NullCheckDroppingsTest.jtr doesn't work - since JVMCI doesn't support BackgroudCompilation - no action taken
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8145331
>> Webrev: http://cr.openjdk.java.net/~neliasso/8145331/webrev.01/
>> Regards,
>> Nils Eliasson

More information about the hotspot-compiler-dev mailing list