RFR: JDK-8134157: adlc fails to compile with SS12u4

David Holmes david.holmes at oracle.com
Wed Aug 26 12:45:19 UTC 2015

On 26/08/2015 9:44 PM, Erik Joelsson wrote:
> Further investigation revealed that this "error" was actually just a
> warning being upgraded to error by -errwarn. The warning is only
> activated by +w, which is turned on for adlc but not for the rest of the
> hotspot build. Based on this, I have revised my proposal to just
> disabling this warning for adlc and the particular compiler version.
> Webrev: http://cr.openjdk.java.net/~erikj/8134157/webrev.01/

Sorry but as per bug report I still object to simply hiding this problem 
when we don't understand it. The code did not change and the compiler 
option did not change, but the new compiler gives this strange warning 
the implications of which are unclear.


> /Erik
> On 2015-08-26 05:21, David Holmes wrote:
>> On 26/08/2015 4:13 AM, Kim Barrett wrote:
>>> On Aug 25, 2015, at 10:27 AM, Erik Joelsson
>>> <erik.joelsson at oracle.com> wrote:
>>>> Hello,
>>>> We are working towards upgrading the officially supported compilers
>>>> for JDK 9 and on Solaris, the proposed new compiler is Solaris
>>>> Studio 12 update 4. When attempting to build with that compiler, the
>>>> hotspot build fails very early with:
>>>> "/opt/jprt/jprtadm/erik/jdk9-dev/hotspot/src/share/vm/adlc/adlparse.cpp",
>>>> line 2331: Error: Could not find source for
>>>> RegisterForm::addRegClass<RegClass>(const char*).
>>>> This can be worked around by adding -template=extdef to the compiler
>>>> flags. I propose we add this just when compiling adlc and for this
>>>> particular version of Solaris Studio. See bug for further discussion
>>>> of the issue.
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8134157
>>>> Webrev: http://cr.openjdk.java.net/~erikj/8134157/webrev/
>>>> /Erik
>>> I don’t think we should make this change.
>> Agreed. The need for the change makes no sense as nothing has changed:
>> the code hasn't changed and the use of this flag has not changed.
>> Hence this seems to be a compiler issue.
>> David
>> ----
>>> I think a better alternative than mixing different -template options
>>> would be to change adlc to use the “include model” for template
>>> usage, as discussed in comments in the bug report.
>>> Also as discussed in the bug report, I don’t think we fully
>>> understand the problem, since there appears to be other code in
>>> hotspot that looks very similar and seemingly ought to run into the
>>> same problem.  If only changing adlc as described doesn’t trip over
>>> the same problem with that other code, then I don’t think we actually
>>> understand the problem yet, and can’t evaluate proposed solutions.

More information about the hotspot-dev mailing list