| ; RUN: llc -O0 -mtriple armv7-- -stop-before=expand-isel-pseudos < %s | |
| ; RUN: llc -O0 -mtriple armv7-- -stop-before=expand-isel-pseudos -global-isel < %s | |
| ; CHECK: PKHBT | |
| define arm_aapcscc i32 @pkh(i32 %x, i32 %y) { | |
| %andx = and i32 %x, 65535 | |
| %shl = shl i32 %y, 1 | |
| %andy = and i32 %shl, 4294901760 ; same as -65536 | |
| %or = or i32 %andx, %andy | |
| ret i32 %or | |
| } |