set_release 242 B

123456789101112
  1. cat <<EOF
  2. static __always_inline void
  3. arch_${atomic}_set_release(${atomic}_t *v, ${int} i)
  4. {
  5. if (__native_word(${atomic}_t)) {
  6. smp_store_release(&(v)->counter, i);
  7. } else {
  8. __atomic_release_fence();
  9. arch_${atomic}_set(v, i);
  10. }
  11. }
  12. EOF