brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.3 KiB · 89ae568 Raw
54 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s3 4; rdar://120810075 6define i32 @and_1(i8 zeroext %a, i8 zeroext %b, i32 %x) {7; CHECK-LABEL: and_1:8; CHECK:       # %bb.0:9; CHECK-NEXT:    movl %edi, %eax10; CHECK-NEXT:    andl %esi, %eax11; CHECK-NEXT:    cmovnel %edx, %eax12; CHECK-NEXT:    retq13  %1 = and i8 %b, %a14  %2 = icmp ne i8 %1, 015  %3 = select i1 %2, i32 %x, i32 016  ret i32 %317}18 19define zeroext i1 @and_2(i8 zeroext %a, i8 zeroext %b) {20; CHECK-LABEL: and_2:21; CHECK:       # %bb.0:22; CHECK-NEXT:    testl %edi, %esi23; CHECK-NEXT:    setne %al24; CHECK-NEXT:    retq25  %1 = and i8 %b, %a26  %2 = icmp ne i8 %1, 027  ret i1 %228}29 30define i32 @xor_1(i8 zeroext %a, i8 zeroext %b, i32 %x) {31; CHECK-LABEL: xor_1:32; CHECK:       # %bb.0:33; CHECK-NEXT:    xorl %eax, %eax34; CHECK-NEXT:    xorl %esi, %edi35; CHECK-NEXT:    cmovnel %edx, %eax36; CHECK-NEXT:    retq37  %1 = xor i8 %b, %a38  %2 = icmp ne i8 %1, 039  %3 = select i1 %2, i32 %x, i32 040  ret i32 %341}42 43define zeroext i1 @xor_2(i8 zeroext %a, i8 zeroext %b) {44; CHECK-LABEL: xor_2:45; CHECK:       # %bb.0:46; CHECK-NEXT:    xorl %esi, %edi47; CHECK-NEXT:    setne %al48; CHECK-NEXT:    retq49  %1 = xor i8 %b, %a50  %2 = icmp ne i8 %1, 051  ret i1 %252}53 54