lsr_to_asr24(int x)1int lsr_to_asr24(int x) 2 { 3 return ((signed char)(((unsigned)x) >> 24)) == (x >> 24); 4 } 5 6 7 struct s { 8 int :30; 9 signed int f:2; 10 }; 11 lsr_to_asr30(int a)12int lsr_to_asr30(int a) 13 { 14 union { 15 int i; 16 struct s s; 17 } u = { .i = a }; 18 return u.s.f == (a >> 30); 19 } 20 21 /* 22 * check-name: lsr-to-asr 23 * check-command: test-linearize -Wno-decl $file 24 * 25 * check-output-ignore 26 * check-output-returns: 1 27 */ 28