On Fri, Jan 06, 2017 at 05:26:36PM +0100, Mark Kettenis wrote: > These are hardware-specific, so it makes sense to only install the > ones relevant for the (target) hardware. > > ok?
Looking at the cmake files there is also a arm_neon.h generated by llvm's tablegen. > > > Index: gnu/usr.bin/clang/include/clang/intrin/Makefile > =================================================================== > RCS file: /cvs/src/gnu/usr.bin/clang/include/clang/intrin/Makefile,v > retrieving revision 1.3 > diff -u -p -r1.3 Makefile > --- gnu/usr.bin/clang/include/clang/intrin/Makefile 6 Jan 2017 14:44:34 > -0000 1.3 > +++ gnu/usr.bin/clang/include/clang/intrin/Makefile 6 Jan 2017 16:24:41 > -0000 > @@ -7,70 +7,70 @@ CLANG_INTR_INCDIR= /usr/lib/clang/${LLVM > > .PATH: ${.CURDIR}/../../../../../llvm/tools/clang/lib/Headers > > -HEADERS=adxintrin.h \ > - altivec.h \ > - ammintrin.h \ > - arm_acle.h \ > - avx2intrin.h \ > - avx512bwintrin.h \ > - avx512cdintrin.h \ > - avx512erintrin.h \ > - avx512fintrin.h \ > - avx512vlbwintrin.h \ > - avx512vlintrin.h \ > - avx512dqintrin.h \ > - avx512vldqintrin.h \ > - pkuintrin.h \ > - avxintrin.h \ > - bmi2intrin.h \ > - bmiintrin.h \ > - __clang_cuda_runtime_wrapper.h \ > - cpuid.h \ > - cuda_builtin_vars.h \ > - emmintrin.h \ > - f16cintrin.h \ > - fma4intrin.h \ > - fmaintrin.h \ > - fxsrintrin.h \ > - htmintrin.h \ > - htmxlintrin.h \ > - ia32intrin.h \ > - immintrin.h \ > - Intrin.h \ > - lzcntintrin.h \ > - mm3dnow.h \ > - mmintrin.h \ > - mm_malloc.h \ > - module.modulemap \ > - nmmintrin.h \ > - pmmintrin.h \ > - popcntintrin.h \ > - prfchwintrin.h \ > - rdseedintrin.h \ > - rtmintrin.h \ > - s390intrin.h \ > - shaintrin.h \ > - smmintrin.h \ > - stdalign.h \ > - stdatomic.h \ > - stdnoreturn.h \ > - tbmintrin.h \ > - tgmath.h \ > - tmmintrin.h \ > - unwind.h \ > - varargs.h \ > - vecintrin.h \ > - __wmmintrin_aes.h \ > - wmmintrin.h \ > - __wmmintrin_pclmul.h \ > - x86intrin.h \ > - xmmintrin.h \ > - xopintrin.h \ > - xsaveintrin.h \ > - xsaveoptintrin.h \ > - xsavecintrin.h \ > - xsavesintrin.h \ > - xtestintrin.h > +HEADERS= stdalign.h \ > + stdatomic.h \ > + stdnoreturn.h \ > + tgmath.h \ > + unwind.h \ > + varargs.h \ > + module.modulemap \ > + > +.if ${MACHINE_ARCH} == "aarch64" || ${MACHINE_ARCH} == "arm" > +HEADERS+= arm_acle.h > +.elif ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" > +HEADERS+= adxintrin.h \ > + ammintrin.h \ > + avx2intrin.h \ > + avx512bwintrin.h \ > + avx512cdintrin.h \ > + avx512erintrin.h \ > + avx512fintrin.h \ > + avx512vlbwintrin.h \ > + avx512vlintrin.h \ > + avx512dqintrin.h \ > + avx512vldqintrin.h \ > + pkuintrin.h \ > + avxintrin.h \ > + bmi2intrin.h \ > + bmiintrin.h \ > + cpuid.h \ > + emmintrin.h \ > + f16cintrin.h \ > + fma4intrin.h \ > + fmaintrin.h \ > + fxsrintrin.h \ > + ia32intrin.h \ > + immintrin.h \ > + lzcntintrin.h \ > + mm3dnow.h \ > + mmintrin.h \ > + mm_malloc.h \ > + nmmintrin.h \ > + pmmintrin.h \ > + popcntintrin.h \ > + prfchwintrin.h \ > + rdseedintrin.h \ > + rtmintrin.h \ > + shaintrin.h \ > + smmintrin.h \ > + tbmintrin.h \ > + tmmintrin.h \ > + __wmmintrin_aes.h \ > + wmmintrin.h \ > + __wmmintrin_pclmul.h \ > + x86intrin.h \ > + xmmintrin.h \ > + xopintrin.h \ > + xsaveintrin.h \ > + xsaveoptintrin.h \ > + xsavecintrin.h \ > + xsavesintrin.h \ > + xtestintrin.h > +.elif ${MACHINE_ARCH} == "powerpc" > +HEADERS+= altivec.h \ > + htmintrin.h \ > + htmxlintrin.h > +.endif > > all: ${HEADERS} > >