diff options
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Headers/Intrin.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Headers/Intrin.h b/clang/lib/Headers/Intrin.h index 8b7550ca1f2..5b00e3c8fe4 100644 --- a/clang/lib/Headers/Intrin.h +++ b/clang/lib/Headers/Intrin.h @@ -497,7 +497,7 @@ _bittestandreset(long *a, long b) { static __inline__ unsigned char __attribute__((__always_inline__, __nodebug__)) _bittestandset(long *a, long b) { unsigned char x = (*a >> b) & 1; - *a = *a & (1 << b); + *a = *a | (1 << b); return x; } #ifdef __x86_64__ @@ -546,7 +546,7 @@ _bittestandreset64(__int64 *a, __int64 b) { static __inline__ unsigned char __attribute__((__always_inline__, __nodebug__)) _bittestandset64(__int64 *a, __int64 b) { unsigned char x = (*a >> b) & 1; - *a = *a & (1ll << b); + *a = *a | (1ll << b); return x; } #endif |

