1 ; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve < %s | FileCheck %s
7 define i1 @ptest_any(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a) {
8 ; CHECK-LABEL: ptest_any:
9 ; CHECK: ptest p0, p1.b
10 ; CHECK-NEXT: cset w0, ne
12 %out = call i1 @llvm.aarch64.sve.ptest.any(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a)
16 define i1 @ptest_first(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a) {
17 ; CHECK-LABEL: ptest_first:
18 ; CHECK: ptest p0, p1.b
19 ; CHECK-NEXT: cset w0, mi
21 %out = call i1 @llvm.aarch64.sve.ptest.first(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a)
25 define i1 @ptest_last(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a) {
26 ; CHECK-LABEL: ptest_last:
27 ; CHECK: ptest p0, p1.b
28 ; CHECK-NEXT: cset w0, lo
30 %out = call i1 @llvm.aarch64.sve.ptest.last(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a)
34 declare i1 @llvm.aarch64.sve.ptest.any(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a)
35 declare i1 @llvm.aarch64.sve.ptest.first(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a)
36 declare i1 @llvm.aarch64.sve.ptest.last(<vscale x 16 x i1> %pg, <vscale x 16 x i1> %a)