Lines Matching +full:non +full:- +full:volatile
1 /* SPDX-License-Identifier: GPL-2.0 */
8 * arch___set_bit - Set a bit in memory
12 * Unlike set_bit(), this function is non-atomic and may be reordered.
17 arch___set_bit(unsigned int nr, volatile unsigned long *addr) in arch___set_bit()
27 arch___clear_bit(unsigned int nr, volatile unsigned long *addr) in arch___clear_bit()
37 * arch___change_bit - Toggle a bit in memory
41 * Unlike change_bit(), this function is non-atomic and may be reordered.
46 void arch___change_bit(unsigned int nr, volatile unsigned long *addr) in arch___change_bit()
56 * arch___test_and_set_bit - Set a bit and return its old value
60 * This operation is non-atomic and can be reordered.
65 arch___test_and_set_bit(unsigned int nr, volatile unsigned long *addr) in arch___test_and_set_bit()
77 * arch___test_and_clear_bit - Clear a bit and return its old value
81 * This operation is non-atomic and can be reordered.
86 arch___test_and_clear_bit(unsigned int nr, volatile unsigned long *addr) in arch___test_and_clear_bit()
97 /* WARNING: non atomic and it can be reordered! */
99 arch___test_and_change_bit(unsigned int nr, volatile unsigned long *addr) in arch___test_and_change_bit()
111 * arch_test_bit - Determine whether a bit is set
116 arch_test_bit(unsigned int nr, const volatile unsigned long *addr) in arch_test_bit()
118 return 1UL & (addr[BIT_WORD(nr)] >> (nr & (BITS_PER_LONG-1))); in arch_test_bit()