Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8256831

MIPS Zero builds fail with undefined __atomic_compare_exchange_8

XMLWordPrintable

    • b27

      If you try to build linux-mipsel-zero-fastdebug, this happens:

      /home/shade/jdk/build/linux-mipsel-zero-fastdebug/hotspot/variant-zero/libjvm/objs/jvmtiRedefineClasses.o: In function `unsigned long long Atomic::PlatformCmpxchg<8u>::operator()<unsigned long long>(unsigned long long volatile*, unsigned long long, unsigned long long, atomic_memory_order) const':
      /home/shade/jdk/src/hotspot/os_cpu/linux_zero/atomic_linux_zero.hpp:130: undefined reference to `__atomic_compare_exchange_8'
      /home/shade/jdk/src/hotspot/os_cpu/linux_zero/atomic_linux_zero.hpp:130: undefined reference to `__atomic_compare_exchange_8'
      /home/shade/jdk/src/hotspot/os_cpu/linux_zero/atomic_linux_zero.hpp:130: undefined reference to `__atomic_compare_exchange_8'
      /home/shade/jdk/src/hotspot/os_cpu/linux_zero/atomic_linux_zero.hpp:130: undefined reference to `__atomic_compare_exchange_8'

      I think it relates to JDK-8253970 that introduced atomic_compare_exchange on those paths, but maybe the issue exists for longer. GCC's libatomic is the library that provides runtime support for atomics not supported in hardware, which seems to include 8-byte CAS for MIPS, but not any other OpenJDK platform.

            shade Aleksey Shipilev
            shade Aleksey Shipilev
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: