diff options
Diffstat (limited to 'arch/tile/include/asm/cmpxchg.h')
-rw-r--r-- | arch/tile/include/asm/cmpxchg.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/tile/include/asm/cmpxchg.h b/arch/tile/include/asm/cmpxchg.h index 276f067e3640..1da5bfbd8c61 100644 --- a/arch/tile/include/asm/cmpxchg.h +++ b/arch/tile/include/asm/cmpxchg.h | |||
@@ -68,6 +68,12 @@ extern unsigned long __cmpxchg_called_with_bad_pointer(void); | |||
68 | 68 | ||
69 | #define tas(ptr) (xchg((ptr), 1)) | 69 | #define tas(ptr) (xchg((ptr), 1)) |
70 | 70 | ||
71 | #define cmpxchg64(ptr, o, n) \ | ||
72 | ({ \ | ||
73 | BUILD_BUG_ON(sizeof(*(ptr)) != 8); \ | ||
74 | cmpxchg((ptr), (o), (n)); \ | ||
75 | }) | ||
76 | |||
71 | #endif /* __ASSEMBLY__ */ | 77 | #endif /* __ASSEMBLY__ */ |
72 | 78 | ||
73 | #endif /* _ASM_TILE_CMPXCHG_H */ | 79 | #endif /* _ASM_TILE_CMPXCHG_H */ |