brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.4 KiB · 7dfaac1 Raw
59 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc -mcpu=pwr8 -ppc-asm-full-reg-names -mtriple=powerpc-ibm-aix < %s | \3; RUN:   FileCheck %s --check-prefix=CHECK-AIX32-P84 5; RUN: llc -mcpu=pwr10 -ppc-asm-full-reg-names -mtriple=powerpc-ibm-aix < %s | \6; RUN:   FileCheck %s --check-prefix=CHECK-AIX32-P107 8; RUN: llc -mcpu=pwr8 -ppc-asm-full-reg-names -mtriple=powerpcle-unknown-linux-gnu < %s | \9; RUN:   FileCheck %s --check-prefix=CHECK-LINUX32-P810 11; RUN: llc -mcpu=pwr10 -ppc-asm-full-reg-names -mtriple=powerpcle-unknown-linux-gnu < %s | \12; RUN:   FileCheck %s --check-prefix=CHECK-LINUX32-P1013 14define dso_local signext range(i32 0, 2) i32 @cmpeq16(ptr noundef readonly captures(none) %a, ptr noundef readonly captures(none) %b) {15; CHECK-AIX32-P8-LABEL: cmpeq16:16; CHECK-AIX32-P8:       # %bb.0: # %entry17; CHECK-AIX32-P8-NEXT:    lxvw4x vs34, 0, r418; CHECK-AIX32-P8-NEXT:    lxvw4x vs35, 0, r319; CHECK-AIX32-P8-NEXT:    vcmpequb. v2, v3, v220; CHECK-AIX32-P8-NEXT:    mfocrf r3, 221; CHECK-AIX32-P8-NEXT:    rlwinm r3, r3, 25, 31, 3122; CHECK-AIX32-P8-NEXT:    blr23;24; CHECK-AIX32-P10-LABEL: cmpeq16:25; CHECK-AIX32-P10:       # %bb.0: # %entry26; CHECK-AIX32-P10-NEXT:    lxv vs34, 0(r4)27; CHECK-AIX32-P10-NEXT:    lxv vs35, 0(r3)28; CHECK-AIX32-P10-NEXT:    vcmpequb. v2, v3, v229; CHECK-AIX32-P10-NEXT:    setbc r3, 4*cr6+lt30; CHECK-AIX32-P10-NEXT:    blr31;32; CHECK-LINUX32-P8-LABEL: cmpeq16:33; CHECK-LINUX32-P8:       # %bb.0: # %entry34; CHECK-LINUX32-P8-NEXT:    lxvd2x vs0, 0, r435; CHECK-LINUX32-P8-NEXT:    xxswapd vs34, vs036; CHECK-LINUX32-P8-NEXT:    lxvd2x vs0, 0, r337; CHECK-LINUX32-P8-NEXT:    xxswapd vs35, vs038; CHECK-LINUX32-P8-NEXT:    vcmpequb. v2, v3, v239; CHECK-LINUX32-P8-NEXT:    mfocrf r3, 240; CHECK-LINUX32-P8-NEXT:    rlwinm r3, r3, 25, 31, 3141; CHECK-LINUX32-P8-NEXT:    blr42;43; CHECK-LINUX32-P10-LABEL: cmpeq16:44; CHECK-LINUX32-P10:       # %bb.0: # %entry45; CHECK-LINUX32-P10-NEXT:    lxv vs34, 0(r4)46; CHECK-LINUX32-P10-NEXT:    lxv vs35, 0(r3)47; CHECK-LINUX32-P10-NEXT:    vcmpequb. v2, v3, v248; CHECK-LINUX32-P10-NEXT:    setbc r3, 4*cr6+lt49; CHECK-LINUX32-P10-NEXT:    blr50entry:51  %bcmp = tail call i32 @bcmp(ptr noundef nonnull dereferenceable(16) %a, ptr noundef nonnull dereferenceable(16) %b, i32 16)52  %cmp = icmp eq i32 %bcmp, 053  %conv = zext i1 %cmp to i3254  ret i32 %conv55}56 57declare signext i32 @bcmp(ptr captures(none), ptr captures(none), i32)58 59