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