brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.1 KiB · 3787526 Raw
120 lines · plain
1; RUN: llc < %s -mtriple=bpf -mcpu=v1 | FileCheck %s2 3; Function Attrs: nounwind readnone uwtable4define signext i8 @foo_cmp1(i8 signext %a, i8 signext %b) #0 {5  %1 = icmp sgt i8 %a, %b6  br i1 %1, label %2, label %47 8; <label>:2                                       ; preds = %09  %3 = mul i8 %b, %a10  br label %611 12; <label>:4                                       ; preds = %013  %5 = shl i8 %b, 314  br label %615 16; <label>:6                                       ; preds = %4, %217  %.0 = phi i8 [ %3, %2 ], [ %5, %4 ]18  ret i8 %.019; CHECK-LABEL:foo_cmp1:20; CHECK: if r0 s>= r121}22 23; Function Attrs: nounwind readnone uwtable24define signext i8 @foo_cmp2(i8 signext %a, i8 signext %b) #0 {25  %1 = icmp slt i8 %a, %b26  br i1 %1, label %4, label %227 28; <label>:2                                       ; preds = %029  %3 = mul i8 %b, %a30  br label %631 32; <label>:4                                       ; preds = %033  %5 = shl i8 %b, 334  br label %635 36; <label>:6                                       ; preds = %4, %237  %.0 = phi i8 [ %3, %2 ], [ %5, %4 ]38  ret i8 %.039; CHECK-LABEL:foo_cmp2:40; CHECK: if r0 s> r141}42 43; Function Attrs: nounwind readnone uwtable44define signext i8 @foo_cmp3(i8 signext %a, i8 signext %b) #0 {45  %1 = icmp slt i8 %a, %b46  br i1 %1, label %2, label %447 48; <label>:2                                       ; preds = %049  %3 = mul i8 %b, %a50  br label %651 52; <label>:4                                       ; preds = %053  %5 = shl i8 %b, 354  br label %655 56; <label>:6                                       ; preds = %4, %257  %.0 = phi i8 [ %3, %2 ], [ %5, %4 ]58  ret i8 %.059; CHECK-LABEL:foo_cmp3:60; CHECK: if r1 s>= r061}62 63; Function Attrs: nounwind readnone uwtable64define signext i8 @foo_cmp4(i8 signext %a, i8 signext %b) #0 {65  %1 = icmp sgt i8 %a, %b66  br i1 %1, label %4, label %267 68; <label>:2                                       ; preds = %069  %3 = mul i8 %b, %a70  br label %671 72; <label>:4                                       ; preds = %073  %5 = shl i8 %b, 374  br label %675 76; <label>:6                                       ; preds = %4, %277  %.0 = phi i8 [ %3, %2 ], [ %5, %4 ]78  ret i8 %.079; CHECK-LABEL:foo_cmp4:80; CHECK: if r1 s> r081}82 83; Function Attrs: nounwind readnone uwtable84define signext i8 @min(i8 signext %a, i8 signext %b) #0 {85  %1 = icmp slt i8 %a, %b86  %a.b = select i1 %1, i8 %a, i8 %b87  ret i8 %a.b88; CHECK-LABEL:min:89; CHECK: r0 = r190; CHECK: if r2 s> r091; CHECK: r0 = r292}93 94; Function Attrs: nounwind readnone uwtable95define zeroext i8 @minu(i8 zeroext %a, i8 zeroext %b) #0 {96  %1 = icmp ult i8 %a, 10097  %a.b = select i1 %1, i8 %a, i8 %b98  ret i8 %a.b99; CHECK-LABEL:minu:100; CHECK: if r{{[0-9]+}} {{<|>}} r{{[0-9]+}}101}102 103; Function Attrs: nounwind readnone uwtable104define signext i8 @max(i8 signext %a, i8 signext %b) #0 {105  %1 = icmp sgt i8 %a, %b106  %a.b = select i1 %1, i8 %a, i8 %b107  ret i8 %a.b108; CHECK-LABEL:max:109; CHECK: if r0 s> r2110}111 112; Function Attrs: nounwind readnone uwtable113define signext i8 @meq(i8 signext %a, i8 signext %b, i8 signext %c) #0 {114  %1 = icmp eq i8 %a, %b115  %c.a = select i1 %1, i8 %c, i8 %a116  ret i8 %c.a117; CHECK-LABEL:meq:118; CHECK: if r1 == r2119}120