bruno added a comment.
> The long answer is that there is a history of problems regarding the > intrinsic files: > http://lists.llvm.org/pipermail/cfe-dev/2016-May/048837.html > http://lists.llvm.org/pipermail/cfe-dev/2016-September/050943.html > Mainly compatibility issues because MSVC makes all the intrinsics available > all the time, while in clang this is not always the case (On Windows the > different h files are not-included unless asked for explicitly since AVX512 > was added which impacted compile-time). Thinking a bit more about this: did you ever consider a solution where "immintrin.h" (or any similar other) would use "#include_next" and "__has_include_next" to point to a second level (user specified) immintrin.h, which then could use ifdefs to only include what's relevant? > A suggestion was made to try and mitigate this by reducing the compile time > using modules (only for the x86 intrinsics). This patch aims at adding this > option. The new compile flag is just a milestone - if all goes well, we can > turn this on by default (Then we won't actually need to use a specific > compile flag, and we could always include all the intrinsic h files without > their long compile time). The speedup sounds nice, but it seems awkward IMO to have such specific behavior for x86 intrinsics only. https://reviews.llvm.org/D25337 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits