43 lines · plain
1; RUN: llc -mtriple=thumb-eabi -mcpu=arm1156t2-s -mattr=+thumb2 %s -o - | FileCheck %s2 3define i32 @f1(i32 %a, i32 %b) {4; CHECK-LABEL: f1:5; CHECK: orrs r0, r16 %tmp2 = or i32 %a, %b7 ret i32 %tmp28}9 10define i32 @f5(i32 %a, i32 %b) {11; CHECK-LABEL: f5:12; CHECK: orr.w r0, r0, r1, lsl #513 %tmp = shl i32 %b, 514 %tmp2 = or i32 %a, %tmp15 ret i32 %tmp216}17 18define i32 @f6(i32 %a, i32 %b) {19; CHECK-LABEL: f6:20; CHECK: orr.w r0, r0, r1, lsr #621 %tmp = lshr i32 %b, 622 %tmp2 = or i32 %a, %tmp23 ret i32 %tmp224}25 26define i32 @f7(i32 %a, i32 %b) {27; CHECK-LABEL: f7:28; CHECK: orr.w r0, r0, r1, asr #729 %tmp = ashr i32 %b, 730 %tmp2 = or i32 %a, %tmp31 ret i32 %tmp232}33 34define i32 @f8(i32 %a, i32 %b) {35; CHECK-LABEL: f8:36; CHECK: orr.w r0, r0, r0, ror #837 %l8 = shl i32 %a, 2438 %r8 = lshr i32 %a, 839 %tmp = or i32 %l8, %r840 %tmp2 = or i32 %a, %tmp41 ret i32 %tmp242}43