add missing a_or_l to atomic.h for non-x86 archs
authorRich Felker <dalias@aerifal.cx>
Sun, 11 Aug 2013 07:43:25 +0000 (03:43 -0400)
committerRich Felker <dalias@aerifal.cx>
Sun, 11 Aug 2013 07:43:25 +0000 (03:43 -0400)
this is needed for recently committed sigaction code

arch/arm/atomic.h
arch/microblaze/atomic.h
arch/mips/atomic.h
arch/powerpc/atomic.h

index f434a0c652dea795ec9de531a899f16a0b76ed46..94efe5a0675c9f69f96dc390b4e8541c11f548d0 100644 (file)
@@ -97,6 +97,11 @@ static inline void a_or(volatile int *p, int v)
        while (a_cas(p, old, old|v) != old);
 }
 
+static inline void a_or_l(volatile void *p, long v)
+{
+       a_or(p, v);
+}
+
 static inline void a_and_64(volatile uint64_t *p, uint64_t v)
 {
        union { uint64_t v; uint32_t r[2]; } u = { v };
index ee7aa256c5dfa51eb70edb69d2b81a798d0d01c7..818bcc0ddf4113a1d941e896455634d530114162 100644 (file)
@@ -134,6 +134,11 @@ static inline void a_or(volatile int *p, int v)
        while (a_cas(p, old, old|v) != old);
 }
 
+static inline void a_or_l(volatile void *p, long v)
+{
+       a_or(p, v);
+}
+
 static inline void a_and_64(volatile uint64_t *p, uint64_t v)
 {
        union { uint64_t v; uint32_t r[2]; } u = { v };
index f3478ef2731ee916d50e7af0b6ca335e966dcece..69dcdf48153e2577ce8f867c9799c57a855549bf 100644 (file)
@@ -182,6 +182,11 @@ static inline void a_or(volatile int *p, int v)
                : "=&r"(dummy) : "r"(p), "r"(v) : "memory" );
 }
 
+static inline void a_or_l(volatile void *p, long v)
+{
+       a_or(p, v);
+}
+
 static inline void a_and_64(volatile uint64_t *p, uint64_t v)
 {
        union { uint64_t v; uint32_t r[2]; } u = { v };
index 4a47064a82ee133caaeffb8993d304d986d9eff4..d52ee0c6bfb90b520ef48c9497fa858fe9cd09c9 100644 (file)
@@ -100,6 +100,11 @@ static inline void a_or(volatile int *p, int v)
        while (a_cas(p, old, old|v) != old);
 }
 
+static inline void a_or_l(volatile void *p, long v)
+{
+       a_or(p, v);
+}
+
 static inline void a_and_64(volatile uint64_t *p, uint64_t v)
 {
        union { uint64_t v; uint32_t r[2]; } u = { v };