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

David Holmes david.holmes at oracle.com
Wed Aug 26 03:21:35 UTC 2015

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.


> 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