1*a325d9c4SApple OSS Distributions#!/usr/bin/sed -nEf 2*a325d9c4SApple OSS Distributions 3*a325d9c4SApple OSS Distributions# 4*a325d9c4SApple OSS Distributions# Rules go 3 by 3: 5*a325d9c4SApple OSS Distributions# 6*a325d9c4SApple OSS Distributions# 1. try to rewrite `bitmap_t * __indexable foo` 7*a325d9c4SApple OSS Distributions# into `bitmap_t *foo` removing all spaces. 8*a325d9c4SApple OSS Distributions# 9*a325d9c4SApple OSS Distributions# 2. try to rewrite `static inline bitmap_t * __indexable` 10*a325d9c4SApple OSS Distributions# into `static inline bitmap_t *` collapsing redundant spaces. 11*a325d9c4SApple OSS Distributions# 12*a325d9c4SApple OSS Distributions# 3. just eliminate all other kinds of use of the keyword that missed (1) or (2). 13*a325d9c4SApple OSS Distributions# 14*a325d9c4SApple OSS Distributionss/\* *(__bidi_indexable|__indexable|__single|__unsafe_indexable) /*/g 15*a325d9c4SApple OSS Distributionss/ (__bidi_indexable|__indexable|__single|__unsafe_indexable)( |$)/\2/g 16*a325d9c4SApple OSS Distributionss/(__bidi_indexable|__indexable|__single|__unsafe_indexable)//g 17*a325d9c4SApple OSS Distributions 18*a325d9c4SApple OSS Distributions# 19*a325d9c4SApple OSS Distributions# Those are approximate because matching parenthesis requires a C parser. 20*a325d9c4SApple OSS Distributions# There's a bound-attributes-check.pl that will make sure we didn't leave any. 21*a325d9c4SApple OSS Distributions# 22*a325d9c4SApple OSS Distributionss/\* *(__counted_by|__sized_by|__ended_by)\([^()]*\)/*/g 23*a325d9c4SApple OSS Distributionss/ (__counted_by|__sized_by|__ended_by)\([^()]*\)( |$)/\2/g 24*a325d9c4SApple OSS Distributionss/(__counted_by|__sized_by|__ended_by)\([^()]*\)//g 25*a325d9c4SApple OSS Distributions 26*a325d9c4SApple OSS Distributions/^__ASSUME_PTR_ABI_SINGLE_BEGIN$/d 27*a325d9c4SApple OSS Distributions/^__ASSUME_PTR_ABI_SINGLE_END$/d 28*a325d9c4SApple OSS Distributionss/ __ASSUME_PTR_ABI_SINGLE_BEGIN//g 29*a325d9c4SApple OSS Distributionss/ __ASSUME_PTR_ABI_SINGLE_END$//g 30*a325d9c4SApple OSS Distributionss/__ASSUME_PTR_ABI_SINGLE_BEGIN //g 31*a325d9c4SApple OSS Distributionss/__ASSUME_PTR_ABI_SINGLE_END //g 32*a325d9c4SApple OSS Distributions 33*a325d9c4SApple OSS Distributions# 34*a325d9c4SApple OSS Distributions# Finally, print lines we didn't suppress 35*a325d9c4SApple OSS Distributions# 36*a325d9c4SApple OSS Distributionsp 37