Skip to content

Commit ca25261

Browse files
authored
Merge pull request #41710 from compnerd/intrinsics
visualc: add new `_visualc_intrinsics` module
2 parents c979b9f + b7ceca3 commit ca25261

File tree

1 file changed

+74
-0
lines changed

1 file changed

+74
-0
lines changed

stdlib/public/Platform/visualc.modulemap

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,80 @@
1010
//
1111
//===----------------------------------------------------------------------===//
1212

13+
module _visualc_intrinsics [system] [extern_c] {
14+
explicit module arm {
15+
requires armv7
16+
header "armintr.h"
17+
18+
explicit module neon {
19+
requires neon
20+
header "arm_neon.h"
21+
}
22+
}
23+
24+
explicit module aarch64 {
25+
requires aarch64
26+
header "arm64intr.h"
27+
28+
explicit module neon {
29+
requires neon
30+
header "arm64_neon.h"
31+
}
32+
}
33+
34+
explicit module intel {
35+
requires x86
36+
export *
37+
38+
header "immintrin.h"
39+
40+
explicit module mmx {
41+
header "mmintrin.h"
42+
}
43+
44+
explicit module sse {
45+
export mmx
46+
header "xmmintrin.h"
47+
}
48+
49+
explicit module sse2 {
50+
export sse
51+
header "emmintrin.h"
52+
}
53+
54+
explicit module sse3 {
55+
export sse2
56+
header "pmmintrin.h"
57+
}
58+
59+
explicit module ssse3 {
60+
export sse3
61+
header "tmmintrinh"
62+
}
63+
64+
explicit module sse4_1 {
65+
export ssse3
66+
header "smmintrin.h"
67+
}
68+
69+
explicit module sse4_2 {
70+
export sse4_1
71+
header "nmmintrin.h"
72+
}
73+
74+
explicit module sse4a {
75+
export sse3
76+
header "ammintrin.h"
77+
}
78+
79+
explicit module aes_pclmul {
80+
header "wmmintrin.h"
81+
export aes
82+
export pclmul
83+
}
84+
}
85+
}
86+
1387
module visualc [system] {
1488
module SAL {
1589
header "sal.h"

0 commit comments

Comments
 (0)