This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] A new meta intrinsic header file for current and future x86 instrinsics.

On Nov 21, 2008, at 5:36 PM, H.J. Lu wrote:
This is exactly the situation with the xmmintrin.h headers. What problem
are you trying to solve by deviating from the standard and established

The standard and established practice is to add a new Xmmintrin.h, which is immintrin.h, for a new ISA extension.

If your answer to the previous question is "immintrin.h is the header for
AVX, and when we add new [non-"AVX 1"] stuff to the ISA it won't go in
immintrin.h" then I have no objection to adding immintrin.h.

Let me clarify a few things:

1. We didn't add a new file. We just renamed gmmintrin.h to
2. Including <immintrin.h> itself doesn't enable any ISA extensions.
3. You need to use -mXXX to get the XXX extension from
<immintrin.h>. It applies to -mmmx, -msse, ... -mavx.

Sounds good.

4. We will add future new ISA intrinics to a new header file
and include it from <immintrin.h>.

Sounds bad. Why not just add everything to mmxintrin.h? How is this morally different?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]