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/

/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.joels...@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.


Reply via email to