From 27bf42cd9d85e242f1ffac8d99330da120c8dfdb Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Fri, 11 Mar 2016 00:02:10 -0500 Subject: [PATCH] make mips64 a_sc_p atomic primitive's asm constraints work with clang apparently clang does not accept matching-register input and output constraints that differ in size (32-bit vs 64-bit). based on patch by Jaydeep Patil. --- arch/mips64/atomic_arch.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/mips64/atomic_arch.h b/arch/mips64/atomic_arch.h index 49d9884a..8664e11c 100644 --- a/arch/mips64/atomic_arch.h +++ b/arch/mips64/atomic_arch.h @@ -31,7 +31,7 @@ static inline void *a_ll_p(volatile long *p) #define a_sc_p a_sc_p static inline int a_sc_p(volatile long *p, void *v) { - int r; + long r; __asm__ __volatile__ ( "scd %0, %1" : "=r"(r), "=m"(*p) : "0"(v) : "memory"); -- 2.25.1