1*c85f09ccSJohn Levon // (x & M) >> S to (x >> S) & (M >> S)
2*c85f09ccSJohn Levon 
foo(unsigned int x)3*c85f09ccSJohn Levon unsigned int foo(unsigned int x)
4*c85f09ccSJohn Levon {
5*c85f09ccSJohn Levon 	return (x & 0xffff) >> 12;
6*c85f09ccSJohn Levon }
7*c85f09ccSJohn Levon 
8*c85f09ccSJohn Levon /*
9*c85f09ccSJohn Levon  * check-name: and-lsr
10*c85f09ccSJohn Levon  * check-command: test-linearize -Wno-decl $file
11*c85f09ccSJohn Levon  *
12*c85f09ccSJohn Levon  * check-output-ignore
13*c85f09ccSJohn Levon  * check-output-contains: and\\..*\\$15
14*c85f09ccSJohn Levon  * check-output-excludes: and\\..*\\$0xffff
15*c85f09ccSJohn Levon  */
16