diff options
author | Gordana Cmiljanovic <gordana.cmiljanovic@imgtec.com> | 2015-02-09 14:04:24 +0100 |
---|---|---|
committer | Gordana Cmiljanovic <gordana.cmiljanovic@imgtec.com> | 2015-02-09 14:04:24 +0100 |
commit | b61b0c330428fbc8ec92bb295b9836e577d46d63 (patch) | |
tree | f9a9c701bc0413c31fa655caa5264bfcf156950c /src/google | |
parent | 2e5123a3998dc0d2fcfdf72d562bd0fc13e19be0 (diff) | |
download | protobuf-b61b0c330428fbc8ec92bb295b9836e577d46d63.tar.gz protobuf-b61b0c330428fbc8ec92bb295b9836e577d46d63.tar.bz2 protobuf-b61b0c330428fbc8ec92bb295b9836e577d46d63.zip |
MIPS: remove immediate constraint within CompareAndSwap.
Improper use of immediate constraint is slightly non-optimal with gcc/gnu-as
but may cause breakage with clang.
Diffstat (limited to 'src/google')
-rw-r--r-- | src/google/protobuf/stubs/atomicops_internals_mips_gcc.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/google/protobuf/stubs/atomicops_internals_mips_gcc.h b/src/google/protobuf/stubs/atomicops_internals_mips_gcc.h index e3cd14cf..f5837c9e 100644 --- a/src/google/protobuf/stubs/atomicops_internals_mips_gcc.h +++ b/src/google/protobuf/stubs/atomicops_internals_mips_gcc.h @@ -65,7 +65,7 @@ inline Atomic32 NoBarrier_CompareAndSwap(volatile Atomic32* ptr, "2:\n" ".set pop\n" : "=&r" (prev), "=m" (*ptr), "=&r" (tmp) - : "Ir" (old_value), "r" (new_value), "m" (*ptr) + : "r" (old_value), "r" (new_value), "m" (*ptr) : "memory"); return prev; } @@ -197,7 +197,7 @@ inline Atomic64 NoBarrier_CompareAndSwap(volatile Atomic64* ptr, "2:\n" ".set pop\n" : "=&r" (prev), "=m" (*ptr), "=&r" (tmp) - : "Ir" (old_value), "r" (new_value), "m" (*ptr) + : "r" (old_value), "r" (new_value), "m" (*ptr) : "memory"); return prev; } |