brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 2028299 Raw
57 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: eors r0, r16    %tmp = xor i32 %a, %b7    ret i32 %tmp8}9 10define i32 @f2(i32 %a, i32 %b) {11; CHECK-LABEL: f2:12; CHECK: eors r0, r113    %tmp = xor i32 %b, %a14    ret i32 %tmp15}16 17define i32 @f2b(i32 %a, i32 %b, i32 %c) {18; CHECK-LABEL: f2b:19; CHECK: eor.w r0, r1, r220    %tmp = xor i32 %b, %c21    ret i32 %tmp22}23 24define i32 @f3(i32 %a, i32 %b) {25; CHECK-LABEL: f3:26; CHECK: eor.w r0, r0, r1, lsl #527    %tmp = shl i32 %b, 528    %tmp1 = xor i32 %a, %tmp29    ret i32 %tmp130}31 32define i32 @f4(i32 %a, i32 %b) {33; CHECK-LABEL: f4:34; CHECK: eor.w r0, r0, r1, lsr #635    %tmp = lshr i32 %b, 636    %tmp1 = xor i32 %tmp, %a37    ret i32 %tmp138}39 40define i32 @f5(i32 %a, i32 %b) {41; CHECK-LABEL: f5:42; CHECK: eor.w r0, r0, r1, asr #743    %tmp = ashr i32 %b, 744    %tmp1 = xor i32 %a, %tmp45    ret i32 %tmp146}47 48define i32 @f6(i32 %a, i32 %b) {49; CHECK-LABEL: f6:50; CHECK: eor.w r0, r0, r0, ror #851    %l8 = shl i32 %a, 2452    %r8 = lshr i32 %a, 853    %tmp = or i32 %l8, %r854    %tmp1 = xor i32 %tmp, %a55    ret i32 %tmp156}57