lib/Header: Fix Visual Studio builds try #2
[llvm-project.git] / clang / lib / Headers / module.modulemap
blobfbd3b3390c9b9c70ec78d063aa87bfdccfb8bde6
1 /*===---- module.modulemap - intrinsics module map -------------------------===
2  *
3  * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4  * See https://llvm.org/LICENSE.txt for license information.
5  * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6  *
7  *===-----------------------------------------------------------------------===
8  */
10 module _Builtin_intrinsics [system] [extern_c] {
11   explicit module altivec {
12     requires altivec
13     header "altivec.h"
14   }
16   explicit module arm {
17     requires arm
19     explicit module acle {
20       header "arm_acle.h"
21       export *
22     }
24     explicit module neon {
25       requires neon
26       header "arm_neon.h"
27       header "arm_fp16.h"
28       export *
29     }
30   }
32   explicit module intel {
33     requires x86
34     export *
36     header "immintrin.h"
37     textual header "f16cintrin.h"
38     textual header "avxintrin.h"
39     textual header "avx2intrin.h"
40     textual header "avx512fintrin.h"
41     textual header "avx512erintrin.h"
42     textual header "fmaintrin.h"
44     header "x86intrin.h"
45     textual header "bmiintrin.h"
46     textual header "bmi2intrin.h"
47     textual header "lzcntintrin.h"
48     textual header "xopintrin.h"
49     textual header "fma4intrin.h"
50     textual header "mwaitxintrin.h"
51     textual header "clzerointrin.h"
52     textual header "wbnoinvdintrin.h"
53     textual header "cldemoteintrin.h"
54     textual header "waitpkgintrin.h"
55     textual header "movdirintrin.h"
56     textual header "pconfigintrin.h"
57     textual header "sgxintrin.h"
58     textual header "ptwriteintrin.h"
59     textual header "invpcidintrin.h"
61     textual header "__wmmintrin_aes.h"
62     textual header "__wmmintrin_pclmul.h"
64     explicit module mm_malloc {
65       requires !freestanding
66       header "mm_malloc.h"
67       export * // note: for <stdlib.h> dependency
68     }
70     explicit module cpuid {
71       requires gnuinlineasm
72       header "cpuid.h"
73     }
75     explicit module mmx {
76       header "mmintrin.h"
77     }
79     explicit module sse {
80       export mm_malloc
81       export mmx
82       export sse2 // note: for hackish <emmintrin.h> dependency
83       header "xmmintrin.h"
84     }
86     explicit module sse2 {
87       export sse
88       header "emmintrin.h"
89     }
91     explicit module sse3 {
92       export sse2
93       header "pmmintrin.h"
94     }
96     explicit module ssse3 {
97       export sse3
98       header "tmmintrin.h"
99     }
101     explicit module sse4_1 {
102       export ssse3
103       header "smmintrin.h"
104     }
106     explicit module sse4_2 {
107       export sse4_1
108       header "nmmintrin.h"
109     }
111     explicit module sse4a {
112       export sse3
113       header "ammintrin.h"
114     }
116     explicit module popcnt {
117       header "popcntintrin.h"
118     }
120     explicit module mm3dnow {
121       header "mm3dnow.h"
122     }
124     explicit module aes_pclmul {
125       header "wmmintrin.h"
126       export aes
127       export pclmul
128     }
129   }
131   explicit module systemz {
132     requires systemz
133     export *
135     header "s390intrin.h"
137     explicit module htm {
138       requires htm
139       header "htmintrin.h"
140       header "htmxlintrin.h"
141     }
143     explicit module zvector {
144       requires zvector, vx
145       header "vecintrin.h"
146     }
147   }
150 module _Builtin_stddef_max_align_t [system] [extern_c] {
151   header "__stddef_max_align_t.h"
154 module opencl_c {
155   requires opencl
156   header "opencl-c.h"