* gcc.target/i386/avx512f-vaddpd-2.c: Add static void for CALC,
void for TEST instead of static void.
* gcc.target/i386/avx512f-vaddps-2.c: Ditto.
* gcc.target/i386/avx512f-vblendmpd-2.c: Ditto.
* gcc.target/i386/avx512f-vblendmps-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastf32x4-2.c:Ditto.
* gcc.target/i386/avx512f-vbroadcastf64x4-2.c:Ditto.
* gcc.target/i386/avx512f-vbroadcasti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcasti64x4-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastsd-2.c: Ditto.
* gcc.target/i386/avx512f-vbroadcastss-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttps2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vdivpd-2.c: Ditto.
* gcc.target/i386/avx512f-vdivps-2.c: Ditto.
* gcc.target/i386/avx512f-vextractf32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vextracti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxpd-2.c: Ditto.
* gcc.target/i386/avx512f-vmaxps-2.c: Ditto.
* gcc.target/i386/avx512f-vminpd-2.c: Ditto.
* gcc.target/i386/avx512f-vminps-2.c: Ditto.
* gcc.target/i386/avx512f-vmulpd-2.c: Ditto.
* gcc.target/i386/avx512f-vmulps-2.c: Ditto.
* gcc.target/i386/avx512f-vpaddd-2.c: Ditto.
* gcc.target/i386/avx512f-vpaddq-2.c: Ditto.
* gcc.target/i386/avx512f-vpblendmd-2.c: Ditto.
* gcc.target/i386/avx512f-vpblendmq-2.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastd-2.c: Ditto.
* gcc.target/i386/avx512f-vpbroadcastq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpeqq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgtq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpslld-2.c: Ditto.
* gcc.target/i386/avx512f-vpslldi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrad-2.c: Ditto.
* gcc.target/i386/avx512f-vpsradi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsraq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsraqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsravd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsravq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsubd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsubq-2.c: Ditto.
* gcc.target/i386/avx512f-vptestmd-2.c: Ditto.
* gcc.target/i386/avx512f-vptestmq-2.c: Ditto.
* gcc.target/i386/avx512f-vptestnmd-2.c: Ditto.
* gcc.target/i386/avx512f-vptestnmq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckhqdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpckldq-2.c: Ditto.
* gcc.target/i386/avx512f-vpunpcklqdq-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefpd-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefps-2.c: Ditto.
* gcc.target/i386/avx512f-vshuff32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vshuff64x2-2.c: Ditto.
* gcc.target/i386/avx512f-vshufi32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vshufi64x2-2.c: Ditto.
* gcc.target/i386/avx512f-vsubpd-2.c: Ditto.
* gcc.target/i386/avx512f-vsubps-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllvd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsllvq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrld-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrldi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlq-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlqi-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvd-2.c: Ditto.
* gcc.target/i386/avx512f-vpsrlvq-2.c: Ditto.
* gcc.target/i386/avx512f-vpshufd-2.c: Delete variables, void for TEST
instead of static void.
* gcc.target/i386/avx512f-vpcmpged-2.c: Add static void for CALC,
delete unused variables.
* gcc.target/i386/avx512f-vpcmpgeq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgeud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpgeuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpled-2.c: Add static void for CALC,
delete unused variables, void for TEST instead of static void.
* gcc.target/i386/avx512f-vpcmpleq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpleud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpleuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpltuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpneqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpneqq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpnequd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpnequq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmaxsd-2.c: Add static void for CALC,
initialize variables.
* gcc.target/i386/avx512f-vpmaxsq-2.c:Ditto.
* gcc.target/i386/avx512f-vpminsd-2.c: Ditto.
* gcc.target/i386/avx512f-vpminsq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttsd2si-1.c: Add missed type.
* gcc.target/i386/avx512f-vcvttss2si-1.c: Ditto.
* gcc.target/i386/avx512f-vcmpsd-2.c: Delete unused variables.
* gcc.target/i386/avx512f-vcmpss-2.c: Ditto.
* gcc.target/i386/avx512f-vpmuldq-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscalepd-2.c: Ditto.
* gcc.target/i386/i386.exp: Ditto.
* gcc.target/i386/avx512cd-vpbroadcastmb2q-2.c: Add static void for CALC,
void for TEST instead of static void, initialize variables.
* gcc.target/i386/avx512cd-vpbroadcastmw2d-2.c: Ditto.
* gcc.target/i386/avx512cd-vpconflictd-2.c: Void for TEST instead of
static void.
* gcc.target/i386/avx512cd-vpconflictq-2.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntd-2.c: Ditto.
* gcc.target/i386/avx512cd-vplzcntq-2.c: Ditto.
* gcc.target/i386/avx512f-valignd-2.c: Ditto.
* gcc.target/i386/avx512f-valignq-2.c: Ditto.
* gcc.target/i386/avx512f-vcmppd-2.c: Ditto.
* gcc.target/i386/avx512f-vcmpps-2.c: Ditto.
* gcc.target/i386/avx512f-vcompresspd-2.c: Ditto.
* gcc.target/i386/avx512f-vcompressps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtdq2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtpd2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtph2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2ph-2.c: Ditto.
* gcc.target/i386/avx512f-vcvttpd2dq-2.c: Ditto.
* gcc.target/i386/avx512f-vexpandpd-2.c: Ditto.
* gcc.target/i386/avx512f-vexpandps-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmss-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmaddsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfmsubaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmaddXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXpd-2.c: Ditto.
* gcc.target/i386/avx512f-vfnmsubXXXps-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantpd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantps-2.c: Ditto.
* gcc.target/i386/avx512f-vinsertf32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vinserti32x4-2.c: Ditto.
* gcc.target/i386/avx512f-vmovapd-2.c: Ditto.
* gcc.target/i386/avx512f-vmovaps-2.c: Ditto.
* gcc.target/i386/avx512f-vmovddup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa32-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqa64-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu32-2.c: Ditto.
* gcc.target/i386/avx512f-vmovdqu64-2.c: Ditto.
* gcc.target/i386/avx512f-vmovshdup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovsldup-2.c: Ditto.
* gcc.target/i386/avx512f-vmovupd-2.c: Ditto.
* gcc.target/i386/avx512f-vmovups-2.c: Ditto.
* gcc.target/i386/avx512f-vpabsd-2.c: Ditto.
* gcc.target/i386/avx512f-vpabsq-2.c: Ditto.
* gcc.target/i386/avx512f-vpandd-2.c: Ditto.
* gcc.target/i386/avx512f-vpandnd-2.c: Ditto.
* gcc.target/i386/avx512f-vpandnq-2.c: Ditto.
* gcc.target/i386/avx512f-vpandq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpud-2.c: Ditto.
* gcc.target/i386/avx512f-vpcmpuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpcompressd-2.c: Ditto.
* gcc.target/i386/avx512f-vpcompressq-2.c: Ditto.
* gcc.target/i386/avx512f-vpermd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2d-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2q-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpdi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermilpsi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermpd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermpdi-2.c: Ditto.
* gcc.target/i386/avx512f-vpermps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermq-imm-2.c: Ditto.
* gcc.target/i386/avx512f-vpermq-var-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2d-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2q-2.c: Ditto.
* gcc.target/i386/avx512f-vpexpandd-2.c: Ditto.
* gcc.target/i386/avx512f-vpexpandq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxbq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovsxwq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxbq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxdq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovzxwq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmulld-2.c: Ditto.
* gcc.target/i386/avx512f-vpord-2.c: Ditto.
* gcc.target/i386/avx512f-vporq-2.c: Ditto.
* gcc.target/i386/avx512f-vpslld-2.c: Ditto.
* gcc.target/i386/avx512f-vpternlogd-2.c: Ditto.
* gcc.target/i386/avx512f-vpternlogq-2.c: Ditto.
* gcc.target/i386/avx512f-vpxord-2.c: Ditto.
* gcc.target/i386/avx512f-vpxorq-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14pd-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ps-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscaleps-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14pd-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ps-2.c: Ditto.
* gcc.target/i386/avx512f-vshufpd-2.c: Ditto.
* gcc.target/i386/avx512f-vshufps-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtpd-2.c: Ditto.
* gcc.target/i386/avx512f-vsqrtps-2.c: Ditto.
* gcc.target/i386/avx512f-vunpckhpd-2.c: Ditto.
* gcc.target/i386/avx512f-vunpckhps-2.c: Ditto.
* gcc.target/i386/avx512f-vunpcklpd-2.c: Ditto.
* gcc.target/i386/avx512f-vunpcklps-2.c: Ditto.
* gcc.target/i386/avx512f-vprold-2.c: Put parentheses, void for TEST
instead of static void.
* gcc.target/i386/avx512f-vprolq-2.c: Ditto.
* gcc.target/i386/avx512f-vprolvd-2.c: Ditto.
* gcc.target/i386/avx512f-vprolvq-2.c: Ditto.
* gcc.target/i386/avx512f-vprord-2.c: Ditto.
* gcc.target/i386/avx512f-vprorq-2.c: Ditto.
* gcc.target/i386/avx512f-vprorvd-2.c: Ditto.
* gcc.target/i386/avx512f-vprorvq-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmpd-2.c: Void for TEST instead of
static void, delete unused variables.
* gcc.target/i386/avx512f-vfixupimmps-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmsd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexppd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexpps-2.c: Ditto.
* gcc.target/i386/avx512f-vpmuludq-2.c: Void for TEST instead of
static void, delete unused variables, Change parameters for
UNION_CHECK, MASK_MERGE and MASK_ZERO.
* gcc.target/i386/avx512f-vcvtpd2dq-2.c: Change type of parameter in
CALC, void for TEST instead of static void.
* gcc.target/i386/avx512f-vcvtpd2udq-2.c: Change parameters for
UNION_CHECK, MASK_MERGE and MASK_ZERO, void for TEST instead of static
void.
* gcc.target/i386/avx512f-vcvttpd2udq-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtudq2pd-2.c: Void for TEST instead of
static void, change type of parameter for UNION_TYPE.
* gcc.target/i386/avx512f-vcvtudq2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vcvtps2udq-2.c: Add static void for CALC,
void for TEST instead of static void, delete unused variables, change
parameters for UNION_CHECK, MASK_MERGE and MASK_ZERO.
* gcc.target/i386/avx512f-vcvttps2udq-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusdw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqb-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqd-2.c: Ditto.
* gcc.target/i386/avx512f-vpmovusqw-2.c: Ditto.
* gcc.target/i386/avx512f-vpmaxud-2.c: Add static void for CALC,
void for TEST instead of static void, change parameters for UNION_CHECK,
UNION_TYPE, MASK_MERGE and MASK_ZERO.
* gcc.target/i386/avx512f-vpmaxuq-2.c: Ditto.
* gcc.target/i386/avx512f-vpminud-2.c: Ditto.
* gcc.target/i386/avx512f-vpminuq-2.c: Ditto.
* gcc.target/i386/avx512f-additional-reg-names.c: Add
__attribute__((unused)).
* gcc.target/i386/avx512f-dummy.c: Delete unused variables, add
__attribute__((unused)).
* gcc.target/i386/avx512f-kandnw-1.c: Initialize variables.
* gcc.target/i386/avx512f-kandw-1.c: Ditto.
* gcc.target/i386/avx512f-klogic-2.c: Ditto.
* gcc.target/i386/avx512f-knotw-1.c: Ditto.
* gcc.target/i386/avx512f-korw-1.c: Ditto.
* gcc.target/i386/avx512f-kunpckbw-1.c: Ditto.
* gcc.target/i386/avx512f-kxnorw-1.c: Ditto.
* gcc.target/i386/avx512f-kxorw-1.c: Ditto.
* gcc.target/i386/avx512f-kortestw-1.c: Initialize variables,
add __attribute__((unused)).
* gcc.target/i386/avx512f-vcvttsd2si-2.c: Exclude "avx512f-helper.h"
* gcc.target/i386/avx512f-vcvttss2si-2.c:Ditto.
* gcc.target/i386/avx512f-vgetexpsd-2.c: Ditto.
* gcc.target/i386/avx512f-vgetexpss-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscalesd-2.c: Ditto.
* gcc.target/i386/avx512f-vrndscaless-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefsd-2.c: Ditto.
* gcc.target/i386/avx512f-vscalefss-2.c: Ditto.
* gcc.target/i386/avx512f-vgetmantsd-2.c: Exclude "avx512f-helper.h",
delete unused variables.
* gcc.target/i386/avx512f-vgetmantss-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14ss-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14sd-2.c: Ditto.
* gcc.target/i386/avx512f-vrsqrt14ss-2.c: Ditto.
* gcc.target/i386/avx512f-helper.h: Void for test_512() instead of
static void, mask_merging and zero_masking for unsigned types.
* gcc.target/i386/m128-check.h: Add new unions, CHECK_EXP and
CHECK_ARRAY for unsigned types.
* gcc.target/i386/m256-check.h: Ditto.
* gcc.target/i386/m512-check.h: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211372
138bc75d-0d04-0410-961f-
82ee72b054a4
+2014-06-09 Petr Murzin <petr.murzin@intel.com>
+
+ * gcc.target/i386/avx512f-vaddpd-2.c: Add static void for CALC,
+ void for TEST instead of static void.
+ * gcc.target/i386/avx512f-vaddps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vblendmpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vblendmps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vbroadcastf32x4-2.c:Ditto.
+ * gcc.target/i386/avx512f-vbroadcastf64x4-2.c:Ditto.
+ * gcc.target/i386/avx512f-vbroadcasti32x4-2.c: Ditto.
+ * gcc.target/i386/avx512f-vbroadcasti64x4-2.c: Ditto.
+ * gcc.target/i386/avx512f-vbroadcastsd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vbroadcastss-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtps2dq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvttps2dq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vdivpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vdivps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vextractf32x4-2.c: Ditto.
+ * gcc.target/i386/avx512f-vextracti32x4-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmaxpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmaxps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vminpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vminps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmulpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmulps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpaddd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpaddq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpblendmd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpblendmq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpbroadcastd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpbroadcastq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpeqd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpeqq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpgtd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpgtq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovdb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovdw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovqb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovqw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsdb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsdw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsqb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsqd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsqw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpslld-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpslldi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsllq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsllqi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsrad-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsradi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsraq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsraqi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsravd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsravq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsubd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsubq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vptestmd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vptestmq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vptestnmd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vptestnmq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpunpckhdq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpunpckhqdq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpunpckldq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpunpcklqdq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vscalefpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vscalefps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vshuff32x4-2.c: Ditto.
+ * gcc.target/i386/avx512f-vshuff64x2-2.c: Ditto.
+ * gcc.target/i386/avx512f-vshufi32x4-2.c: Ditto.
+ * gcc.target/i386/avx512f-vshufi64x2-2.c: Ditto.
+ * gcc.target/i386/avx512f-vsubpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vsubps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovdb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovdw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovqb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovqw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsdb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsdw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsqb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsqd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsqw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsllvd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsllvq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsrld-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsrldi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsrlq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsrlqi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsrlvd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpsrlvq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpshufd-2.c: Delete variables, void for TEST
+ instead of static void.
+ * gcc.target/i386/avx512f-vpcmpged-2.c: Add static void for CALC,
+ delete unused variables.
+ * gcc.target/i386/avx512f-vpcmpgeq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpgeud-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpgeuq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpled-2.c: Add static void for CALC,
+ delete unused variables, void for TEST instead of static void.
+ * gcc.target/i386/avx512f-vpcmpleq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpleud-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpleuq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpltd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpltq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpltud-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpltuq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpneqd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpneqq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpnequd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpnequq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovqd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmaxsd-2.c: Add static void for CALC,
+ initialize variables.
+ * gcc.target/i386/avx512f-vpmaxsq-2.c:Ditto.
+ * gcc.target/i386/avx512f-vpminsd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpminsq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvttsd2si-1.c: Add missed type.
+ * gcc.target/i386/avx512f-vcvttss2si-1.c: Ditto.
+ * gcc.target/i386/avx512f-vcmpsd-2.c: Delete unused variables.
+ * gcc.target/i386/avx512f-vcmpss-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmuldq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrndscalepd-2.c: Ditto.
+ * gcc.target/i386/i386.exp: Ditto.
+ * gcc.target/i386/avx512cd-vpbroadcastmb2q-2.c: Add static void for CALC,
+ void for TEST instead of static void, initialize variables.
+ * gcc.target/i386/avx512cd-vpbroadcastmw2d-2.c: Ditto.
+ * gcc.target/i386/avx512cd-vpconflictd-2.c: Void for TEST instead of
+ static void.
+ * gcc.target/i386/avx512cd-vpconflictq-2.c: Ditto.
+ * gcc.target/i386/avx512cd-vplzcntd-2.c: Ditto.
+ * gcc.target/i386/avx512cd-vplzcntq-2.c: Ditto.
+ * gcc.target/i386/avx512f-valignd-2.c: Ditto.
+ * gcc.target/i386/avx512f-valignq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcmppd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcmpps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcompresspd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcompressps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtdq2pd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtdq2ps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtpd2ps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtph2ps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtps2pd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtps2ph-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvttpd2dq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vexpandpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vexpandps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfixupimmss-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfmaddXXXpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfmaddXXXps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfmaddsubXXXpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfmaddsubXXXps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfmsubXXXpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfmsubXXXps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfmsubaddXXXpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfmsubaddXXXps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfnmaddXXXpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfnmaddXXXps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfnmsubXXXpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfnmsubXXXps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vgetmantpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vgetmantps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vinsertf32x4-2.c: Ditto.
+ * gcc.target/i386/avx512f-vinserti32x4-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovapd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovaps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovddup-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovdqa32-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovdqa64-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovdqu32-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovdqu64-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovshdup-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovsldup-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovupd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vmovups-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpabsd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpabsq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpandd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpandnd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpandnq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpandq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpud-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcmpuq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcompressd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpcompressq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermi2d-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermi2pd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermi2ps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermi2q-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermilpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermilpdi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermilps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermilpsi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermpdi-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermq-imm-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermq-var-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermt2d-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermt2pd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermt2ps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpermt2q-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpexpandd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpexpandq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsxbd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsxbq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsxdq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsxwd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovsxwq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovzxbd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovzxbq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovzxdq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovzxwd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovzxwq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmulld-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpord-2.c: Ditto.
+ * gcc.target/i386/avx512f-vporq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpslld-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpternlogd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpternlogq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpxord-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpxorq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrcp14pd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrcp14ps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrndscaleps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrsqrt14pd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrsqrt14ps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vshufpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vshufps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vsqrtpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vsqrtps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vunpckhpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vunpckhps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vunpcklpd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vunpcklps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vprold-2.c: Put parentheses, void for TEST
+ instead of static void.
+ * gcc.target/i386/avx512f-vprolq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vprolvd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vprolvq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vprord-2.c: Ditto.
+ * gcc.target/i386/avx512f-vprorq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vprorvd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vprorvq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfixupimmpd-2.c: Void for TEST instead of
+ static void, delete unused variables.
+ * gcc.target/i386/avx512f-vfixupimmps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vfixupimmsd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vgetexppd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vgetexpps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmuludq-2.c: Void for TEST instead of
+ static void, delete unused variables, Change parameters for
+ UNION_CHECK, MASK_MERGE and MASK_ZERO.
+ * gcc.target/i386/avx512f-vcvtpd2dq-2.c: Change type of parameter in
+ CALC, void for TEST instead of static void.
+ * gcc.target/i386/avx512f-vcvtpd2udq-2.c: Change parameters for
+ UNION_CHECK, MASK_MERGE and MASK_ZERO, void for TEST instead of static
+ void.
+ * gcc.target/i386/avx512f-vcvttpd2udq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtudq2pd-2.c: Void for TEST instead of
+ static void, change type of parameter for UNION_TYPE.
+ * gcc.target/i386/avx512f-vcvtudq2ps-2.c: Ditto.
+ * gcc.target/i386/avx512f-vcvtps2udq-2.c: Add static void for CALC,
+ void for TEST instead of static void, delete unused variables, change
+ parameters for UNION_CHECK, MASK_MERGE and MASK_ZERO.
+ * gcc.target/i386/avx512f-vcvttps2udq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovusdb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovusdw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovusqb-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovusqd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmovusqw-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpmaxud-2.c: Add static void for CALC,
+ void for TEST instead of static void, change parameters for UNION_CHECK,
+ UNION_TYPE, MASK_MERGE and MASK_ZERO.
+ * gcc.target/i386/avx512f-vpmaxuq-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpminud-2.c: Ditto.
+ * gcc.target/i386/avx512f-vpminuq-2.c: Ditto.
+ * gcc.target/i386/avx512f-additional-reg-names.c: Add
+ __attribute__((unused)).
+ * gcc.target/i386/avx512f-dummy.c: Delete unused variables, add
+ __attribute__((unused)).
+ * gcc.target/i386/avx512f-kandnw-1.c: Initialize variables.
+ * gcc.target/i386/avx512f-kandw-1.c: Ditto.
+ * gcc.target/i386/avx512f-klogic-2.c: Ditto.
+ * gcc.target/i386/avx512f-knotw-1.c: Ditto.
+ * gcc.target/i386/avx512f-korw-1.c: Ditto.
+ * gcc.target/i386/avx512f-kunpckbw-1.c: Ditto.
+ * gcc.target/i386/avx512f-kxnorw-1.c: Ditto.
+ * gcc.target/i386/avx512f-kxorw-1.c: Ditto.
+ * gcc.target/i386/avx512f-kortestw-1.c: Initialize variables,
+ add __attribute__((unused)).
+ * gcc.target/i386/avx512f-vcvttsd2si-2.c: Exclude "avx512f-helper.h"
+ * gcc.target/i386/avx512f-vcvttss2si-2.c:Ditto.
+ * gcc.target/i386/avx512f-vgetexpsd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vgetexpss-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrndscalesd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrndscaless-2.c: Ditto.
+ * gcc.target/i386/avx512f-vscalefsd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vscalefss-2.c: Ditto.
+ * gcc.target/i386/avx512f-vgetmantsd-2.c: Exclude "avx512f-helper.h",
+ delete unused variables.
+ * gcc.target/i386/avx512f-vgetmantss-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrcp14sd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrcp14ss-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrsqrt14sd-2.c: Ditto.
+ * gcc.target/i386/avx512f-vrsqrt14ss-2.c: Ditto.
+ * gcc.target/i386/avx512f-helper.h: Void for test_512() instead of
+ static void, mask_merging and zero_masking for unsigned types.
+ * gcc.target/i386/m128-check.h: Add new unions, CHECK_EXP and
+ CHECK_ARRAY for unsigned types.
+ * gcc.target/i386/m256-check.h: Ditto.
+ * gcc.target/i386/m512-check.h: Ditto.
+
2014-06-09 Alan Lawrence <alan.lawrence@arm.com>
PR target/61062
#define SIZE (AVX512F_LEN / 64)
+static void
CALC (long long *res, __mmask8 src)
{
int i;
res[i] = src;
}
-static void
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) res;
long long res_ref[SIZE];
- __mmask8 src;
+ __mmask8 src = 0;
for (i = 0; i < SIZE; i++)
{
#define SIZE (AVX512F_LEN / 32)
+static void
CALC (int *res, __mmask16 src)
{
int i;
res[i] = src;
}
-static void
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) res;
int res_ref[SIZE];
- __mmask16 src;
+ __mmask16 src = 0;
for (i = 0; i < SIZE; i++)
{
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s, res1, res2, res3;
void foo ()
{
- register int zmm_var asm ("zmm9");
+ register int zmm_var asm ("zmm9") __attribute__((unused));
__asm__ __volatile__("vxorpd %%zmm0, %%zmm0, %%zmm7\n" : : : "zmm7" );
}
void static
avx512f_test (void)
{
- union512i_q u, s1, s2;
+ union512i_q u;
long long e[8];
- volatile int tst = check_union512i_q (u, e);
+ volatile int tst __attribute__((unused)) = check_union512i_q (u, e);
}
MAKE_MASK_MERGE(i_q, long long)
MAKE_MASK_MERGE(, float)
MAKE_MASK_MERGE(d, double)
+MAKE_MASK_MERGE(i_ub, unsigned char)
+MAKE_MASK_MERGE(i_uw, unsigned short)
+MAKE_MASK_MERGE(i_ud, unsigned int)
+MAKE_MASK_MERGE(i_uq, unsigned long long)
#define MASK_MERGE(TYPE) merge_masking_##TYPE
MAKE_MASK_ZERO(i_q, long long)
MAKE_MASK_ZERO(, float)
MAKE_MASK_ZERO(d, double)
+MAKE_MASK_ZERO(i_ub, unsigned char)
+MAKE_MASK_ZERO(i_uw, unsigned short)
+MAKE_MASK_ZERO(i_ud, unsigned int)
+MAKE_MASK_ZERO(i_uq, unsigned long long)
+
#define MASK_ZERO(TYPE) zero_masking_##TYPE
#define AVX512F_LEN 512
#define AVX512F_LEN_HALF 256
-static void test_512 ();
+
+void test_512 ();
#if defined (AVX512F)
void
avx512f_test ()
{
__mmask16 k1, k2, k3;
- volatile __m512 x;
+ volatile __m512 x = _mm512_setzero_ps();
__asm__( "kmovw %1, %0" : "=k" (k1) : "r" (1) );
__asm__( "kmovw %1, %0" : "=k" (k2) : "r" (2) );
avx512f_test ()
{
__mmask16 k1, k2, k3;
- volatile __m512 x;
+ volatile __m512 x = _mm512_setzero_ps();
__asm__( "kmovw %1, %0" : "=k" (k1) : "r" (1) );
__asm__( "kmovw %1, %0" : "=k" (k2) : "r" (2) );
avx512f_test (void)
{
__mmask16 dst, src1, src2, dst_ref;
- volatile __m512 x;
+ volatile __m512 x = _mm512_setzero_ps();
__asm__( "kmovw %1, %0" : "=k" (src1) : "r" (0x0FFF) );
__asm__( "kmovw %1, %0" : "=k" (src2) : "r" (0x0F0F) );
avx512f_test ()
{
__mmask16 k1, k2;
- volatile __m512 x;
+ volatile __m512 x = _mm512_setzero_ps();
__asm__( "kmovw %1, %0" : "=k" (k1) : "r" (45) );
void
avx512f_test () {
- volatile __mmask16 k1;
- __mmask16 k2;
- volatile __mmask8 k3;
- __mmask8 k4;
+ volatile __mmask16 k1 = 0;
+ __mmask16 k2 = 0;
+ volatile __mmask8 k3 = 0;
+ __mmask8 k4 = 0;
- volatile short r;
+ volatile short r __attribute__((unused));
/* Check that appropriate insn sequence is generated at -O0. */
r = _mm512_kortestc (k1, k2);
avx512f_test ()
{
__mmask16 k1, k2, k3;
- volatile __m512 x;
+ volatile __m512 x = _mm512_setzero_ps();
+
__asm__( "kmovw %1, %0" : "=k" (k1) : "r" (1) );
__asm__( "kmovw %1, %0" : "=k" (k2) : "r" (2) );
void
avx512f_test () {
__mmask16 k1, k2, k3;
- volatile __m512 x;
+ volatile __m512 x = _mm512_setzero_ps();
__asm__( "kmovw %1, %0" : "=k" (k1) : "r" (1) );
__asm__( "kmovw %1, %0" : "=k" (k2) : "r" (2) );
avx512f_test ()
{
__mmask16 k1, k2, k3;
- volatile __m512 x;
+ volatile __m512 x = _mm512_setzero_ps();
__asm__( "kmovw %1, %0" : "=k" (k1) : "r" (1) );
__asm__( "kmovw %1, %0" : "=k" (k2) : "r" (2) );
avx512f_test ()
{
__mmask16 k1, k2, k3;
- volatile __m512 x;
+ volatile __m512 x = _mm512_setzero_ps();
__asm__( "kmovw %1, %0" : "=k" (k1) : "r" (1) );
__asm__( "kmovw %1, %0" : "=k" (k2) : "r" (2) );
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s1, double *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s1, float *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
r[i] = s[i + N];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3, s1, s2;
r[i] = s[i + N];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3, s1, s2;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s1, double *s2, MASK_TYPE mask)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s1, float *s2, MASK_TYPE mask)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
if ((dst_ref & mask) != dst2) abort();
#endif
-static void
+void
TEST ()
{
UNION_TYPE (AVX512F_LEN, d) source1, source2;
if ((dst_ref & mask) != dst2) abort();
#endif
-static void
+void
TEST ()
{
UNION_TYPE (AVX512F_LEN,) source1, source2;
__m128d source1, source2;
__mmask8 dst, dst2, mask;
mask = 1;
- int i;
CMP(_CMP_EQ_OQ, !isunordered(s1[0], s2[0]) && s1[0] == s2[0]);
CMP(_CMP_LT_OS, !isunordered(s1[0], s2[0]) && s1[0] < s2[0]);
{
__m128 source1, source2;
__mmask8 dst, dst2, mask;
- int i;
mask = 1;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s, res1, res2;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s, res1, res2;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN_HALF, i_d) s;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s;
#define DST_SIZE ((AVX512F_LEN_HALF) / 32)
static void
-CALC (double *s, unsigned *r)
+CALC (double *s, int *r)
{
int i;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s;
e[i] = (float) s1.a[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s;
- UNION_TYPE (AVX512F_LEN_HALF, i_d) res1, res2, res3;
+ UNION_TYPE (AVX512F_LEN_HALF, i_ud) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
unsigned res_ref[DST_SIZE] = { 0 };
int i;
CALC (s.a, res_ref);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SRC_SIZE);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SRC_SIZE);
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SRC_SIZE);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SRC_SIZE);
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN_HALF, i_w) val;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, float *s)
{
int i;
r[i] = (s[i] >= 0) ? (int) (s[i] + 0.5) : (int) (s[i] - 0.5);
}
-void static
+void
TEST (void)
{
int i, sign;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN_HALF, ) s;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) val;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (unsigned *r, float *s)
{
int i;
r[i] = (unsigned) (s[i] + 0.5);
}
-void static
+void
TEST (void)
{
- int i, sign;
- UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3;
+ int i;
+ UNION_TYPE (AVX512F_LEN, i_ud) res1, res2, res3;
UNION_TYPE (AVX512F_LEN,) src;
MASK_TYPE mask = MASK_VALUE;
unsigned res_ref[SIZE];
CALC (res_ref, src.a);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res3, res_ref))
abort ();
}
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s;
- UNION_TYPE (AVX512F_LEN_HALF, i_d) res1, res2, res3;
+ UNION_TYPE (AVX512F_LEN_HALF, i_ud) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
unsigned res_ref[DST_SIZE] = { 0 };
int i;
CALC (s.a, res_ref);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SRC_SIZE);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SRC_SIZE);
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SRC_SIZE);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SRC_SIZE);
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, float *s)
{
int i;
r[i] = (int) s[i];
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (unsigned *r, float *s)
{
int i;
r[i] = (unsigned) s[i];
}
-void static
+void
TEST (void)
{
- int i, sign;
- UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3;
+ int i;
+ UNION_TYPE (AVX512F_LEN, i_ud) res1, res2, res3;
UNION_TYPE (AVX512F_LEN,) src;
MASK_TYPE mask = MASK_VALUE;
unsigned res_ref[SIZE];
CALC (res_ref, src.a);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res3, res_ref))
abort ();
}
#include <immintrin.h>
volatile __m128d x;
-volatile y;
+volatile int y;
void extern
avx512f_test (void)
#include "avx512f-check.h"
#include "avx512f-mask-type.h"
-#include "avx512f-helper.h"
static int
__attribute__ ((noinline, unused))
#include <immintrin.h>
volatile __m128 x;
-volatile y;
+volatile int y;
void extern
avx512f_test (void)
#include "avx512f-check.h"
#include "avx512f-mask-type.h"
-#include "avx512f-helper.h"
static int
__attribute__ ((noinline, unused))
}
}
-static void
+void
TEST (void)
{
- UNION_TYPE (AVX512F_LEN_HALF, i_d) s;
+ UNION_TYPE (AVX512F_LEN_HALF, i_ud) s;
UNION_TYPE (AVX512F_LEN, d) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
double res_ref[DST_SIZE];
}
}
-static void
+void
TEST (void)
{
- UNION_TYPE (AVX512F_LEN, i_d) s;
+ UNION_TYPE (AVX512F_LEN, i_ud) s;
UNION_TYPE (AVX512F_LEN, ) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
float res_ref[SIZE];
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s1, double *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s1, float *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, res2, res3, res4, res5;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s1, res2, res3, res4, res5;
#include "avx512f-mask-type.h"
#include "string.h"
-void
+static void
CALC (UNION_TYPE (AVX512F_LEN,) s1, float *res_ref, int mask)
{
memset (res_ref, 0, 16);
memcpy (res_ref, s1.a + mask * 4, 16);
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) s1;
#include "avx512f-mask-type.h"
#include "string.h"
-void
+static void
CALC (UNION_TYPE (AVX512F_LEN, i_d) s1, int *res_ref, int mask)
{
memset (res_ref, 0, 16);
memcpy (res_ref, s1.a + mask * 4, 16);
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1;
}
}
-void static
+void
TEST (void)
{
- int i, j, k;
+ int i, j;
UNION_TYPE (AVX512F_LEN, d) res1, res2, res3, s1;
UNION_TYPE (AVX512F_LEN, i_q) s2;
double res_ref[SIZE];
}
-void static
+void
TEST (void)
{
- int i, j, k;
+ int i, j;
UNION_TYPE (AVX512F_LEN,) res1, res2, res3, s1;
UNION_TYPE (AVX512F_LEN, i_d) s2;
float res_ref[SIZE];
}
}
-void static
+void
avx512f_test (void)
{
union128d s1, res1, res2, res3;
union128i_q s2;
double res_ref[2];
- int i, j, k;
+ int i, j;
float vals[2] = { -10, 10 };
int controls[10] = { 0x11111111,
}
}
-void static
+void
avx512f_test (void)
{
union128 s1, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, s2, s3, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s1, s2, s3, res1, res2, res3, res4;
r[i] = floor (log (s[i]) / log (2));
}
-void static
+void
TEST (void)
{
int j;
UNION_TYPE (AVX512F_LEN, d) res1, res2, res3, s;
double res_ref[SIZE];
- double res_ref_mask[SIZE];
MASK_TYPE mask = MASK_VALUE;
r[i] = floor (log (s[i]) / log (2));
}
-void static
+void
TEST (void)
{
int j;
UNION_TYPE (AVX512F_LEN, ) res1,res2,res3,s;
float res_ref[SIZE];
- float res_ref_mask[SIZE];
MASK_TYPE mask = MASK_VALUE;
#include <math.h>
#include "avx512f-check.h"
-#include "avx512f-helper.h"
static void
compute_vgetexpsd (double *s, double *r)
#include <math.h>
#include "avx512f-check.h"
-#include "avx512f-helper.h"
static void
compute_vgetexpss (float *s, float *r)
}
}
-void static
+void
TEST (void)
{
int i, sign;
}
}
-void static
+void
TEST (void)
{
int i, sign;
/* { dg-require-effective-target c99_runtime } */
#include "avx512f-check.h"
-#include "avx512f-helper.h"
#include <math.h>
union fp_int_t
static void
avx512f_test (void)
{
- int i, sign;
union128d res1, src1, src2;
double res_ref[2];
int interv = _MM_MANT_NORM_p5_1;
/* { dg-require-effective-target c99_runtime } */
#include "avx512f-check.h"
-#include "avx512f-helper.h"
#include <math.h>
union fp_int_t
static void
avx512f_test (void)
{
- int i, sign;
union128 res1, src1, src2;
float res_ref[4];
int interv = _MM_MANT_NORM_p5_1;
memcpy (res_ref + imm * 4, s2.a, 16);
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) s1, res1, res2, res3;
memcpy (res_ref + imm * 4, s2.a, 16);
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, res1, res2, res3;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s1, double *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s1, float *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s1, double *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s1, float *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#include "avx512f-mask-type.h"
#define ALIGN ((AVX512F_LEN) / 8)
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s2, s3, res1, res3, res4, res5, res6;
#include "avx512f-mask-type.h"
#define ALIGN ((AVX512F_LEN) / 8)
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s2, s3, res1, res3, res4, res5, res6;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s, res1, res2, res3;
#include "avx512f-mask-type.h"
#define ALIGN ((AVX512F_LEN) / 8)
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s2, s3, res1, res2, res5, res6, res7, res8;
#include "avx512f-mask-type.h"
#define ALIGN ((AVX512F_LEN) / 8)
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s2, s3, res1, res3, res4, res5, res6;
int a[SIZE];
} __attribute__ ((packed)) EVAL(unaligned_array, AVX512F_LEN,);
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s2, res1, res3, res4;
long long a[SIZE];
} __attribute__ ((packed)) EVAL(unaligned_array, AVX512F_LEN,);
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s2, res1, res2;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s, res1, res2, res3;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s, res1, res2, res3;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) res1, res2, res3, s2;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) res1, res2, res3, s2;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s1, double *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s1, float *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
r[i] = i1[i];
}
-static void
+void
TEST (void)
{
int ck[SIZE];
r[i] = i1[i];
}
-static void
+void
TEST (void)
{
long long ck[SIZE];
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, int *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
r[i] = s1[i] & s2[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, s2, res1, res2, res3, res4;
r[i] = (~s1[i]) & s2[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, s2, res1, res2, res3, res4;
r[i] = (~s1[i]) & s2[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, s2, res1, res2, res3;
r[i] = s1[i] & s2[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, s2, res1, res2, res3;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, int *s2, MASK_TYPE mask)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long *s2, MASK_TYPE mask)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
if ((mask & dst_ref) != dst2) abort();
#endif
-static void
+void
TEST ()
{
UNION_TYPE (AVX512F_LEN, i_d) source1, source2;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2;
MASK_TYPE res_ref, res1;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2;
MASK_TYPE res1, res_ref;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2;
MASK_TYPE res_ref, res1;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2;
MASK_TYPE res1, res_ref;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2;
MASK_TYPE res_ref, res1;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2;
MASK_TYPE res1, res_ref;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2;
MASK_TYPE res_ref, res1;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2;
MASK_TYPE res1, res_ref;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2;
MASK_TYPE res_ref, res1;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2;
MASK_TYPE res1, res_ref;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2;
MASK_TYPE res_ref, res1;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2;
MASK_TYPE res1, res_ref;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2;
MASK_TYPE res_ref, res1;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2;
MASK_TYPE res1, res_ref;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, int *s1, int *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2;
MASK_TYPE res_ref, res1;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *r, long long *s1, long long *s2)
{
int i;
*r = *r | (one << i);
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2;
MASK_TYPE res1, res_ref;
- MASK_TYPE mask = MASK_VALUE;
res1 = 0;
for (i = 0; i < SIZE / 2; i++)
if (dst_ref != dst1) abort(); \
if ((mask & dst_ref) != dst2) abort();
-static void
+void
TEST ()
{
UNION_TYPE (AVX512F_LEN, i_d) source1, source2;
if ((mask & dst_ref) != dst2) abort();
#endif
-static void
+void
TEST ()
{
unsigned int s1[16] = {2134, 6678, 453, 54646,
if ((mask & dst_ref) != dst2) abort();
#endif
-static void
+void
TEST ()
{
UNION_TYPE (AVX512F_LEN, i_q) source1, source2;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s, res1, res2;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s, res1, res2;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3, src1, src2;
}
}
-void static
+void
TEST (void)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, k;
}
}
-void static
+void
TEST (void)
{
int i, k;
}
}
-void static
+void
TEST (void)
{
int i;
r[i] = s1[(2 * (i / 2)) + ((s2[i] & 0x02) >> 1)];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, res1, res2, res3;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, res1, res2, res3;
r[i] = s1[(4 * (i / 4)) + (s2[i] & 0x03)];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) s1, res1, res2, res3;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) s1, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) src1, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) src1, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) src1, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3, src1;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3, src1, src2;
}
}
-void static
+void
TEST (void)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, res1, res2, res3, res4;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, res1, res2, res3, res4;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-
+void static
CALC (int *src1, int *src2, int *dst)
{
int i;
dst[i] = src1[i] > src2[i] ? src1[i] : src2[i];
}
-void static
+void
TEST (void)
{
- int i, sign;
+ int i, sign = 1;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2, res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
int res_ref[SIZE];
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
-
+void static
CALC (long long *src1, long long *src2, long long *dst)
{
int i;
dst[i] = src1[i] > src2[i] ? src1[i] : src2[i];
}
-void static
+void
TEST (void)
{
- int i, sign;
+ int i, sign = 1;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2, res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
long long res_ref[SIZE];
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-
+static void
CALC (unsigned *src1, unsigned *src2,
unsigned *dst)
{
dst[i] = src1[i] > src2[i] ? src1[i] : src2[i];
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_d) src1, src2, res1, res2, res3;
+ UNION_TYPE (AVX512F_LEN, i_ud) src1, src2, res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
unsigned res_ref[SIZE];
-
for (i = 0; i < SIZE; i++)
{
src1.a[i] = i;
CALC (src1.a, src2.a, res_ref);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
-
+static void
CALC (unsigned long long *src1, unsigned long long *src2,
unsigned long long *dst)
{
dst[i] = src1[i] > src2[i] ? src1[i] : src2[i];
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_q) src1, src2, res1, res2, res3;
+ UNION_TYPE (AVX512F_LEN, i_uq) src1, src2, res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
unsigned long long res_ref[SIZE];
CALC (src1.a, src2.a, res_ref);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res1, res_ref))
abort ();
- MASK_MERGE (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res2, res_ref))
+ MASK_MERGE (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res2, res_ref))
abort ();
- MASK_ZERO (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res3, res_ref))
+ MASK_ZERO (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-
+void static
CALC (int *src1, int *src2, int *dst)
{
int i;
dst[i] = src1[i] < src2[i] ? src1[i] : src2[i];
}
-void static
+void
TEST (void)
{
- int i, sign;
+ int i, sign = 1;
UNION_TYPE (AVX512F_LEN, i_d) src1, src2, res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
int res_ref[SIZE];
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
-
+void static
CALC (long long *src1, long long *src2, long long *dst)
{
int i;
dst[i] = src1[i] < src2[i] ? src1[i] : src2[i];
}
-void static
+void
TEST (void)
{
- int i, sign;
+ int i, sign = 1;
UNION_TYPE (AVX512F_LEN, i_q) src1, src2, res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
long long res_ref[SIZE];
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-
+static void
CALC (unsigned *src1, unsigned *src2,
unsigned *dst)
{
dst[i] = src1[i] < src2[i] ? src1[i] : src2[i];
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_d) src1, src2, res1, res2, res3;
+ UNION_TYPE (AVX512F_LEN, i_ud) src1, src2, res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
unsigned res_ref[SIZE];
CALC (src1.a, src2.a, res_ref);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
-
+static void
CALC (unsigned long long *src1, unsigned long long *src2,
unsigned long long *dst)
{
dst[i] = src1[i] < src2[i] ? src1[i] : src2[i];
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_q) src1, src2, res1, res2, res3;
+ UNION_TYPE (AVX512F_LEN, i_uq) src1, src2, res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
unsigned long long res_ref[SIZE];
CALC (src1.a, src2.a, res_ref);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res1, res_ref))
abort ();
- MASK_MERGE (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res2, res_ref))
+ MASK_MERGE (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res2, res_ref))
abort ();
- MASK_ZERO (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res3, res_ref))
+ MASK_ZERO (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (char *r, int *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#include "avx512f-mask-type.h"
#define SIZE_HALF (AVX512F_LEN_HALF / 16)
+void static
CALC (short *r, int *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (char *r, long long *s, int mem)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#include "avx512f-mask-type.h"
#define SIZE_HALF (AVX512F_LEN_HALF / 32)
+void static
CALC (int *r, long long *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
- UNION_TYPE (AVX512F_LEN_HALF, i_d) res1, res2, res3, res5;
+ UNION_TYPE (AVX512F_LEN_HALF, i_d) res1, res2, res3;
int res4[SIZE_HALF];
UNION_TYPE (AVX512F_LEN, i_q) src;
MASK_TYPE mask = MASK_VALUE;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (short *r, long long *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#include "avx512f-mask-type.h"
#include <limits.h>
+static void
CALC (char *r, int *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE_HALF (AVX512F_LEN_HALF / 16)
#include <limits.h>
+static void
CALC (short *r, int *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#include "avx512f-mask-type.h"
#include <limits.h>
+void static
CALC (char *r, long long *s, int mem)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE_HALF (AVX512F_LEN_HALF / 32)
#include <limits.h>
+static void
CALC (int *r, long long *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#include "avx512f-mask-type.h"
#include <limits.h>
+void static
CALC (short *r, long long *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
}
}
-static void
+void
TEST (void)
{
union128i_b s;
}
}
-static void
+void
TEST (void)
{
union128i_b s;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN_HALF, i_d) s;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN_HALF, i_w) s;
}
}
-static void
+void
TEST (void)
{
union128i_w s;
#include "avx512f-mask-type.h"
#include <limits.h>
+static void
CALC (unsigned char *r, unsigned int *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
- int i, sign;
- UNION_TYPE (128, i_b) res1, res2, res3;
+ int i;
+ UNION_TYPE (128, i_ub) res1, res2, res3;
unsigned char res4[16];
- UNION_TYPE (AVX512F_LEN, i_d) src;
+ UNION_TYPE (AVX512F_LEN, i_ud) src;
MASK_TYPE mask = MASK_VALUE;
unsigned char res_ref[16];
CALC (res_ref, src.a);
- if (UNION_CHECK (128, i_b) (res1, res_ref))
+ if (UNION_CHECK (128, i_ub) (res1, res_ref))
abort ();
- MASK_MERGE (i_b) (res_ref, mask, SIZE);
- if (UNION_CHECK (128, i_b) (res2, res_ref))
+ MASK_MERGE (i_ub) (res_ref, mask, SIZE);
+ if (UNION_CHECK (128, i_ub) (res2, res_ref))
abort ();
- if (checkVc (res4, res_ref, 16))
+ if (checkVuc (res4, res_ref, 16))
abort ();
- MASK_ZERO (i_b) (res_ref, mask, SIZE);
- if (UNION_CHECK (128, i_b) (res3, res_ref))
+ MASK_ZERO (i_ub) (res_ref, mask, SIZE);
+ if (UNION_CHECK (128, i_ub) (res3, res_ref))
abort ();
}
#define SIZE_HALF (AVX512F_LEN_HALF / 16)
#include <limits.h>
+static void
CALC (unsigned short *r, unsigned int *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
- int i, sign;
- UNION_TYPE (AVX512F_LEN_HALF, i_w) res1, res2, res3;
+ int i;
+ UNION_TYPE (AVX512F_LEN_HALF, i_uw) res1, res2, res3;
unsigned short res4[SIZE_HALF];
- UNION_TYPE (AVX512F_LEN, i_d) src;
+ UNION_TYPE (AVX512F_LEN, i_ud) src;
MASK_TYPE mask = MASK_VALUE;
unsigned short res_ref[SIZE_HALF];
CALC (res_ref, src.a);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_w) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_uw) (res1, res_ref))
abort ();
- MASK_MERGE (i_w) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_w) (res2, res_ref))
+ MASK_MERGE (i_uw) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_uw) (res2, res_ref))
abort ();
- if (checkVs (res4, res_ref, SIZE_HALF))
+ if (checkVus (res4, res_ref, SIZE_HALF))
abort ();
- MASK_ZERO (i_w) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_w) (res3, res_ref))
+ MASK_ZERO (i_uw) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_uw) (res3, res_ref))
abort ();
}
#include "avx512f-mask-type.h"
#include <limits.h>
+static void
CALC (unsigned char *r, unsigned long long *s, int mem)
{
int i;
}
}
-void static
+void
TEST (void)
{
- int i, sign;
- UNION_TYPE (128, i_b) res1, res2, res3;
+ int i;
+ UNION_TYPE (128, i_ub) res1, res2, res3;
unsigned char res4[16];
- UNION_TYPE (AVX512F_LEN, i_q) src;
+ UNION_TYPE (AVX512F_LEN, i_uq) src;
MASK_TYPE mask = MASK_VALUE;
unsigned char res_ref[16];
unsigned char res_ref2[16];
CALC (res_ref, src.a, 0);
- if (UNION_CHECK (128, i_b) (res1, res_ref))
+ if (UNION_CHECK (128, i_ub) (res1, res_ref))
abort ();
- MASK_MERGE (i_b) (res_ref, mask, SIZE);
- if (UNION_CHECK (128, i_b) (res2, res_ref))
+ MASK_MERGE (i_ub) (res_ref, mask, SIZE);
+ if (UNION_CHECK (128, i_ub) (res2, res_ref))
abort ();
- MASK_ZERO (i_b) (res_ref, mask, SIZE);
- if (UNION_CHECK (128, i_b) (res3, res_ref))
+ MASK_ZERO (i_ub) (res_ref, mask, SIZE);
+ if (UNION_CHECK (128, i_ub) (res3, res_ref))
abort ();
INTRINSIC (_mask_cvtusepi64_storeu_epi8) (res4, mask, src.x);
CALC (res_ref2, src.a, 1);
- MASK_MERGE (i_b) (res_ref2, mask, SIZE);
+ MASK_MERGE (i_ub) (res_ref2, mask, SIZE);
- if (checkVc (res4, res_ref2, 16))
+ if (checkVuc (res4, res_ref2, 16))
abort ();
}
#define SIZE_HALF (AVX512F_LEN_HALF / 32)
#include <limits.h>
+static void
CALC (unsigned int *r, unsigned long long *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
- int i, sign;
- UNION_TYPE (AVX512F_LEN_HALF, i_d) res1, res2, res3;
+ int i;
+ UNION_TYPE (AVX512F_LEN_HALF, i_ud) res1, res2, res3;
unsigned int res4[SIZE_HALF];
- UNION_TYPE (AVX512F_LEN, i_q) src;
+ UNION_TYPE (AVX512F_LEN, i_uq) src;
MASK_TYPE mask = MASK_VALUE;
unsigned int res_ref[SIZE_HALF];
CALC (res_ref, src.a);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res2, res_ref))
abort ();
- if (checkVi (res4, res_ref, SIZE_HALF))
+ if (checkVui (res4, res_ref, SIZE_HALF))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN_HALF, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN_HALF, i_ud) (res3, res_ref))
abort ();
}
#include "avx512f-mask-type.h"
#include <limits.h>
+static void
CALC (unsigned short *r, unsigned long long *s)
{
int i;
}
}
-void static
+void
TEST (void)
{
- int i, sign;
- UNION_TYPE (128, i_w) res1, res2, res3;
+ int i;
+ UNION_TYPE (128, i_uw) res1, res2, res3;
unsigned short res4[8];
- UNION_TYPE (AVX512F_LEN, i_q) src;
+ UNION_TYPE (AVX512F_LEN, i_uq) src;
MASK_TYPE mask = MASK_VALUE;
unsigned short res_ref[8];
CALC (res_ref, src.a);
- if (UNION_CHECK (128, i_w) (res1, res_ref))
+ if (UNION_CHECK (128, i_uw) (res1, res_ref))
abort ();
- MASK_MERGE (i_w) (res_ref, mask, SIZE);
- if (UNION_CHECK (128, i_w) (res2, res_ref))
+ MASK_MERGE (i_uw) (res_ref, mask, SIZE);
+ if (UNION_CHECK (128, i_uw) (res2, res_ref))
abort ();
- if (checkVs (res4, res_ref, 8))
+ if (checkVus (res4, res_ref, 8))
abort ();
- MASK_ZERO (i_w) (res_ref, mask, SIZE);
- if (UNION_CHECK (128, i_w) (res3, res_ref))
+ MASK_ZERO (i_uw) (res_ref, mask, SIZE);
+ if (UNION_CHECK (128, i_uw) (res3, res_ref))
abort ();
}
}
}
-static void
+void
TEST (void)
{
- union128i_b s;
+ union128i_ub s;
UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
int res_ref[SIZE];
}
}
-static void
+void
TEST (void)
{
- union128i_b s;
+ union128i_ub s;
UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
long long int res_ref[SIZE];
}
}
-static void
+void
TEST (void)
{
- UNION_TYPE (AVX512F_LEN_HALF, i_d) s;
+ UNION_TYPE (AVX512F_LEN_HALF, i_ud) s;
UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
long long int res_ref[SIZE];
}
}
-static void
+void
TEST (void)
{
- UNION_TYPE (AVX512F_LEN_HALF, i_w) s;
+ UNION_TYPE (AVX512F_LEN_HALF, i_uw) s;
UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
int res_ref[SIZE];
}
}
-static void
+void
TEST (void)
{
- union128i_w s;
+ union128i_uw s;
UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
long long int res_ref[SIZE];
r[i] = s1[i * 2] * s2[i * 2];
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, s2;
UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
long long res_ref[DST_SIZE];
- int i, sign = 1;
+ int i;
for (i = 0; i < SRC_SIZE; i++)
{
dst[i] = src1[i] * src2[i];
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) src1, src2, res1, res2, res3;
r[i] = s1[i * 2] * s2[i * 2];
}
-static void
+void
TEST (void)
{
- UNION_TYPE (AVX512F_LEN, i_d) s1, s2;
- UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3;
+ UNION_TYPE (AVX512F_LEN, i_ud) s1, s2;
+ UNION_TYPE (AVX512F_LEN, i_uq) res1, res2, res3;
MASK_TYPE mask = MASK_VALUE;
unsigned long long res_ref[DST_SIZE];
- int i, sign = 1;
+ int i;
for (i = 0; i < SRC_SIZE; i++)
{
res2.x = INTRINSIC (_mask_mul_epu32) (res2.x, mask, s1.x, s2.x);
res3.x = INTRINSIC (_maskz_mul_epu32) (mask, s1.x, s2.x);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res1, res_ref))
abort ();
- MASK_MERGE (i_q) (res_ref, mask, DST_SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res2, res_ref))
+ MASK_MERGE (i_uq) (res_ref, mask, DST_SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res2, res_ref))
abort ();
- MASK_ZERO (i_q) (res_ref, mask, DST_SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res3, res_ref))
+ MASK_ZERO (i_uq) (res_ref, mask, DST_SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res3, res_ref))
abort ();
}
r[i] = s1[i] | s2[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, s2, res1, res2, res3, res4;
r[i] = s1[i] | s2[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, s2, res1, res2, res3;
unsigned int i;
for (i = 0; i < SIZE; i++)
- r[i] = (s1[i] << count) | (s1[i] >> sizeof (s1[i]) * 8 - count);
+ r[i] = (s1[i] << count) | (s1[i] >> (sizeof (s1[i]) * 8 - count));
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, res1, res2, res3;
unsigned int i;
for (i = 0; i < SIZE; i++)
- r[i] = (s1[i] << count) | (s1[i] >> sizeof (s1[i]) * 8 - count);
+ r[i] = (s1[i] << count) | (s1[i] >> (sizeof (s1[i]) * 8 - count));
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, res1, res2, res3;
unsigned int i;
for (i = 0; i < SIZE; i++)
- r[i] = (s1[i] << s2[i]) | (s1[i] >> sizeof (s1[i]) * 8 - s2[i]);
+ r[i] = (s1[i] << s2[i]) | (s1[i] >> (sizeof (s1[i]) * 8 - s2[i]));
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, s2, res1, res2, res3;
unsigned int i;
for (i = 0; i < SIZE; i++)
- r[i] = (s1[i] << s2[i]) | (s1[i] >> sizeof (s1[i]) * 8 - s2[i]);
+ r[i] = (s1[i] << s2[i]) | (s1[i] >> (sizeof (s1[i]) * 8 - s2[i]));
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, s2, res1, res2, res3;
unsigned int i;
for (i = 0; i < SIZE; i++)
- r[i] = (s1[i] >> count) | (s1[i] << sizeof (s1[i]) * 8 - count);
+ r[i] = (s1[i] >> count) | (s1[i] << (sizeof (s1[i]) * 8 - count));
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, res1, res2, res3;
unsigned int i;
for (i = 0; i < SIZE; i++)
- r[i] = (s1[i] >> count) | (s1[i] << sizeof (s1[i]) * 8 - count);
+ r[i] = (s1[i] >> count) | (s1[i] << (sizeof (s1[i]) * 8 - count));
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, res1, res2, res3;
unsigned int i;
for (i = 0; i < SIZE; i++)
- r[i] = (s1[i] >> s2[i]) | (s1[i] << sizeof (s1[i]) * 8 - s2[i]);
+ r[i] = (s1[i] >> s2[i]) | (s1[i] << (sizeof (s1[i]) * 8 - s2[i]));
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, s2, res1, res2, res3;
unsigned int i;
for (i = 0; i < SIZE; i++)
- r[i] = (s1[i] >> s2[i]) | (s1[i] << sizeof (s1[i]) * 8 - s2[i]);
+ r[i] = (s1[i] >> s2[i]) | (s1[i] << (sizeof (s1[i]) * 8 - s2[i]));
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, s2, res1, res2, res3;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, res1, res2, res3;
int res_ref[SIZE];
- int i, j, sign = 1;
+ int j, sign = 1;
MASK_TYPE mask = MASK_VALUE;
for (j = 0; j < SIZE; j++)
{
- s1.a[j] = j * i * sign;
+ s1.a[j] = j * sign;
res1.a[j] = DEFAULT_VALUE;
res2.a[j] = DEFAULT_VALUE;
res3.a[j] = DEFAULT_VALUE;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, long long* s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, int count)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long* s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long count)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-CALC (unsigned int *r, unsigned int *s1, unsigned int *s2)
+static void
+CALC (int *r, int *s1, int *s2)
{
int i;
for (i = 0; i < SIZE; i++)
}
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3, src1, src2;
MASK_TYPE mask = MASK_VALUE;
- unsigned int res_ref[SIZE];
+ int res_ref[SIZE];
for (i = 0; i < SIZE; i++)
{
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
-CALC (unsigned long long *r, unsigned long long *s1,
- unsigned long long *s2)
+static void
+CALC (long long *r, long long *s1,
+ long long *s2)
{
int i;
for (i = 0; i < SIZE; i++)
}
}
-void static
+void
TEST (void)
{
int i;
UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3, src1, src2;
MASK_TYPE mask = MASK_VALUE;
- unsigned long long res_ref[SIZE];
+ long long res_ref[SIZE];
for (i = 0; i < SIZE; i++)
{
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, long long *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, int count)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long count)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, int *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-CALC (unsigned int *r, unsigned int *s1, unsigned long long* s2)
+static void
+CALC (unsigned int *r, unsigned int *s1, unsigned long long *s2)
{
int i;
unsigned int count = s2[0];
}
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3, src1;
- UNION_TYPE (128, i_q) src2;
+ UNION_TYPE (AVX512F_LEN, i_ud) res1, res2, res3, src1;
+ UNION_TYPE (128, i_uq) src2;
MASK_TYPE mask = MASK_VALUE;
unsigned int res_ref[SIZE];
CALC (res_ref, src1.a, src2.a);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res3, res_ref))
abort ();
}
}
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
-CALC (unsigned int *r, unsigned int *s1, unsigned int count)
+static void
+CALC (unsigned int *r, unsigned int *s1, int count)
{
int i;
for (i = 0; i < SIZE; i++)
}
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3, src1;
+ UNION_TYPE (AVX512F_LEN, i_ud) res1, res2, res3, src1;
MASK_TYPE mask = MASK_VALUE;
unsigned int res_ref[SIZE];
CALC (res_ref, src1.a, 3);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res3, res_ref))
abort ();
CALC (res_ref, src1.a, 33);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
-CALC (unsigned long long *r, unsigned long long *s1, unsigned long long* s2)
+static void
+CALC (unsigned long long *r, unsigned long long *s1, unsigned long long* s2)
{
int i;
unsigned long long count = s2[0];
}
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3, src1;
- UNION_TYPE (128, i_q) src2;
+ UNION_TYPE (AVX512F_LEN, i_uq) res1, res2, res3, src1;
+ UNION_TYPE (128, i_uq) src2;
MASK_TYPE mask = MASK_VALUE;
unsigned long long res_ref[SIZE];
CALC (res_ref, src1.a, src2.a);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res1, res_ref))
abort ();
- MASK_MERGE (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res2, res_ref))
+ MASK_MERGE (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res2, res_ref))
abort ();
- MASK_ZERO (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res3, res_ref))
+ MASK_ZERO (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res3, res_ref))
abort ();
}
}
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (unsigned long long *r, unsigned long long *s1,
unsigned long long count)
{
}
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3, src1;
+ UNION_TYPE (AVX512F_LEN, i_uq) res1, res2, res3, src1;
MASK_TYPE mask = MASK_VALUE;
unsigned long long res_ref[SIZE];
CALC (res_ref, src1.a, 3);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res1, res_ref))
abort ();
- MASK_MERGE (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res2, res_ref))
+ MASK_MERGE (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res2, res_ref))
abort ();
- MASK_ZERO (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res3, res_ref))
+ MASK_ZERO (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res3, res_ref))
abort ();
CALC (res_ref, src1.a, 65);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res1, res_ref))
abort ();
- MASK_MERGE (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res2, res_ref))
+ MASK_MERGE (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res2, res_ref))
abort ();
- MASK_ZERO (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res3, res_ref))
+ MASK_ZERO (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (unsigned int *r, unsigned int *s1, unsigned int *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_d) res1, res2, res3, src1, src2;
+ UNION_TYPE (AVX512F_LEN, i_ud) res1, res2, res3, src1, src2;
MASK_TYPE mask = MASK_VALUE;
unsigned int res_ref[SIZE];
CALC (res_ref, src1.a, src2.a);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res1, res_ref))
abort ();
- MASK_MERGE (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res2, res_ref))
+ MASK_MERGE (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res2, res_ref))
abort ();
- MASK_ZERO (i_d) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_d) (res3, res_ref))
+ MASK_ZERO (i_ud) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_ud) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
-CALC (unsigned long long *r, unsigned long long *s1,
- unsigned long long *s2)
+static void
+CALC (unsigned long long *r, unsigned long long *s1, unsigned long long *s2)
{
int i;
for (i = 0; i < SIZE; i++)
}
}
-void static
+void
TEST (void)
{
int i;
- UNION_TYPE (AVX512F_LEN, i_q) res1, res2, res3, src1, src2;
+ UNION_TYPE (AVX512F_LEN, i_uq) res1, res2, res3, src1, src2;
MASK_TYPE mask = MASK_VALUE;
unsigned long long res_ref[SIZE];
CALC (res_ref, src1.a, src2.a);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res1, res_ref))
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res1, res_ref))
abort ();
- MASK_MERGE (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res2, res_ref))
+ MASK_MERGE (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res2, res_ref))
abort ();
- MASK_ZERO (i_q) (res_ref, mask, SIZE);
- if (UNION_CHECK (AVX512F_LEN, i_q) (res3, res_ref))
+ MASK_ZERO (i_uq) (res_ref, mask, SIZE);
+ if (UNION_CHECK (AVX512F_LEN, i_uq) (res3, res_ref))
abort ();
}
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, int *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) src2, src3, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) src2, src3, res1, res2, res3;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *res, int *src1, int *src2)
{
int i;
*res = *res | one << i;
}
-static void
+void
TEST (void)
{
int i, sign = 1;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *res, long long *src1, long long *src2)
{
int i;
*res = *res | one << i;
}
-static void
+void
TEST (void)
{
int i, sign = 1;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *res, int *src1, int *src2)
{
int i;
*res = *res | one << i;
}
-static void
+void
TEST (void)
{
int i, sign = 1;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (MASK_TYPE *res, long long *src1, long long *src2)
{
int i;
*res = *res | one << i;
}
-static void
+void
TEST (void)
{
int i, sign = 1;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, int *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (int *r, int *s1, int *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (long long *r, long long *s1, long long *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
r[i] = s1[i] ^ s2[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) s1, s2, res1, res2, res3, res4;
r[i] = s1[i] ^ s2[i];
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) s1, s2, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) s, res1, res2, res3;
/* { dg-require-effective-target avx512f } */
#include "avx512f-check.h"
-#include "avx512f-helper.h"
static void
compute_vrcp14sd (double *s1, double *s2, double *r)
static void
avx512f_test (void)
{
- union128d s1, s2, res1, res2, res3;
+ union128d s1, s2, res1;
double res_ref[2];
s1.x = _mm_set_pd (-3.0, 111.111);
s2.x = _mm_set_pd (222.222, -2.0);
- res2.a[0] = DEFAULT_VALUE;
res1.x = _mm_rcp14_sd (s1.x, s2.x);
/* { dg-require-effective-target avx512f } */
#include "avx512f-check.h"
-#include "avx512f-helper.h"
static void
compute_vrcp14ss (float *s1, float *s2, float *r)
static void
avx512f_test (void)
{
- union128 s1, s2, res1, res2, res3;
+ union128 s1, s2, res1;
float res_ref[4];
s1.x = _mm_set_ps (-24.043, 68.346, -43.35, 546.46);
s2.x = _mm_set_ps (222.222, 333.333, 444.444, -2.0);
- res2.a[0] = DEFAULT_VALUE;
res1.x = _mm_rcp14_ss (s1.x, s2.x);
}
}
-void static
+void
TEST (void)
{
int imm, i, j;
UNION_TYPE (AVX512F_LEN, d) res1,res2,res3,s;
double res_ref[SIZE];
- double res_ref_mask[SIZE];
MASK_TYPE mask = 6 ^ (0xff >> SIZE);
}
}
-void static
+void
TEST (void)
{
int imm, i, j;
#include <math.h>
#include "avx512f-check.h"
-#include "avx512f-helper.h"
static void
compute_rndscalesd (double *s1, double *s2, double *r, int imm)
#include <math.h>
#include "avx512f-check.h"
-#include "avx512f-helper.h"
static void
compute_rndscaless (float *s1, float *s2, float *r, int imm)
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) s, res1, res2, res3;
#include <math.h>
#include "avx512f-check.h"
-#include "avx512f-helper.h"
static void
compute_vrsqrt14sd (double *s1, double *s2, double *r)
static void
avx512f_test (void)
{
- union128d s1, s2, res1, res2, res3;
+ union128d s1, s2, res1;
double res_ref[2];
s1.x = _mm_set_pd (-3.0, 111.111);
s2.x = _mm_set_pd (222.222, 4.0);
- res2.a[0] = DEFAULT_VALUE;
res1.x = _mm_rsqrt14_sd (s1.x, s2.x);
#include <math.h>
#include "avx512f-check.h"
-#include "avx512f-helper.h"
static void
compute_vrsqrt14ss (float *s1, float *s2, float *r)
static void
avx512f_test (void)
{
- union128 s1, s2, res1, res2, res3;
+ union128 s1, s2, res1;
float res_ref[4];
s1.x = _mm_set_ps (-24.43, 68.346, -43.35, 546.46);
s2.x = _mm_set_ps (222.222, 333.333, 444.444, 4.0);
- res2.a[0] = DEFAULT_VALUE;
res1.x = _mm_rsqrt14_ss (s1.x, s2.x);
#include "avx512f-mask-type.h"
#include <math.h>
+void static
CALC (double *r, double *s1, double *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#include "avx512f-mask-type.h"
#include <math.h>
+void static
CALC (float *r, float *s1, float *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#include <math.h>
#include "avx512f-check.h"
-#include "avx512f-helper.h"
#define SIZE (128 / 64)
#include <math.h>
#include "avx512f-check.h"
-#include "avx512f-helper.h"
#define SIZE (128 / 32)
#include "avx512f-mask-type.h"
#include "string.h"
-void
+static void
CALC (float *e, UNION_TYPE (AVX512F_LEN,) s1, UNION_TYPE (AVX512F_LEN,) s2,
int imm)
{
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) u1, u2, u3, s1, s2;
#include "avx512f-mask-type.h"
#include "string.h"
-void
+static void
CALC (double *e, UNION_TYPE (AVX512F_LEN, d) s1,
UNION_TYPE (AVX512F_LEN, d) s2, int imm)
{
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) u1, u2, u3, s1, s2;
#include "avx512f-mask-type.h"
#include "string.h"
-void
+static void
CALC (int *e, UNION_TYPE (AVX512F_LEN, i_d) s1,
UNION_TYPE (AVX512F_LEN, i_d) s2, int imm)
{
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_d) u1, u2, u3, s1, s2;
#include "avx512f-mask-type.h"
#include "string.h"
-void
+static void
CALC (long long *e, UNION_TYPE (AVX512F_LEN, i_q) s1,
UNION_TYPE (AVX512F_LEN, i_q) s2, int imm)
{
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, i_q) u1, u2, u3, s1, s2;
#endif
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) u1, u2, u3, s1, s2;
#endif
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) u1, u2, u3, s1, s2;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s, res1, res2, res3;
}
}
-static void
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) s, res1, res2, res3;
#define SIZE (AVX512F_LEN / 64)
#include "avx512f-mask-type.h"
+static void
CALC (double *r, double *s1, double *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
#define SIZE (AVX512F_LEN / 32)
#include "avx512f-mask-type.h"
+static void
CALC (float *r, float *s1, float *s2)
{
int i;
}
}
-void static
+void
TEST (void)
{
int i, sign;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, s2, res1, res2, res3;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, ) s1, s2, res1, res2, res3;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN, d) s1, s2, res1, res2, res3;
}
}
-void static
+void
TEST (void)
{
UNION_TYPE (AVX512F_LEN,) s1, s2, u1, u2, u3;
__v8di
mm512_and_epi64 (__v8di __X, __v8di __Y)
{
- __v8di __W;
- return __builtin_ia32_pandq512_mask (__X, __Y, __W, -1);
+ return __builtin_ia32_pandq512_mask (__X, __Y, __X, -1);
}
} "-mavx512f" ]
}
__v16sf
mm512_exp2a23_ps (__v16sf __X)
{
- __v16sf __W;
- return __builtin_ia32_exp2ps_mask (__X, __W, -1, 4);
+ return __builtin_ia32_exp2ps_mask (__X, __X, -1, 4);
}
} "-Wno-psabi -mavx512er" ]
}
typedef union
{
__m128i x;
+ unsigned int a[4];
+} union128i_ud;
+
+typedef union
+{
+ __m128i x;
long long a[2];
} union128i_q;
typedef union
{
+ __m128i x;
+ unsigned long long a[2];
+} union128i_uq;
+
+
+typedef union
+{
__m128d x;
double a[2];
} union128d;
CHECK_EXP (union128i_w, short, "%d")
CHECK_EXP (union128i_uw, unsigned short, "%d")
CHECK_EXP (union128i_d, int, "0x%x")
+CHECK_EXP (union128i_ud, unsigned int, "0x%x")
CHECK_EXP (union128i_q, long long, "0x%llx")
+CHECK_EXP (union128i_uq, unsigned long long, "0x%llx")
CHECK_EXP (union128d, double, "%f")
#endif
CHECK_ARRAY(s, short, "0x%hx")
CHECK_ARRAY(i, int, "0x%x")
CHECK_ARRAY(l, long long, "0x%llx")
+CHECK_ARRAY(uc, unsigned char, "0x%hhx")
+CHECK_ARRAY(us, unsigned short, "0x%hx")
+CHECK_ARRAY(ui, unsigned int, "0x%x")
+CHECK_ARRAY(ul, unsigned long long, "0x%llx")
+
+
#define CHECK_FP_ARRAY(ARRAY, TYPE, ESP, FMT) \
static int \
double a[4];
} union256d;
+typedef union
+{
+ __m256i x;
+ unsigned char a[32];
+} union256i_ub;
+
+typedef union
+{
+ __m256i x;
+ unsigned short a[16];
+} union256i_uw;
+
+typedef union
+{
+ __m256i x;
+ unsigned int a[8];
+} union256i_ud;
+
+typedef union
+{
+ __m256i x;
+ unsigned long long a[4];
+} union256i_uq;
+
CHECK_EXP (union256i_b, char, "%d")
CHECK_EXP (union256i_w, short, "%d")
CHECK_EXP (union256i_d, int, "0x%x")
CHECK_EXP (union256i_q, long long, "0x%llx")
CHECK_EXP (union256, float, "%f")
CHECK_EXP (union256d, double, "%f")
+CHECK_EXP (union256i_ub, unsigned char, "%d")
+CHECK_EXP (union256i_uw, unsigned short, "%d")
+CHECK_EXP (union256i_ud, unsigned int, "0x%x")
+CHECK_EXP (union256i_uq, unsigned long long, "0x%llx")
#define CHECK_FP_EXP(UINON_TYPE, VALUE_TYPE, ESP, FMT) \
static int \
double a[8];
} union512d;
+typedef union
+{
+ __m512i x;
+ unsigned char a[64];
+} union512i_ub;
+
+typedef union
+{
+ __m512i x;
+ unsigned short a[32];
+ } union512i_uw;
+
+typedef union
+{
+ __m512i x;
+ unsigned int a[16];
+} union512i_ud;
+
+typedef union
+{
+ __m512i x;
+ unsigned long long a[8];
+} union512i_uq;
+
+
CHECK_EXP (union512i_b, char, "%d")
CHECK_EXP (union512i_w, short, "%d")
CHECK_EXP (union512i_d, int, "0x%x")
CHECK_EXP (union512i_q, long long, "0x%llx")
CHECK_EXP (union512, float, "%f")
CHECK_EXP (union512d, double, "%f")
+CHECK_EXP (union512i_ub, unsigned char, "%d")
+CHECK_EXP (union512i_uw, unsigned short, "%d")
+CHECK_EXP (union512i_ud, unsigned int, "0x%x")
+CHECK_EXP (union512i_uq, unsigned long long, "0x%llx")
+
CHECK_FP_EXP (union512, float, ESP_FLOAT, "%f")
CHECK_FP_EXP (union512d, double, ESP_DOUBLE, "%f")