diff options
author | ian <ian@FreeBSD.org> | 2014-09-09 13:50:21 +0000 |
---|---|---|
committer | ian <ian@FreeBSD.org> | 2014-09-09 13:50:21 +0000 |
commit | b62cc0fb26b7643fce1cdd341b5bcec9a6c3c38a (patch) | |
tree | bb74e9cb73b2a38bcc33c0e8762c2b9576c075f7 /sys/arm | |
parent | 57ec24a023145729ad2c562ae66559bcc3de8fbd (diff) | |
download | FreeBSD-src-b62cc0fb26b7643fce1cdd341b5bcec9a6c3c38a.zip FreeBSD-src-b62cc0fb26b7643fce1cdd341b5bcec9a6c3c38a.tar.gz |
Rename new to newval in inline asm code, to avoid clashes with C++ new.
Also rename cmp to cmpval just to keep the asm variable names similar to
the C variable names.
Diffstat (limited to 'sys/arm')
-rw-r--r-- | sys/arm/include/atomic.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/arm/include/atomic.h b/sys/arm/include/atomic.h index a62ca00..b3af198 100644 --- a/sys/arm/include/atomic.h +++ b/sys/arm/include/atomic.h @@ -268,12 +268,12 @@ atomic_cmpset_64(volatile uint64_t *p, uint64_t cmpval, uint64_t newval) __asm __volatile( "1: \n" " ldrexd %[tmp], [%[ptr]]\n" - " teq %Q[tmp], %Q[cmp]\n" + " teq %Q[tmp], %Q[cmpval]\n" " itee eq \n" - " teqeq %R[tmp], %R[cmp]\n" + " teqeq %R[tmp], %R[cmpval]\n" " movne %[ret], #0\n" " bne 2f\n" - " strexd %[ret], %[new], [%[ptr]]\n" + " strexd %[ret], %[newval], [%[ptr]]\n" " teq %[ret], #0\n" " it ne \n" " bne 1b\n" @@ -282,8 +282,8 @@ atomic_cmpset_64(volatile uint64_t *p, uint64_t cmpval, uint64_t newval) : [ret] "=&r" (ret), [tmp] "=&r" (tmp) : [ptr] "r" (p), - [cmp] "r" (cmpval), - [new] "r" (newval) + [cmpval] "r" (cmpval), + [newval] "r" (newval) : "cc", "memory"); return (ret); } |