[PATCH, i386]: avxintrin.h could be included without immintrin.h

rajagopal, dwarak dwarak.rajagopal@amd.com
Wed Dec 3 19:47:00 GMT 2008

> This patch moves the situation with x86 intrinsics from the dead end
> stuck in.  The patch removes artificial limitation where avxintirn.h
> be included only through immintrin.h, while still providing ICC
> compatible immintrin.h functionality.

I agree with the approach of removing the dependency on immintrin.h in

> The patch changes avxintrin.h header to include a cascade of SSE
> headers, as is the case with all other Xmmintrin.h files.

Is this necessary? I know we have included ammintrin.h (SSE4a) inside
bmmintrin.h(SSE5), which I feel is wrong because we assume that all the
future processors which support SSE5 will also support SSE4a. Same thing
holds for avxintrin.h as well, because we assume that all future
processors which support AVX will also have SSE4.1 etc.

Why can't we have only the instruction set specific intrinsics (and not
include a cascade of SSE headers) in each of these files and include all
the header files in one top level header file?


More information about the Gcc-patches mailing list