[llvm-bugs] [Bug 42535] New: Atomics support missing on 32-bit SPARC

via llvm-bugs llvm-bugs at lists.llvm.org
Mon Jul 8 04:26:51 PDT 2019


https://bugs.llvm.org/show_bug.cgi?id=42535

            Bug ID: 42535
           Summary: Atomics support missing on 32-bit SPARC
           Product: libraries
           Version: trunk
          Hardware: Sun
                OS: Solaris
            Status: NEW
          Keywords: missing-feature
          Severity: normal
          Priority: P
         Component: Backend: Sparc
          Assignee: unassignedbugs at nondot.org
          Reporter: ro at gcc.gnu.org
                CC: llvm-bugs at lists.llvm.org, venkatra at cs.wisc.edu

When trying a 2-stage build of llvm trunk on Solaris 11.5/SPARC, quite a number
of tests FAILed compared to a 1-stage build with gcc 9.  Many failed due to
missing atomics support in 32-bit sparc.  The problem can easily be seen with
the tests used in llvm `cmake/modules/CheckAtomic.cmake`:
```
$ cat atomic.c
#include <atomic>
std::atomic<int> x;
int main() {
  return x;
}
$ clang++ -m32 -std=c++11 atomic.c
 symbol                             in file
__atomic_load_4                     /var/tmp/atomics-04089b.o
ld: fatal: symbol referencing errors
clang-9: error: linker command failed with exit code 1 (use -v to see
invocation)
$ gcc -m32 -std=c++11 atomic.c
```
While I can hack the driver to link with `-latomics` to avoid this issue, it
would make way more sense if clang would handle this like gcc.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190708/b8b79885/attachment.html>


More information about the llvm-bugs mailing list