mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
xen/arm32: __cmpxchg_mb should be marked always_inline
Currently __cmpxchg_mb is only marked inline. The compiler can decide to not inline this function. In this case, the call to __cmpxchg will be inlined but not optimised. This will result linking failure because of __bad_cmpxchg. Caught by clang 3.5. Signed-off-by: Julien Grall <julien.grall@linaro.org> Acked-by: Ian Campbell <ian.campbell@citrix.com>
This commit is contained in:
1 parent
7d53525589
commit
d2b4c27c07
1 file changed
+3
-2
@@ -112,8 +112,9 @@ static always_inline unsigned long __cmpxchg(
|
||||
return oldval;
|
||||
}
|
||||
|
||||
static inline unsigned long __cmpxchg_mb(volatile void *ptr, unsigned long old,
|
||||
unsigned long new, int size)
|
||||
static always_inline unsigned long __cmpxchg_mb(volatile void *ptr,
|
||||
unsigned long old,
|
||||
unsigned long new, int size)
|
||||
{
|
||||
unsigned long ret;
|
||||
|
||||
|
||||