CDDL fixes for MIPS n32.

Provide 64 bit atomic ops, and use 32 bit pointer.
This commit is contained in:
Jayachandran C. 2011-01-28 06:12:59 +00:00
parent d908c2d2a2
commit baa8c35cb4
2 changed files with 5 additions and 3 deletions

View File

@ -52,7 +52,7 @@ atomic_init(void)
}
#endif
#ifndef __LP64__
#if !defined(__LP64__) && !defined(__mips_n32)
void
atomic_add_64(volatile uint64_t *target, int64_t delta)
{

View File

@ -36,9 +36,11 @@
atomic_cmpset_ptr((volatile uintptr_t *)(_a), (uintptr_t)(_b), (uintptr_t) (_c))
#define cas32 atomic_cmpset_32
#ifndef __LP64__
#if !defined(__LP64__) && !defined(__mips_n32)
extern void atomic_add_64(volatile uint64_t *target, int64_t delta);
extern void atomic_dec_64(volatile uint64_t *target);
#endif
#ifndef __LP64__
extern void *atomic_cas_ptr(volatile void *target, void *cmp, void *newval);
#endif
#ifndef __sparc64__
@ -84,7 +86,7 @@ atomic_dec_32_nv(volatile uint32_t *target)
return (atomic_fetchadd_32(target, -1) - 1);
}
#ifdef __LP64__
#if defined(__LP64__) || defined(__mips_n32)
static __inline void
atomic_dec_64(volatile uint64_t *target)
{