brintos

brintos / llvm-project-archived public Read only

0
0
Text · 950 B · 46ac6e4 Raw
37 lines · plain
1; RUN: llc < %s -mtriple=i686-- -mcpu=atom | FileCheck %s2; CHECK:        movl3; CHECK:        movzbl4; CHECK:        movzbl5; CHECK:        cmpb6; CHECK:        notb7; CHECK:        notb8 9; Test for checking of cancel conversion to cmp32 in Atom case 10; in function 'X86TargetLowering::EmitCmp'11 12define i8 @run_test(ptr %rd_p) {13entry:14  %incdec.ptr = getelementptr inbounds i8, ptr %rd_p, i64 115  %ld1 = load i8, ptr %rd_p, align 116  %incdec.ptr1 = getelementptr inbounds i8, ptr %rd_p, i64 217  %ld2 = load i8, ptr %incdec.ptr, align 118  %x4 = xor i8 %ld1, -119  %x5 = xor i8 %ld2, -120  %cmp34 = icmp ult i8 %ld2, %ld121  br i1 %cmp34, label %if.then3, label %if.else22 23if.then3:                                        24  %sub7 = sub i8 %x4, %x525  br label %if.end426 27if.else:                           28  %sub8 = sub i8 %x5, %x4 29  br label %if.end4 30 31if.end4:          32  %res = phi i8 [ %sub7, %if.then3 ], [ %sub8, %if.else ]33  ret i8 %res34 35}36 37