https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110553
Bug ID: 110553
Summary: -fsanitize=undefined needs -latomic on
powerpc-unknown-linux-gnu
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: sanitizer
Assignee: unassigned at gcc dot gnu.org
Reporter: sjames at gcc dot gnu.org
CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org,
jakub at gcc dot gnu.org, kcc at gcc dot gnu.org, marxin at
gcc dot gnu.org
Target Milestone: ---
```
#include <stdio.h>
int main (void) {
printf("hi\r\n");
}
```
```
$ gcc /tmp/foo.c -o /tmp/foo -fsanitize=undefined
/usr/lib/gcc/powerpc-unknown-linux-gnu/13/../../../../powerpc-unknown-linux-gnu/bin/ld:
/usr/lib/gcc/powerpc-unknown-linux-gnu/13/libubsan.so: undefined reference to
`__atomic_compare_exchange_8'
/usr/lib/gcc/powerpc-unknown-linux-gnu/13/../../../../powerpc-unknown-linux-gnu/bin/ld:
/usr/lib/gcc/powerpc-unknown-linux-gnu/13/libubsan.so: undefined reference to
`__atomic_load_8'
collect2: error: ld returned 1 exit status
```
```
$ gcc /tmp/foo.c -o /tmp/foo -fsanitize=undefined -latomic # works
```
```
$ nm -D /usr/lib/gcc/powerpc-unknown-linux-gnu/13/libubsan.so | grep -i atomic
U __atomic_compare_exchange_8
U __atomic_load_8
```
While in this instance I can inject -latomic, it's a pain to try do that for
various configure tests.