brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.0 KiB · a5e8121 Raw
152 lines · c
1// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=i386 -target-feature +avx10.2 -emit-llvm -o - | FileCheck %s --check-prefixes=CHECK,X862// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=x86_64 -target-feature +avx10.2 -emit-llvm -o - | FileCheck %s --check-prefixes=CHECK,X643 4#include <immintrin.h>5#include <stddef.h>6 7__m256i test_mm512_cvtts_pd_epi32(__m512d A) {8  // CHECK-LABEL: test_mm512_cvtts_pd_epi329  // CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.512(<8 x double>10  return _mm512_cvtts_pd_epi32(A);11}12 13__m256i test_mm512_mask_cvtts_pd_epi32(__m256i W, __mmask8 U, __m512d A) {14  // CHECK-LABEL: test_mm512_mask_cvtts_pd_epi3215  // CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.512(<8 x double>16  return _mm512_mask_cvtts_pd_epi32(W, U, A);17}18 19__m256i test_mm512_maskz_cvtts_pd_epi32(__mmask8 U, __m512d A) {20  // CHECK-LABEL: test_mm512_maskz_cvtts_pd_epi3221  // CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.512(<8 x double>22  return _mm512_maskz_cvtts_pd_epi32(U, A);23}24 25__m256i test_mm512_cvtts_roundpd_epi32(__m512d A) {26  // CHECK-LABEL: test_mm512_cvtts_roundpd_epi3227  // CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.512(<8 x double>28  return _mm512_cvtts_roundpd_epi32(A, _MM_FROUND_NO_EXC);29}30 31__m256i test_mm512_mask_cvtts_roundpd_epi32(__m256i W, __mmask8 U, __m512d A) {32  // CHECK-LABEL: test_mm512_mask_cvtts_roundpd_epi3233  // CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.512(<8 x double>34  return _mm512_mask_cvtts_roundpd_epi32(W, U, A, _MM_FROUND_NO_EXC);35}36 37__m256i test_mm512_maskz_cvtts_roundpd_epi32(__mmask8 U, __m512d A) {38  // CHECK-LABEL: test_mm512_maskz_cvtts_roundpd_epi3239  // CHECK: @llvm.x86.avx10.mask.vcvttpd2dqs.round.512(<8 x double>40  return _mm512_maskz_cvtts_roundpd_epi32(U, A, _MM_FROUND_NO_EXC);41}42 43__m256i test_mm512_cvtts_pd_epu32(__m512d A) {44  // CHECK-LABEL: test_mm512_cvtts_pd_epu3245  // CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.512(<8 x double>46  return _mm512_cvtts_pd_epu32(A);47}48 49__m256i test_mm512_mask_cvtts_pd_epu32(__m256i W, __mmask8 U, __m512d A) {50  // CHECK-LABEL: test_mm512_mask_cvtts_pd_epu3251  // CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.512(<8 x double>52  return _mm512_mask_cvtts_pd_epu32(W, U, A);53}54 55__m256i test_mm512_maskz_cvtts_pd_epu32(__mmask8 U, __m512d A) {56  // CHECK-LABEL: test_mm512_maskz_cvtts_pd_epu3257  // CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.512(<8 x double>58  return _mm512_maskz_cvtts_pd_epu32(U, A);59}60 61__m256i test_mm512_cvtts_roundpd_epu32(__m512d A) {62  // CHECK-LABEL: test_mm512_cvtts_roundpd_epu3263  // CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.512(<8 x double>64  return _mm512_cvtts_roundpd_epu32(A, _MM_FROUND_NO_EXC);65}66 67__m256i test_mm512_mask_cvtts_roundpd_epu32(__m256i W, __mmask8 U, __m512d A) {68  // CHECK-LABEL: test_mm512_mask_cvtts_roundpd_epu3269  // CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.512(<8 x double>70  return _mm512_mask_cvtts_roundpd_epu32(W, U, A, _MM_FROUND_NO_EXC);71}72 73__m256i test_mm512_maskz_cvtts_roundpd_epu32(__mmask8 U, __m512d A) {74  // CHECK-LABEL: test_mm512_maskz_cvtts_roundpd_epu3275  // CHECK: @llvm.x86.avx10.mask.vcvttpd2udqs.round.512(<8 x double>76  return _mm512_maskz_cvtts_roundpd_epu32(U, A, _MM_FROUND_NO_EXC);77}78 79__m512i test_mm512_cvtts_ps_epi32(__m512 A) {80  // CHECK-LABEL: test_mm512_cvtts_ps_epi3281  // CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.512(<16 x float>82  return _mm512_cvtts_ps_epi32(A);83}84 85__m512i test_mm512_mask_cvtts_ps_epi32(__m512i W, __mmask8 U, __m512 A) {86  // CHECK-LABEL: test_mm512_mask_cvtts_ps_epi3287  // CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.512(<16 x float>88  return _mm512_mask_cvtts_ps_epi32(W, U, A);89}90 91__m512i test_mm512_maskz_cvtts_ps_epi32(__mmask8 U, __m512 A) {92  // CHECK-LABEL: test_mm512_maskz_cvtts_ps_epi3293  // CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.512(<16 x float>94  return _mm512_maskz_cvtts_ps_epi32(U, A);95}96 97__m512i test_mm512_cvtts_roundps_epi32(__m512 A) {98  // CHECK-LABEL: test_mm512_cvtts_roundps_epi3299  // CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.512(<16 x float>100  return _mm512_cvtts_roundps_epi32(A, _MM_FROUND_NO_EXC);101}102 103__m512i test_mm512_mask_cvtts_roundps_epi32(__m512i W, __mmask8 U, __m512 A) {104  // CHECK-LABEL: test_mm512_mask_cvtts_roundps_epi32105  // CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.512(<16 x float>106  return _mm512_mask_cvtts_roundps_epi32(W, U, A, _MM_FROUND_NO_EXC);107}108 109__m512i test_mm512_maskz_cvtts_roundps_epi32(__mmask8 U, __m512 A) {110  // CHECK-LABEL: test_mm512_maskz_cvtts_roundps_epi32111  // CHECK: @llvm.x86.avx10.mask.vcvttps2dqs.round.512(<16 x float>112  return _mm512_maskz_cvtts_roundps_epi32(U, A, _MM_FROUND_NO_EXC);113}114 115__m512i test_mm512_cvtts_ps_epu32(__m512 A) {116  // CHECK-LABEL: test_mm512_cvtts_ps_epu32117  // CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.512(<16 x float>118  return _mm512_cvtts_ps_epu32(A);119}120 121__m512i test_mm512_mask_cvtts_ps_epu32(__m512i W, __mmask8 U, __m512 A) {122  // CHECK-LABEL: test_mm512_mask_cvtts_ps_epu32123  // CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.512(<16 x float>124  return _mm512_mask_cvtts_ps_epu32(W, U, A);125}126 127__m512i test_mm512_maskz_cvtts_ps_epu32(__mmask8 U, __m512 A) {128  // CHECK-LABEL: test_mm512_maskz_cvtts_ps_epu32129  // CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.512(<16 x float>130  return _mm512_maskz_cvtts_ps_epu32(U, A);131}132 133__m512i test_mm512_cvtts_roundps_epu32(__m512 A) {134  // CHECK-LABEL: test_mm512_cvtts_roundps_epu32135  // CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.512(<16 x float>136  return _mm512_cvtts_roundps_epu32(A, _MM_FROUND_NO_EXC);137}138 139__m512i test_mm512_mask_cvtts_roundps_epu32(__m512i W, __mmask8 U, __m512 A) {140  // CHECK-LABEL: test_mm512_mask_cvtts_roundps_epu32141  // CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.512(<16 x float>142  return _mm512_mask_cvtts_roundps_epu32(W, U, A, _MM_FROUND_NO_EXC);143}144__m512i test_mm512_maskz_cvtts_roundps_epu32(__mmask8 U, __m512 A) {145  // CHECK-LABEL: test_mm512_maskz_cvtts_roundps_epu32146  // CHECK: @llvm.x86.avx10.mask.vcvttps2udqs.round.512(<16 x float>147  return _mm512_maskz_cvtts_roundps_epu32(U, A, _MM_FROUND_NO_EXC);148}149 150// X64: {{.*}}151// X86: {{.*}}152