projects/linux·blob master · refs

12 lines · 190 B

1cat <<EOF
2 ${int} ret;
3
4 if (__native_word(${atomic}_t)) {
5 ret = smp_load_acquire(&(v)->counter);
6 } else {
7 ret = raw_${atomic}_read(v);
8 __atomic_acquire_fence();
9 }
10
11 return ret;
12EOF