Skip to content

Commit 51b5300

Browse files
committed
Define AVX conversion intrinsics
This defines the following intrinsics: * `_mm256_cvtepi32_pd` * `_mm256_cvtepi32_ps` * `_mm256_cvtpd_epi32` * `_mm256_cvtpd_ps` * `_mm256_cvtps_epi32` * `_mm256_cvtps_pd` * `_mm256_cvttpd_epi32` * `_mm256_cvttps_epi32` Intel reference: https://software.intel.com/en-us/node/514130.
1 parent 37efeae commit 51b5300

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

src/etc/platform-intrinsics/x86/avx.json

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,62 @@
1515
"ret": "f(32-64)",
1616
"args": ["s8SPc"]
1717
},
18+
{
19+
"intrinsic": "256_cvtepi32_pd",
20+
"width": [256],
21+
"llvm": "cvtdq2.pd.256",
22+
"ret": "f64",
23+
"args": ["s32h"]
24+
},
25+
{
26+
"intrinsic": "256_cvtepi32_ps",
27+
"width": [256],
28+
"llvm": "cvtdq2.ps.256",
29+
"ret": "f32",
30+
"args": ["s32"]
31+
},
32+
{
33+
"intrinsic": "256_cvtpd_epi32",
34+
"width": [256],
35+
"llvm": "cvt.pd2dq.256",
36+
"ret": "s32h",
37+
"args": ["f64"]
38+
},
39+
{
40+
"intrinsic": "256_cvtpd_ps",
41+
"width": [256],
42+
"llvm": "cvt.pd2.ps.256",
43+
"ret": "f32h",
44+
"args": ["f64"]
45+
},
46+
{
47+
"intrinsic": "256_cvtps_epi32",
48+
"width": [256],
49+
"llvm": "cvt.ps2dq.256",
50+
"ret": "s32",
51+
"args": ["f32"]
52+
},
53+
{
54+
"intrinsic": "256_cvtps_pd",
55+
"width": [256],
56+
"llvm": "cvt.ps2.pd.256",
57+
"ret": "f64",
58+
"args": ["f32h"]
59+
},
60+
{
61+
"intrinsic": "256_cvttpd_epi32",
62+
"width": [256],
63+
"llvm": "cvtt.pd2dq.256",
64+
"ret": "s32h",
65+
"args": ["f64"]
66+
},
67+
{
68+
"intrinsic": "256_cvttps_epi32",
69+
"width": [256],
70+
"llvm": "cvtt.ps2dq.256",
71+
"ret": "s32",
72+
"args": ["f32"]
73+
},
1874
{
1975
"intrinsic": "256_dp_ps",
2076
"width": [256],

0 commit comments

Comments
 (0)