brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · 9bfbda2 Raw
54 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc64le-unknown-unknown | FileCheck %s3 4define i1 @and_cmp1(i32 %x, i32 %y) {5; CHECK-LABEL: and_cmp1:6; CHECK:       # %bb.0:7; CHECK-NEXT:    andc 3, 4, 38; CHECK-NEXT:    cntlzw 3, 39; CHECK-NEXT:    rlwinm 3, 3, 27, 31, 3110; CHECK-NEXT:    blr11  %and = and i32 %x, %y12  %cmp = icmp eq i32 %and, %y13  ret i1 %cmp14}15 16define i1 @and_cmp_const(i32 %x) {17; CHECK-LABEL: and_cmp_const:18; CHECK:       # %bb.0:19; CHECK-NEXT:    li 4, 4320; CHECK-NEXT:    andc 3, 4, 321; CHECK-NEXT:    cntlzw 3, 322; CHECK-NEXT:    rlwinm 3, 3, 27, 31, 3123; CHECK-NEXT:    blr24  %and = and i32 %x, 4325  %cmp = icmp eq i32 %and, 4326  ret i1 %cmp27}28 29define i1 @foo(i32 %i) {30; CHECK-LABEL: foo:31; CHECK:       # %bb.0:32; CHECK-NEXT:    lis 4, 466033; CHECK-NEXT:    ori 4, 4, 2213634; CHECK-NEXT:    andc 3, 4, 335; CHECK-NEXT:    cntlzw 3, 336; CHECK-NEXT:    rlwinm 3, 3, 27, 31, 3137; CHECK-NEXT:    blr38  %and = and i32 %i, 30541989639  %cmp = icmp eq i32 %and, 30541989640  ret i1 %cmp41}42 43define <4 x i32> @hidden_not_v4i32(<4 x i32> %x) {44; CHECK-LABEL: hidden_not_v4i32:45; CHECK:       # %bb.0:46; CHECK-NEXT:    vspltisw 3, 647; CHECK-NEXT:    xxlandc 34, 35, 3448; CHECK-NEXT:    blr49  %xor = xor <4 x i32> %x, <i32 15, i32 15, i32 15, i32 15>50  %and = and <4 x i32> %xor, <i32 6, i32 6, i32 6, i32 6>51  ret <4 x i32> %and52}53 54