RFR(S) 8204209: [Graal] Compilation fails during nmethod printing with "assert(bci == 0 || 0 <= bci && bci < code_size()) failed: illegal bci"
Vladimir Kozlov
vladimir.kozlov at oracle.com
Fri Jun 22 05:02:03 UTC 2018
It is a little confusing that BeforeBci is the same as
SynchronizationEntryBCI. In nmethod.cpp you check
SynchronizationEntryBCI while in jvmciCodeInstaller.cpp you check
BEFORE_BCI. So one is for legacy Hotspot code and BeforeBci is for Graal
code. Right?
Spacing of '\' is wrong in jvmciJavaClasses.hpp.
How you chose the order of fields in jvmciJavaClasses.hpp? Can it be the
same as order of values in MethodCompilation (compilerDefinitions.hpp)?
Thanks,
Vladimir
On 6/21/18 9:33 PM, Igor Veresov wrote:
> After discussing this with Tom, we decided that it would be a bad idea
> to change values of final static fields as this would break
> compatibility (since javac inlines these values). So, for now, we’d have
> to do re-mapping.
>
> Webrev: http://cr.openjdk.java.net/~iveresov/8204209/webrev.01
>
> Thanks,
> igor
>
>> On Jun 18, 2018, at 10:12 PM, Vladimir Kozlov
>> <vladimir.kozlov at oracle.com <mailto:vladimir.kozlov at oracle.com>> wrote:
>>
>> CCing to runtime group.
>>
>> Seems fine to me.
>>
>> Thanks,
>> Vladimir
>>
>> On 6/18/18 6:28 PM, Igor Veresov wrote:
>>> Make hotspot tolerate negative placeholder BCIs that are produced by
>>> Graal.
>>> Should this fix be deemed acceptable I’ll backport it to graal-jvmci-8.
>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8204209
>>> Webrev: http://cr.openjdk.java.net/~iveresov/8204209/webrev/
>>> Thanks,
>>> igor
>
More information about the hotspot-compiler-dev
mailing list