read_acquire 190 B

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