set_release (762f99f4f3cb41a775b5157dd761217beba65873) set_release (dc1b4df09acdca7a89806b28f235cd6d8dcd3d24)
1cat <<EOF
2static __always_inline void
3arch_${atomic}_set_release(${atomic}_t *v, ${int} i)
4{
1cat <<EOF
2static __always_inline void
3arch_${atomic}_set_release(${atomic}_t *v, ${int} i)
4{
5 smp_store_release(&(v)->counter, i);
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 }
6}
7EOF
11}
12EOF