xref: /llvm-project/llvm/test/CodeGen/VE/Vector/mask_binary.ll (revision ce48fe47af29b725168b262bc89ff87ded272949)
1*ce48fe47SSimon Moll; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2*ce48fe47SSimon Moll; RUN: llc < %s -mtriple=ve -mattr=+vpu | FileCheck %s
3*ce48fe47SSimon Moll
4*ce48fe47SSimon Moll; Function Attrs: nounwind
5*ce48fe47SSimon Molldefine fastcc <256 x i1> @and_mm_v256i1(<256 x i1> %x, <256 x i1> %y) {
6*ce48fe47SSimon Moll; CHECK-LABEL: and_mm_v256i1:
7*ce48fe47SSimon Moll; CHECK:       # %bb.0:
8*ce48fe47SSimon Moll; CHECK-NEXT:    andm %vm1, %vm1, %vm2
9*ce48fe47SSimon Moll; CHECK-NEXT:    b.l.t (, %s10)
10*ce48fe47SSimon Moll  %z = and <256 x i1> %x, %y
11*ce48fe47SSimon Moll  ret <256 x i1> %z
12*ce48fe47SSimon Moll}
13*ce48fe47SSimon Moll
14*ce48fe47SSimon Moll; Function Attrs: nounwind
15*ce48fe47SSimon Molldefine fastcc <256 x i1> @or_mm_v256i1(<256 x i1> %x, <256 x i1> %y) {
16*ce48fe47SSimon Moll; CHECK-LABEL: or_mm_v256i1:
17*ce48fe47SSimon Moll; CHECK:       # %bb.0:
18*ce48fe47SSimon Moll; CHECK-NEXT:    orm %vm1, %vm1, %vm2
19*ce48fe47SSimon Moll; CHECK-NEXT:    b.l.t (, %s10)
20*ce48fe47SSimon Moll  %z = or <256 x i1> %x, %y
21*ce48fe47SSimon Moll  ret <256 x i1> %z
22*ce48fe47SSimon Moll}
23*ce48fe47SSimon Moll
24*ce48fe47SSimon Moll; Function Attrs: nounwind
25*ce48fe47SSimon Molldefine fastcc <256 x i1> @xor_mm_v256i1(<256 x i1> %x, <256 x i1> %y) {
26*ce48fe47SSimon Moll; CHECK-LABEL: xor_mm_v256i1:
27*ce48fe47SSimon Moll; CHECK:       # %bb.0:
28*ce48fe47SSimon Moll; CHECK-NEXT:    xorm %vm1, %vm1, %vm2
29*ce48fe47SSimon Moll; CHECK-NEXT:    b.l.t (, %s10)
30*ce48fe47SSimon Moll  %z = xor <256 x i1> %x, %y
31*ce48fe47SSimon Moll  ret <256 x i1> %z
32*ce48fe47SSimon Moll}
33*ce48fe47SSimon Moll
34