Loading arch/tile/kernel/intvec_32.S +1 −1 Original line number Diff line number Diff line Loading @@ -1609,7 +1609,7 @@ ENTRY(sys_cmpxchg) * Because of C pointer arithmetic, we want to compute this: * * ((char*)atomic_locks + * (((r0 >> 3) & (1 << (ATOMIC_HASH_SIZE - 1))) << 2)) * (((r0 >> 3) & ((1 << ATOMIC_HASH_SHIFT) - 1)) << 2)) * * Instead of two shifts we just ">> 1", and use 'mm' * to ignore the low and high bits we don't want. Loading Loading
arch/tile/kernel/intvec_32.S +1 −1 Original line number Diff line number Diff line Loading @@ -1609,7 +1609,7 @@ ENTRY(sys_cmpxchg) * Because of C pointer arithmetic, we want to compute this: * * ((char*)atomic_locks + * (((r0 >> 3) & (1 << (ATOMIC_HASH_SIZE - 1))) << 2)) * (((r0 >> 3) & ((1 << ATOMIC_HASH_SHIFT) - 1)) << 2)) * * Instead of two shifts we just ">> 1", and use 'mm' * to ignore the low and high bits we don't want. Loading