blob: 1a3d2e8cf291b8ed9a41544cab739b812a91cd6f [file] [log] [blame]
/* { dg-do compile { target { s390*-*-* } } } */
/* { dg-options "-O3 -mzarch -march=z13 -mzvector --save-temps" } */
/* { dg-final { scan-assembler-times "vfcedb\t" 1 } } */
/* { dg-final { scan-assembler-times "vfchdb\t" 2 } } */
/* { dg-final { scan-assembler-times "vfchedb\t" 2 } } */
/* { dg-final { scan-assembler-times "vfcedbs\t" 2 } } */
/* { dg-final { scan-assembler-times "vfchdbs\t" 2 } } */
#include <vecintrin.h>
vector bool long long
cmpeq (vector double a, vector double b)
{
return vec_cmpeq (a, b); /* vfcedb */
}
vector bool long long
cmpgt (vector double a, vector double b)
{
return vec_cmpgt (a, b); /* vfchdb */
}
vector bool long long
cmpge (vector double a, vector double b)
{
return vec_cmpge (a, b); /* vfchedb */
}
vector bool long long
cmplt (vector double a, vector double b)
{
return vec_cmplt (a, b); /* vfchdb */
}
vector bool long long
cmple (vector double a, vector double b)
{
return vec_cmple (a, b); /* vfchedb */
}
int
all_eq (vector double a, vector double b)
{
return vec_all_eq (a, b);
}
int
any_eq (vector double a, vector double b)
{
return vec_any_eq (a, b);
}
int
all_lt (vector double a, vector double b)
{
return vec_all_lt (a, b);
}
int
any_lt (vector double a, vector double b)
{
return vec_any_lt (a, b);
}