27 lines · plain
1; RUN: llc -mtriple=thumb-eabi %s -o /dev/null2 3define i64 @f0(i64 %A, i64 %B) {4 %tmp = bitcast i64 %A to i645 %tmp2 = lshr i64 %B, 16 %tmp3 = sub i64 %tmp, %tmp27 ret i64 %tmp38}9 10define i32 @f1(i64 %x, i64 %y) {11 %a = shl i64 %x, %y12 %b = trunc i64 %a to i3213 ret i32 %b14}15 16define i32 @f2(i64 %x, i64 %y) {17 %a = ashr i64 %x, %y18 %b = trunc i64 %a to i3219 ret i32 %b20}21 22define i32 @f3(i64 %x, i64 %y) {23 %a = lshr i64 %x, %y24 %b = trunc i64 %a to i3225 ret i32 %b26}27