1*19c3b8c2SApple OSS Distributions// To apply, at the top of xnu.git: 2*19c3b8c2SApple OSS Distributions// $ spatch --max-width=120 --use-gitgrep --in-place --include-headers --sp-file tools/cocci/OSAtomic_rewrite.cocci -dir . 3*19c3b8c2SApple OSS Distributions// 4*19c3b8c2SApple OSS Distributions// coccinelle insists on adding a space for (void) casts which can be fixed with: 5*19c3b8c2SApple OSS Distributions// $ git grep -l '(void) os_atomic' | xargs -n1 sed -i '' -e 's/(void) os_atomic/(void)os_atomic/' 6*19c3b8c2SApple OSS Distributions 7*19c3b8c2SApple OSS Distributions@@ expression E; @@ 8*19c3b8c2SApple OSS Distributions 9*19c3b8c2SApple OSS Distributions( 10*19c3b8c2SApple OSS Distributions- OSIncrementAtomic(E) 11*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 12*19c3b8c2SApple OSS Distributions| 13*19c3b8c2SApple OSS Distributions- OSIncrementAtomic8(E) 14*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 15*19c3b8c2SApple OSS Distributions| 16*19c3b8c2SApple OSS Distributions- OSIncrementAtomic16(E) 17*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 18*19c3b8c2SApple OSS Distributions| 19*19c3b8c2SApple OSS Distributions- OSIncrementAtomic32(E) 20*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 21*19c3b8c2SApple OSS Distributions| 22*19c3b8c2SApple OSS Distributions- OSIncrementAtomic64(E) 23*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 24*19c3b8c2SApple OSS Distributions| 25*19c3b8c2SApple OSS Distributions- OSIncrementAtomicLong(E) 26*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 27*19c3b8c2SApple OSS Distributions| 28*19c3b8c2SApple OSS Distributions- OSAddAtomic(1, E) 29*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 30*19c3b8c2SApple OSS Distributions| 31*19c3b8c2SApple OSS Distributions- OSAddAtomic8(1, E) 32*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 33*19c3b8c2SApple OSS Distributions| 34*19c3b8c2SApple OSS Distributions- OSAddAtomic16(1, E) 35*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 36*19c3b8c2SApple OSS Distributions| 37*19c3b8c2SApple OSS Distributions- OSAddAtomic32(1, E) 38*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 39*19c3b8c2SApple OSS Distributions| 40*19c3b8c2SApple OSS Distributions- OSAddAtomic64(1, E) 41*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 42*19c3b8c2SApple OSS Distributions| 43*19c3b8c2SApple OSS Distributions- OSAddAtomicLong(1, E) 44*19c3b8c2SApple OSS Distributions+ os_atomic_inc_orig(E, relaxed) 45*19c3b8c2SApple OSS Distributions| 46*19c3b8c2SApple OSS Distributions- OSDecrementAtomic(E) 47*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 48*19c3b8c2SApple OSS Distributions| 49*19c3b8c2SApple OSS Distributions- OSDecrementAtomic8(E) 50*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 51*19c3b8c2SApple OSS Distributions| 52*19c3b8c2SApple OSS Distributions- OSDecrementAtomic16(E) 53*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 54*19c3b8c2SApple OSS Distributions| 55*19c3b8c2SApple OSS Distributions- OSDecrementAtomic32(E) 56*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 57*19c3b8c2SApple OSS Distributions| 58*19c3b8c2SApple OSS Distributions- OSDecrementAtomic64(E) 59*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 60*19c3b8c2SApple OSS Distributions| 61*19c3b8c2SApple OSS Distributions- OSDecrementAtomicLong(E) 62*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 63*19c3b8c2SApple OSS Distributions| 64*19c3b8c2SApple OSS Distributions- OSAddAtomic(-1, E) 65*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 66*19c3b8c2SApple OSS Distributions| 67*19c3b8c2SApple OSS Distributions- OSAddAtomic8(-1, E) 68*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 69*19c3b8c2SApple OSS Distributions| 70*19c3b8c2SApple OSS Distributions- OSAddAtomic16(-1, E) 71*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 72*19c3b8c2SApple OSS Distributions| 73*19c3b8c2SApple OSS Distributions- OSAddAtomic32(-1, E) 74*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 75*19c3b8c2SApple OSS Distributions| 76*19c3b8c2SApple OSS Distributions- OSAddAtomic64(-1, E) 77*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 78*19c3b8c2SApple OSS Distributions| 79*19c3b8c2SApple OSS Distributions- OSAddAtomicLong(-1, E) 80*19c3b8c2SApple OSS Distributions+ os_atomic_dec_orig(E, relaxed) 81*19c3b8c2SApple OSS Distributions) 82*19c3b8c2SApple OSS Distributions 83*19c3b8c2SApple OSS Distributions@@ expression E, F; @@ 84*19c3b8c2SApple OSS Distributions 85*19c3b8c2SApple OSS Distributions( 86*19c3b8c2SApple OSS Distributions- OSAddAtomic(-F, E) 87*19c3b8c2SApple OSS Distributions+ os_atomic_sub_orig(E, F, relaxed) 88*19c3b8c2SApple OSS Distributions| 89*19c3b8c2SApple OSS Distributions- OSAddAtomic8(-F, E) 90*19c3b8c2SApple OSS Distributions+ os_atomic_sub_orig(E, F, relaxed) 91*19c3b8c2SApple OSS Distributions| 92*19c3b8c2SApple OSS Distributions- OSAddAtomic16(-F, E) 93*19c3b8c2SApple OSS Distributions+ os_atomic_sub_orig(E, F, relaxed) 94*19c3b8c2SApple OSS Distributions| 95*19c3b8c2SApple OSS Distributions- OSAddAtomic32(-F, E) 96*19c3b8c2SApple OSS Distributions+ os_atomic_sub_orig(E, F, relaxed) 97*19c3b8c2SApple OSS Distributions| 98*19c3b8c2SApple OSS Distributions- OSAddAtomic64(-F, E) 99*19c3b8c2SApple OSS Distributions+ os_atomic_sub_orig(E, F, relaxed) 100*19c3b8c2SApple OSS Distributions| 101*19c3b8c2SApple OSS Distributions- OSAddAtomicLong(-F, E) 102*19c3b8c2SApple OSS Distributions+ os_atomic_sub_orig(E, F, relaxed) 103*19c3b8c2SApple OSS Distributions| 104*19c3b8c2SApple OSS Distributions- OSAddAtomic(F, E) 105*19c3b8c2SApple OSS Distributions+ os_atomic_add_orig(E, F, relaxed) 106*19c3b8c2SApple OSS Distributions| 107*19c3b8c2SApple OSS Distributions- OSAddAtomic8(F, E) 108*19c3b8c2SApple OSS Distributions+ os_atomic_add_orig(E, F, relaxed) 109*19c3b8c2SApple OSS Distributions| 110*19c3b8c2SApple OSS Distributions- OSAddAtomic16(F, E) 111*19c3b8c2SApple OSS Distributions+ os_atomic_add_orig(E, F, relaxed) 112*19c3b8c2SApple OSS Distributions| 113*19c3b8c2SApple OSS Distributions- OSAddAtomic32(F, E) 114*19c3b8c2SApple OSS Distributions+ os_atomic_add_orig(E, F, relaxed) 115*19c3b8c2SApple OSS Distributions| 116*19c3b8c2SApple OSS Distributions- OSAddAtomic64(F, E) 117*19c3b8c2SApple OSS Distributions+ os_atomic_add_orig(E, F, relaxed) 118*19c3b8c2SApple OSS Distributions| 119*19c3b8c2SApple OSS Distributions- OSAddAtomicLong(F, E) 120*19c3b8c2SApple OSS Distributions+ os_atomic_add_orig(E, F, relaxed) 121*19c3b8c2SApple OSS Distributions| 122*19c3b8c2SApple OSS Distributions- OSBitOrAtomic(F, E) 123*19c3b8c2SApple OSS Distributions+ os_atomic_or_orig(E, F, relaxed) 124*19c3b8c2SApple OSS Distributions| 125*19c3b8c2SApple OSS Distributions- OSBitOrAtomic8(F, E) 126*19c3b8c2SApple OSS Distributions+ os_atomic_or_orig(E, F, relaxed) 127*19c3b8c2SApple OSS Distributions| 128*19c3b8c2SApple OSS Distributions- OSBitOrAtomic16(F, E) 129*19c3b8c2SApple OSS Distributions+ os_atomic_or_orig(E, F, relaxed) 130*19c3b8c2SApple OSS Distributions| 131*19c3b8c2SApple OSS Distributions- OSBitOrAtomic32(F, E) 132*19c3b8c2SApple OSS Distributions+ os_atomic_or_orig(E, F, relaxed) 133*19c3b8c2SApple OSS Distributions| 134*19c3b8c2SApple OSS Distributions- OSBitOrAtomic64(F, E) 135*19c3b8c2SApple OSS Distributions+ os_atomic_or_orig(E, F, relaxed) 136*19c3b8c2SApple OSS Distributions| 137*19c3b8c2SApple OSS Distributions- OSBitOrAtomicLong(F, E) 138*19c3b8c2SApple OSS Distributions+ os_atomic_or_orig(E, F, relaxed) 139*19c3b8c2SApple OSS Distributions| 140*19c3b8c2SApple OSS Distributions- OSBitXorAtomic(F, E) 141*19c3b8c2SApple OSS Distributions+ os_atomic_xor_orig(E, F, relaxed) 142*19c3b8c2SApple OSS Distributions| 143*19c3b8c2SApple OSS Distributions- OSBitXorAtomic8(F, E) 144*19c3b8c2SApple OSS Distributions+ os_atomic_xor_orig(E, F, relaxed) 145*19c3b8c2SApple OSS Distributions| 146*19c3b8c2SApple OSS Distributions- OSBitXorAtomic16(F, E) 147*19c3b8c2SApple OSS Distributions+ os_atomic_xor_orig(E, F, relaxed) 148*19c3b8c2SApple OSS Distributions| 149*19c3b8c2SApple OSS Distributions- OSBitXorAtomic32(F, E) 150*19c3b8c2SApple OSS Distributions+ os_atomic_xor_orig(E, F, relaxed) 151*19c3b8c2SApple OSS Distributions| 152*19c3b8c2SApple OSS Distributions- OSBitXorAtomic64(F, E) 153*19c3b8c2SApple OSS Distributions+ os_atomic_xor_orig(E, F, relaxed) 154*19c3b8c2SApple OSS Distributions| 155*19c3b8c2SApple OSS Distributions- OSBitXorAtomicLong(F, E) 156*19c3b8c2SApple OSS Distributions+ os_atomic_xor_orig(E, F, relaxed) 157*19c3b8c2SApple OSS Distributions| 158*19c3b8c2SApple OSS Distributions- OSBitAndAtomic(F, E) 159*19c3b8c2SApple OSS Distributions+ os_atomic_and_orig(E, F, relaxed) 160*19c3b8c2SApple OSS Distributions| 161*19c3b8c2SApple OSS Distributions- OSBitAndAtomic8(F, E) 162*19c3b8c2SApple OSS Distributions+ os_atomic_and_orig(E, F, relaxed) 163*19c3b8c2SApple OSS Distributions| 164*19c3b8c2SApple OSS Distributions- OSBitAndAtomic16(F, E) 165*19c3b8c2SApple OSS Distributions+ os_atomic_and_orig(E, F, relaxed) 166*19c3b8c2SApple OSS Distributions| 167*19c3b8c2SApple OSS Distributions- OSBitAndAtomic32(F, E) 168*19c3b8c2SApple OSS Distributions+ os_atomic_and_orig(E, F, relaxed) 169*19c3b8c2SApple OSS Distributions| 170*19c3b8c2SApple OSS Distributions- OSBitAndAtomic64(F, E) 171*19c3b8c2SApple OSS Distributions+ os_atomic_and_orig(E, F, relaxed) 172*19c3b8c2SApple OSS Distributions| 173*19c3b8c2SApple OSS Distributions- OSBitAndAtomicLong(F, E) 174*19c3b8c2SApple OSS Distributions+ os_atomic_and_orig(E, F, relaxed) 175*19c3b8c2SApple OSS Distributions) 176*19c3b8c2SApple OSS Distributions 177*19c3b8c2SApple OSS Distributions@@ expression E, F, A; @@ 178*19c3b8c2SApple OSS Distributions 179*19c3b8c2SApple OSS Distributions( 180*19c3b8c2SApple OSS Distributions- OSCompareAndSwap(F, E, A) 181*19c3b8c2SApple OSS Distributions+ os_atomic_cmpxchg(A, E, F, acq_rel) 182*19c3b8c2SApple OSS Distributions| 183*19c3b8c2SApple OSS Distributions- OSCompareAndSwapPtr(F, E, A) 184*19c3b8c2SApple OSS Distributions+ os_atomic_cmpxchg(A, E, F, acq_rel) 185*19c3b8c2SApple OSS Distributions| 186*19c3b8c2SApple OSS Distributions- OSCompareAndSwap8(F, E, A) 187*19c3b8c2SApple OSS Distributions+ os_atomic_cmpxchg(A, E, F, acq_rel) 188*19c3b8c2SApple OSS Distributions| 189*19c3b8c2SApple OSS Distributions- OSCompareAndSwap16(F, E, A) 190*19c3b8c2SApple OSS Distributions+ os_atomic_cmpxchg(A, E, F, acq_rel) 191*19c3b8c2SApple OSS Distributions| 192*19c3b8c2SApple OSS Distributions- OSCompareAndSwap32(F, E, A) 193*19c3b8c2SApple OSS Distributions+ os_atomic_cmpxchg(A, E, F, acq_rel) 194*19c3b8c2SApple OSS Distributions| 195*19c3b8c2SApple OSS Distributions- OSCompareAndSwap64(F, E, A) 196*19c3b8c2SApple OSS Distributions+ os_atomic_cmpxchg(A, E, F, acq_rel) 197*19c3b8c2SApple OSS Distributions| 198*19c3b8c2SApple OSS Distributions- OSCompareAndSwapLong(F, E, A) 199*19c3b8c2SApple OSS Distributions+ os_atomic_cmpxchg(A, E, F, acq_rel) 200*19c3b8c2SApple OSS Distributions) 201*19c3b8c2SApple OSS Distributions 202*19c3b8c2SApple OSS Distributions// vim:ft=diff: 203