1*c85f09ccSJohn Levon #define W 3 2*c85f09ccSJohn Levon #define S 8 3*c85f09ccSJohn Levon #define M (W << S) 4*c85f09ccSJohn Levon fun(unsigned int x,unsigned int y)5*c85f09ccSJohn Levonstatic inline int fun(unsigned int x, unsigned int y) 6*c85f09ccSJohn Levon { 7*c85f09ccSJohn Levon return ((x & W) | (y >> S)) << S; 8*c85f09ccSJohn Levon } 9*c85f09ccSJohn Levon foo(unsigned int x,unsigned int y)10*c85f09ccSJohn Levonint foo(unsigned int x, unsigned int y) 11*c85f09ccSJohn Levon { 12*c85f09ccSJohn Levon return fun(x, y) & M; 13*c85f09ccSJohn Levon } 14*c85f09ccSJohn Levon 15*c85f09ccSJohn Levon /* 16*c85f09ccSJohn Levon * check-name: and-or-mask4 17*c85f09ccSJohn Levon * check-command: test-linearize -Wno-decl $file 18*c85f09ccSJohn Levon * check-known-to-fail 19*c85f09ccSJohn Levon * 20*c85f09ccSJohn Levon * check-output-ignore 21*c85f09ccSJohn Levon * check-output-pattern(1): shl\\. 22*c85f09ccSJohn Levon * check-output-pattern(1): or\\. 23*c85f09ccSJohn Levon * check-output-pattern(1): and\\. 24*c85f09ccSJohn Levon * check-output-excludes: lsr\\. 25*c85f09ccSJohn Levon */ 26