3 ; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z13 | FileCheck %s
6 define <16 x i8> @f1(<16 x i8> %val1, <16 x i8> %val2) {
8 ; CHECK: vmxb %v24, {{%v24, %v26|%v26, %v24}}
10 %cmp = icmp slt <16 x i8> %val1, %val2
11 %ret = select <16 x i1> %cmp, <16 x i8> %val2, <16 x i8> %val1
16 define <16 x i8> @f2(<16 x i8> %val1, <16 x i8> %val2) {
18 ; CHECK: vmxb %v24, {{%v24, %v26|%v26, %v24}}
20 %cmp = icmp sle <16 x i8> %val1, %val2
21 %ret = select <16 x i1> %cmp, <16 x i8> %val2, <16 x i8> %val1
26 define <16 x i8> @f3(<16 x i8> %val1, <16 x i8> %val2) {
28 ; CHECK: vmxb %v24, {{%v24, %v26|%v26, %v24}}
30 %cmp = icmp sgt <16 x i8> %val1, %val2
31 %ret = select <16 x i1> %cmp, <16 x i8> %val1, <16 x i8> %val2
36 define <16 x i8> @f4(<16 x i8> %val1, <16 x i8> %val2) {
38 ; CHECK: vmxb %v24, {{%v24, %v26|%v26, %v24}}
40 %cmp = icmp sge <16 x i8> %val1, %val2
41 %ret = select <16 x i1> %cmp, <16 x i8> %val1, <16 x i8> %val2
46 define <16 x i8> @f5(<16 x i8> %val1, <16 x i8> %val2) {
48 ; CHECK: vmxlb %v24, {{%v24, %v26|%v26, %v24}}
50 %cmp = icmp ult <16 x i8> %val1, %val2
51 %ret = select <16 x i1> %cmp, <16 x i8> %val2, <16 x i8> %val1
56 define <16 x i8> @f6(<16 x i8> %val1, <16 x i8> %val2) {
58 ; CHECK: vmxlb %v24, {{%v24, %v26|%v26, %v24}}
60 %cmp = icmp ule <16 x i8> %val1, %val2
61 %ret = select <16 x i1> %cmp, <16 x i8> %val2, <16 x i8> %val1
66 define <16 x i8> @f7(<16 x i8> %val1, <16 x i8> %val2) {
68 ; CHECK: vmxlb %v24, {{%v24, %v26|%v26, %v24}}
70 %cmp = icmp ugt <16 x i8> %val1, %val2
71 %ret = select <16 x i1> %cmp, <16 x i8> %val1, <16 x i8> %val2
76 define <16 x i8> @f8(<16 x i8> %val1, <16 x i8> %val2) {
78 ; CHECK: vmxlb %v24, {{%v24, %v26|%v26, %v24}}
80 %cmp = icmp uge <16 x i8> %val1, %val2
81 %ret = select <16 x i1> %cmp, <16 x i8> %val1, <16 x i8> %val2