-static
-uint32_t bmw_small_s0(uint32_t x){
- uint32_t r;
- r = SHR32(x, 1)
- ^ SHL32(x, 3)
- ^ ROTL32(x, 4)
- ^ ROTR32(x, 13);
- return r;
-}
-
-static
-uint32_t bmw_small_s1(uint32_t x){
- uint32_t r;
- r = SHR32(x, 1)
- ^ SHL32(x, 2)
- ^ ROTL32(x, 8)
- ^ ROTR32(x, 9);
- return r;
-}
-
-static
-uint32_t bmw_small_s2(uint32_t x){
- uint32_t r;
- r = SHR32(x, 2)
- ^ SHL32(x, 1)
- ^ ROTL32(x, 12)
- ^ ROTR32(x, 7);
- return r;
-}
-
-static
-uint32_t bmw_small_s3(uint32_t x){
- uint32_t r;
- r = SHR32(x, 2)
- ^ SHL32(x, 2)
- ^ ROTL32(x, 15)
- ^ ROTR32(x, 3);
- return r;
-}
-
-static
-uint32_t bmw_small_s4(uint32_t x){
- uint32_t r;
- r = SHR32(x, 1)
- ^ x;
- return r;
-}
-
-static
-uint32_t bmw_small_s5(uint32_t x){
- uint32_t r;
- r = SHR32(x, 2)
- ^ x;
- return r;
-}
-
-static
-uint32_t bmw_small_r1(uint32_t x){
- uint32_t r;
- r = ROTL32(x, 3);
- return r;
-}
-
-static
-uint32_t bmw_small_r2(uint32_t x){
- uint32_t r;
- r = ROTL32(x, 7);
- return r;
-}
-
-static
-uint32_t bmw_small_r3(uint32_t x){
- uint32_t r;
- r = ROTL32(x, 13);
- return r;
-}
-
-static
-uint32_t bmw_small_r4(uint32_t x){
- uint32_t r;
- r = ROTL32(x, 16);
- return r;
-}
-
-static
-uint32_t bmw_small_r5(uint32_t x){
- uint32_t r;
- r = ROTR32(x, 13);
- return r;
-}
-
-static
-uint32_t bmw_small_r6(uint32_t x){
- uint32_t r;
- r = ROTR32(x, 9);
- return r;
-}
-
-static
-uint32_t bmw_small_r7(uint32_t x){
- uint32_t r;
- r = ROTR32(x, 5);
- return r;
-}
+#define S32_0(x) ( (SHR32((x), 1)) ^ \
+ (SHL32((x), 3)) ^ \
+ (ROTL32((x), 4)) ^ \
+ (ROTR32((x), 13)) )
+
+#define S32_1(x) ( (SHR32((x), 1)) ^ \
+ (SHL32((x), 2)) ^ \
+ (ROTL32((x), 8)) ^ \
+ (ROTR32((x), 9)) )
+
+#define S32_2(x) ( (SHR32((x), 2)) ^ \
+ (SHL32((x), 1)) ^ \
+ (ROTL32((x), 12)) ^ \
+ (ROTR32((x), 7)) )
+
+#define S32_3(x) ( (SHR32((x), 2)) ^ \
+ (SHL32((x), 2)) ^ \
+ (ROTL32((x), 15)) ^ \
+ (ROTR32((x), 3)) )
+
+#define S32_4(x) ( (SHR32((x), 1)) ^ (x))
+
+#define S32_5(x) ( (SHR32((x), 2)) ^ (x))
+
+#define R32_1(x) (ROTL32((x), 3))
+#define R32_2(x) (ROTL32((x), 7))
+#define R32_3(x) (ROTL32((x), 13))
+#define R32_4(x) (ROTL32((x), 16))
+#define R32_5(x) (ROTR32((x), 13))
+#define R32_6(x) (ROTR32((x), 9))
+#define R32_7(x) (ROTR32((x), 5))