[9] RFR(S): 8086068: VM crashes with "-Xint -XX:+UseCompiler" options

Tobias Hartmann tobias.hartmann at oracle.com
Thu Apr 21 07:35:17 UTC 2016


Hi Vladimir,

thanks for the review!

On 20.04.2016 22:17, Vladimir Kozlov wrote:
> An other interesting combination is -Xshare:dump -Xcomp (or -XX:+UseCompiler) because -Xshare:dump tries to disable compilation.

With "-Xshare:dump -XX:+UseCompiler", UseCompiler is disabled by this fix.
With "-Xshare:dump -Xcomp", UseCompiler is enabled but no compilations are triggered because DumpSharedSpaces is set and no bytecode is executed.

I checked several other combinations and did not encounter any problems.
 
> I think the fix is good for -Xint -XX:+UseCompiler combination.

Okay, I'm going to push this with the changes Dmitry suggested.

Thanks,
Tobias

> 
> Thanks,
> Vladimir
> 
> On 4/20/16 7:22 AM, Tobias Hartmann wrote:
>> Hi Zoltan,
>>
>> On 20.04.2016 16:02, Zoltán Majó wrote:
>>> There are some other flags that are set to 'false' with -Xint (UseLoopCounter, AlwaysCompileLoopMethods, and UseOnStackReplacement). Do you know if re-enabling any of those causes problems?
>>
>> I checked and combining them with -Xint does not cause any problems because they are guarded by UseCompiler.
>>
>>> Otherwise it looks good to me.
>>
>> Thanks for the review!
>>
>> Best regards,
>> Tobias
>>
>>> Best regards,
>>>
>>>
>>> Zoltan
>>>
>>> On 04/20/2016 03:46 PM, Tobias Hartmann wrote:
>>>> Hi,
>>>>
>>>> please review the following patch:
>>>>
>>>> https://bugs.openjdk.java.net/browse/JDK-8086068
>>>> http://cr.openjdk.java.net/~thartmann/8086068/webrev.00/
>>>>
>>>> The VM crashes in product or fails with an assert in debug if -Xint and -XX:+UseCompiler is set. This is because CodeCache::heap_available() relies on the fact that if Arguments::mode() == _int, no compilation will be triggered. Although UseCompiler is first disabled by -Xint, the flag may be re-enabled if set via command line.
>>>>
>>>> The solution is to catch such an inconsistent flag combination, issue a warning and reset the flag.
>>>>
>>>> Tested with regression test and RBT (running).
>>>>
>>>> Thanks,
>>>> Tobias
>>>


More information about the hotspot-compiler-dev mailing list