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