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