brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.8 KiB · 35d4441 Raw
118 lines · plain
1; RUN: llc -O2 -mtriple=bpfel -mcpu=v1 -mattr=+alu32 < %s | FileCheck %s2;3; unsigned int select_cc_32 (unsigned a, unsigned b, int c, int d)4; {5;   if (a > b)6;     return c;7;   else8;     return d;9; }10;11; long long select_cc_32_64 (unsigned a, unsigned b, long long c, long long d)12; {13;   if (a > b)14;     return c;15;   else16;     return d;17; }18;19; int select_cc_64_32 (long long a, long long b, int c, int d)20; {21;   if (a > b)22;     return c;23;   else24;     return d;25; }26;27; int selecti_cc_32 (unsigned a, int c, int d)28; {29;   if (a > 10)30;     return c;31;   else32;     return d;33; }34;35; long long selecti_cc_32_64 (unsigned a, long long c, long long d)36; {37;   if (a > 11)38;     return c;39;   else40;     return d;41; }42;43; int selecti_cc_64_32 (long long a, int c, int d)44; {45;   if (a > 12)46;     return c;47;   else48;     return d;49; }50 51; Function Attrs: norecurse nounwind readnone52define dso_local i32 @select_cc_32(i32 %a, i32 %b, i32 %c, i32 %d) local_unnamed_addr #0 {53entry:54  %cmp = icmp ugt i32 %a, %b55  %c.d = select i1 %cmp, i32 %c, i32 %d56  ret i32 %c.d57}58; CHECK-LABEL: select_cc_3259; CHECK: r{{[0-9]+}} = w{{[0-9]+}}60; CHECK-NOT: r{{[0-9]+}} <<= 3261; CHECK-NOT: r{{[0-9]+}} >>= 3262 63; Function Attrs: norecurse nounwind readnone64define dso_local i64 @select_cc_32_64(i32 %a, i32 %b, i64 %c, i64 %d) local_unnamed_addr #0 {65entry:66  %cmp = icmp ugt i32 %a, %b67  %c.d = select i1 %cmp, i64 %c, i64 %d68  ret i64 %c.d69}70; CHECK-LABEL: select_cc_32_6471; CHECK: r{{[0-9]+}} = w{{[0-9]+}}72; CHECK-NOT: r{{[0-9]+}} <<= 3273; CHECK-NOT: r{{[0-9]+}} >>= 3274 75; Function Attrs: norecurse nounwind readnone76define dso_local i32 @select_cc_64_32(i64 %a, i64 %b, i32 %c, i32 %d) local_unnamed_addr #0 {77entry:78  %cmp = icmp sgt i64 %a, %b79  %c.d = select i1 %cmp, i32 %c, i32 %d80  ret i32 %c.d81}82; CHECK-LABEL: select_cc_64_3283; CHECK-NOT: r{{[0-9]+}} <<= 3284 85; Function Attrs: norecurse nounwind readnone86define dso_local i32 @selecti_cc_32(i32 %a, i32 %c, i32 %d) local_unnamed_addr #0 {87entry:88  %cmp = icmp ugt i32 %a, 1089  %c.d = select i1 %cmp, i32 %c, i32 %d90  ret i32 %c.d91}92; CHECK-LABEL: selecti_cc_3293; CHECK: r{{[0-9]+}} = w{{[0-9]+}}94; CHECK-NOT: r{{[0-9]+}} <<= 3295; CHECK-NOT: r{{[0-9]+}} >>= 3296 97; Function Attrs: norecurse nounwind readnone98define dso_local i64 @selecti_cc_32_64(i32 %a, i64 %c, i64 %d) local_unnamed_addr #0 {99entry:100  %cmp = icmp ugt i32 %a, 11101  %c.d = select i1 %cmp, i64 %c, i64 %d102  ret i64 %c.d103}104; CHECK-LABEL: selecti_cc_32_64105; CHECK: r{{[0-9]+}} = w{{[0-9]+}}106; CHECK-NOT: r{{[0-9]+}} <<= 32107; CHECK-NOT: r{{[0-9]+}} >>= 32108 109; Function Attrs: norecurse nounwind readnone110define dso_local i32 @selecti_cc_64_32(i64 %a, i32 %c, i32 %d) local_unnamed_addr #0 {111entry:112  %cmp = icmp sgt i64 %a, 12113  %c.d = select i1 %cmp, i32 %c, i32 %d114  ret i32 %c.d115}116; CHECK-LABEL: selecti_cc_64_32117; CHECK-NOT: r{{[0-9]+}} <<= 32118