mirror of
git://sourceware.org/git/glibc.git
synced 2025-03-07 13:28:05 +08:00
Since Clang can't remove the dead statement and issues an error: tst-atomic.c:463:7: error: unsupported inline asm: input with type 'int64_t' (aka 'long') matching output with type 'typeof (*&mem)' (aka 'int') 463 | if (catomic_exchange_and_add (&mem, 11) != 2 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../sysdeps/x86/atomic-machine.h:213:3: note: expanded from macro 'catomic_exchange_and_add' 213 | __arch_exchange_and_add_body (__arch_exchange_and_add_cprefix, __arch_c, \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 214 | mem, value) | ~~~~~~~~~~~ ../sysdeps/x86/atomic-machine.h:199:12: note: expanded from macro '__arch_exchange_and_add_body' 198 | : "=r" (__result), "=m" (*mem) \ | ~~~~~~~~ 199 | : "0" ((int64_t) cast_to_integer (__addval)), \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tst-atomic.c:487:7: error: unsupported inline asm: input with type 'int64_t' (aka 'long') matching output with type 'typeof (*(&mem))' (aka 'int') 487 | if (catomic_increment_val (&mem) != 3) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../include/atomic.h:313:38: note: expanded from macro 'catomic_increment_val' 313 | # define catomic_increment_val(mem) (catomic_exchange_and_add ((mem), 1) + 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../sysdeps/x86/atomic-machine.h:213:3: note: expanded from macro 'catomic_exchange_and_add' 213 | __arch_exchange_and_add_body (__arch_exchange_and_add_cprefix, __arch_c, \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 214 | mem, value) | ~~~~~~~~~~~ ../sysdeps/x86/atomic-machine.h:199:12: note: expanded from macro '__arch_exchange_and_add_body' 198 | : "=r" (__result), "=m" (*mem) \ | ~~~~~~~~ 199 | : "0" ((int64_t) cast_to_integer (__addval)), \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tst-atomic.c:501:7: error: unsupported inline asm: input with type 'int64_t' (aka 'long') matching output with type 'typeof (*(&mem))' (aka 'int') 501 | if (catomic_decrement_val (&mem) != 15) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../include/atomic.h:340:38: note: expanded from macro 'catomic_decrement_val' 340 | # define catomic_decrement_val(mem) (catomic_exchange_and_add ((mem), -1) - 1) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ../sysdeps/x86/atomic-machine.h:213:3: note: expanded from macro 'catomic_exchange_and_add' 213 | __arch_exchange_and_add_body (__arch_exchange_and_add_cprefix, __arch_c, \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 214 | mem, value) | ~~~~~~~~~~~ ../sysdeps/x86/atomic-machine.h:199:12: note: expanded from macro '__arch_exchange_and_add_body' 198 | : "=r" (__result), "=m" (*mem) \ | ~~~~~~~~ 199 | : "0" ((int64_t) cast_to_integer (__addval)), \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mark tst-atomic.c as UNSUPPORTED when compiled with Clang. Signed-off-by: H.J. Lu <hjl.tools@gmail.com> Reviewed-by: Sam James <sam@gentoo.org> |
||
---|---|---|
.. | ||
bits | ||
sys | ||
tst-syslog-long-progname.root | ||
acct.c | ||
allocate_once.c | ||
ar.h | ||
atomic_wide_counter.c | ||
brk.c | ||
bug18240.c | ||
bug-hsearch1.c | ||
chflags.c | ||
chroot.c | ||
daemon.c | ||
dirname.c | ||
efgcvt_r-template.c | ||
efgcvt_r.c | ||
efgcvt-dbl-macros.h | ||
efgcvt-ldbl-macros.h | ||
efgcvt-template.c | ||
efgcvt.c | ||
err.c | ||
err.h | ||
error.c | ||
error.h | ||
fchflags.c | ||
fd_to_filename.c | ||
fdatasync.c | ||
fgetxattr.c | ||
flistxattr.c | ||
fremovexattr.c | ||
fsetxattr.c | ||
fstab.c | ||
fstab.h | ||
fsync.c | ||
ftruncate64.c | ||
ftruncate.c | ||
futimes.c | ||
futimesat.c | ||
getauxval.c | ||
getclktck.c | ||
getdomain.c | ||
getdtsz.c | ||
gethostid.c | ||
gethostname.c | ||
getloadavg.c | ||
getpagesize.c | ||
getpass.c | ||
getsysstats.c | ||
getttyent.c | ||
getusershell.c | ||
getxattr.c | ||
gtty.c | ||
hsearch_r.c | ||
hsearch.c | ||
ifunc-impl-list.c | ||
init-misc.c | ||
insremque.c | ||
ioctl.c | ||
lgetxattr.c | ||
libgen.h | ||
listxattr.c | ||
llistxattr.c | ||
lremovexattr.c | ||
lsearch.c | ||
lsetxattr.c | ||
lutimes.c | ||
madvise.c | ||
makedev.c | ||
Makefile | ||
mincore.c | ||
mkdtemp.c | ||
mkostemp64.c | ||
mkostemp.c | ||
mkostemps64.c | ||
mkostemps.c | ||
mkstemp64.c | ||
mkstemp.c | ||
mkstemps64.c | ||
mkstemps.c | ||
mktemp.c | ||
mlock.c | ||
mlockall.c | ||
mmap64.c | ||
mmap.c | ||
mntent_r.c | ||
mntent.c | ||
mntent.h | ||
mprotect.c | ||
msync.c | ||
munlock.c | ||
munlockall.c | ||
munmap.c | ||
preadv2.c | ||
preadv64.c | ||
preadv64v2.c | ||
preadv.c | ||
pselect.c | ||
ptrace.c | ||
pwritev2.c | ||
pwritev64.c | ||
pwritev64v2.c | ||
pwritev.c | ||
qefgcvt_r.c | ||
qefgcvt.c | ||
readv.c | ||
reboot.c | ||
regexp.c | ||
regexp.h | ||
remap_file_pages.c | ||
removexattr.c | ||
revoke.c | ||
sbrk.c | ||
search.h | ||
select.c | ||
setdomain.c | ||
setegid.c | ||
seteuid.c | ||
sethostid.c | ||
sethostname.c | ||
setregid.c | ||
setreuid.c | ||
setxattr.c | ||
sgtty.h | ||
single_threaded.c | ||
sstk.c | ||
stab.h | ||
stty.c | ||
swapoff.c | ||
swapon.c | ||
sync.c | ||
syncfs.c | ||
syscall.c | ||
syscall.h | ||
sysexits.h | ||
syslog.c | ||
syslog.h | ||
truncate64.c | ||
truncate.c | ||
tsearch.c | ||
tst-allocate_once.c | ||
tst-atomic-long.c | ||
tst-atomic.c | ||
tst-dbl-efgcvt.c | ||
tst-dirname.c | ||
tst-efgcvt-template.c | ||
tst-empty.c | ||
tst-error1.c | ||
tst-fd_to_filename.c | ||
tst-fdset.c | ||
tst-gethostid.c | ||
tst-hsearch.c | ||
tst-insremque.c | ||
tst-ioctl-time64.c | ||
tst-ioctl.c | ||
tst-ldbl-efgcvt.c | ||
tst-ldbl-error.c | ||
tst-ldbl-errorfptr.c | ||
tst-ldbl-warn.c | ||
tst-makedev.c | ||
tst-mkstemp-fuse-parallel.c | ||
tst-mkstemp-fuse.c | ||
tst-mntent2.c | ||
tst-mntent-autofs.c | ||
tst-mntent-blank-corrupt.c | ||
tst-mntent-blank-passno.c | ||
tst-mntent-escape.c | ||
tst-mntent.c | ||
tst-mremap1.c | ||
tst-mremap2.c | ||
tst-preadvwritev2-common.c | ||
tst-preadvwritev2.c | ||
tst-preadvwritev64.c | ||
tst-preadvwritev64v2.c | ||
tst-preadvwritev-common.c | ||
tst-preadvwritev.c | ||
tst-pselect-time64.c | ||
tst-pselect.c | ||
tst-select-time64.c | ||
tst-select.c | ||
tst-syscalls.c | ||
tst-syslog-long-progname.c | ||
tst-syslog.c | ||
tst-tsearch.c | ||
tst-warn-wide.c | ||
ttyent.h | ||
ttyslot.c | ||
ualarm.c | ||
unwind-link.c | ||
usleep.c | ||
ustat.c | ||
utimes.c | ||
Versions | ||
vhangup.c | ||
writev.c |