1ace9bad4SMark Rutlandcat <<EOF 2ace9bad4SMark Rutland ${int} r, o = *old; 3*9257959aSMark Rutland r = raw_${atomic}_cmpxchg${order}(v, o, new); 4ace9bad4SMark Rutland if (unlikely(r != o)) 5ace9bad4SMark Rutland *old = r; 6ace9bad4SMark Rutland return likely(r == o); 7ace9bad4SMark RutlandEOF 8