diff options
| author | Olivier Houchard <cognet@FreeBSD.org> | 2004-11-23 16:32:34 +0000 |
|---|---|---|
| committer | Olivier Houchard <cognet@FreeBSD.org> | 2004-11-23 16:32:34 +0000 |
| commit | 25a252899e3ac7756af2e3ba57d645c1b016733c (patch) | |
| tree | 06ab6114d6886de4c6eb5ae1e6aa366d6336197e | |
| parent | a27952c1a947f39c538997ad0b04d9a20a732d78 (diff) | |
Notes
| -rw-r--r-- | libexec/rtld-elf/arm/rtld_machdep.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libexec/rtld-elf/arm/rtld_machdep.h b/libexec/rtld-elf/arm/rtld_machdep.h index 8e841e0e319f..cc1410cd4fab 100644 --- a/libexec/rtld-elf/arm/rtld_machdep.h +++ b/libexec/rtld-elf/arm/rtld_machdep.h @@ -70,4 +70,15 @@ typedef struct { void _rtld_bind_start(void); extern void *__tls_get_addr(tls_index *ti); + +static __inline u_int32_t +atomic_cmpset_32(volatile u_int32_t *p, u_int32_t cmpval, u_int32_t newval) +{ + + if (*p == cmpval) { + *p = newval; + return (1); + } + return (0); +} #endif |
