1*a9ddb7d5SMaryam Moghadas // RUN: %clang_cc1 -flax-vector-conversions=none -target-feature +vsx -triple powerpc64-unknown-unknown -emit-llvm %s \
2f563bd74SQiu Chaofan // RUN:            -o - | FileCheck %s
3f563bd74SQiu Chaofan 
4f563bd74SQiu Chaofan #include <altivec.h>
5f563bd74SQiu Chaofan 
6f563bd74SQiu Chaofan // CHECK-LABEL: @_Z5test1Dv8_tS_
7f563bd74SQiu Chaofan // CHECK: @llvm.ppc.altivec.vcmpequh.p
test1(vector unsigned short v1,vector unsigned short v2)8f563bd74SQiu Chaofan bool test1(vector unsigned short v1, vector unsigned short v2) {
9f563bd74SQiu Chaofan   return v1 == v2;
10f563bd74SQiu Chaofan }
11f563bd74SQiu Chaofan 
12f563bd74SQiu Chaofan // CHECK-LABEL: @_Z5test2Dv2_mS_Dv2_lS0_Dv2_yS1_Dv2_xS2_Dv2_dS3_
test2(vector unsigned long v1,vector unsigned long v2,vector long v3,vector long v4,vector unsigned long long v5,vector unsigned long long v6,vector long long v7,vector long long v8,vector double v9,vector double v10)13f563bd74SQiu Chaofan bool test2(vector unsigned long v1, vector unsigned long v2,
14f563bd74SQiu Chaofan            vector long v3, vector long v4,
15f563bd74SQiu Chaofan            vector unsigned long long v5, vector unsigned long long v6,
16f563bd74SQiu Chaofan            vector long long v7, vector long long v8,
17f563bd74SQiu Chaofan            vector double v9, vector double v10) {
18f563bd74SQiu Chaofan   // CHECK: @llvm.ppc.altivec.vcmpequd.p
19f563bd74SQiu Chaofan   bool res = v1 == v2;
20f563bd74SQiu Chaofan 
21f563bd74SQiu Chaofan   // CHECK: @llvm.ppc.altivec.vcmpequd.p
22f563bd74SQiu Chaofan   res |= v3 == v4;
23f563bd74SQiu Chaofan 
24f563bd74SQiu Chaofan   // CHECK: @llvm.ppc.altivec.vcmpequd.p
25f563bd74SQiu Chaofan   res |= v5 == v6;
26f563bd74SQiu Chaofan 
27f563bd74SQiu Chaofan   // CHECK: @llvm.ppc.altivec.vcmpequd.p
28f563bd74SQiu Chaofan   res |= v7 == v8;
29f563bd74SQiu Chaofan 
30f563bd74SQiu Chaofan   // CHECK: @llvm.ppc.vsx.xvcmpeqdp.p
31f563bd74SQiu Chaofan   res |= v9 == v10;
32f563bd74SQiu Chaofan   return res;
33f563bd74SQiu Chaofan }
34f563bd74SQiu Chaofan 
35