[aarch64-port-dev ] Build failure: invalid register name for ‘r_exchange_value’

Aleksey Shipilev shade at redhat.com
Thu Dec 7 15:00:03 UTC 2017


Hi,

Seeing weird build failures in aarch64/jdk8u and aarch64/jdk8u-shenandoah during aarch64
cross-compilation:

/pool/buildbot/slaves/sobornost/jdk8u-rh-int/build/hotspot/src/os_cpu/linux_aarch64/vm/atomic_linux_aarch64.inline.hpp:
In member function ‘void AccessFlags::atomic_set_bits(jint)’:
/pool/buildbot/slaves/sobornost/jdk8u-rh-int/build/hotspot/src/os_cpu/linux_aarch64/vm/atomic_linux_aarch64.inline.hpp:128:18:
error: invalid register name for ‘r_exchange_value’
    register jint r_exchange_value asm("w0") = exchange_value;
                  ^~~~~~~~~~~~~~~~

Seems to be coming from:

changeset:   9155:7fc149d14601
user:        enevill
date:        Tue Mar 29 10:07:54 2016 +0000
summary:     8151775: aarch64: add support for 8.1 LSE atomic operations

Bugreport mentions the fix had come to jdk9:
  http://hg.openjdk.java.net/jdk9/jdk9/hotspot/rev/03fb00b96355

What is concerning is that the change in aarch64/8u is *different*, it has the assembly block where
the build fails:
  http://hg.openjdk.java.net/aarch64-port/jdk8u/hotspot/rev/7fc149d14601

What's going on here? Shouldn't aarch64-port version be closer to jdk9? Edward?

Thanks,
-Aleksey




More information about the aarch64-port-dev mailing list