lsrasr0(unsigned int x)1*c85f09ccSJohn Levonint lsrasr0(unsigned int x) 2*c85f09ccSJohn Levon { 3*c85f09ccSJohn Levon return ((int) (x >> 15)) >> 15; 4*c85f09ccSJohn Levon } 5*c85f09ccSJohn Levon lsrasr1(unsigned int x)6*c85f09ccSJohn Levonint lsrasr1(unsigned int x) 7*c85f09ccSJohn Levon { 8*c85f09ccSJohn Levon return ((int) (x >> 16)) >> 15; 9*c85f09ccSJohn Levon } 10*c85f09ccSJohn Levon lsrasr2(unsigned int x)11*c85f09ccSJohn Levonint lsrasr2(unsigned int x) 12*c85f09ccSJohn Levon { 13*c85f09ccSJohn Levon return ((int) (x >> 16)) >> 16; 14*c85f09ccSJohn Levon } 15*c85f09ccSJohn Levon 16*c85f09ccSJohn Levon /* 17*c85f09ccSJohn Levon * check-name: lsr-asr 18*c85f09ccSJohn Levon * check-command: test-linearize -Wno-decl $file 19*c85f09ccSJohn Levon * 20*c85f09ccSJohn Levon * check-output-start 21*c85f09ccSJohn Levon lsrasr0: 22*c85f09ccSJohn Levon .L0: 23*c85f09ccSJohn Levon <entry-point> 24*c85f09ccSJohn Levon lsr.32 %r3 <- %arg1, $30 25*c85f09ccSJohn Levon ret.32 %r3 26*c85f09ccSJohn Levon 27*c85f09ccSJohn Levon 28*c85f09ccSJohn Levon lsrasr1: 29*c85f09ccSJohn Levon .L2: 30*c85f09ccSJohn Levon <entry-point> 31*c85f09ccSJohn Levon lsr.32 %r7 <- %arg1, $31 32*c85f09ccSJohn Levon ret.32 %r7 33*c85f09ccSJohn Levon 34*c85f09ccSJohn Levon 35*c85f09ccSJohn Levon lsrasr2: 36*c85f09ccSJohn Levon .L4: 37*c85f09ccSJohn Levon <entry-point> 38*c85f09ccSJohn Levon ret.32 $0 39*c85f09ccSJohn Levon 40*c85f09ccSJohn Levon 41*c85f09ccSJohn Levon * check-output-end 42*c85f09ccSJohn Levon */ 43