[cfe-commits] r73021 - /cfe/trunk/lib/Headers/xmmintrin.h

Daniel Dunbar daniel at zuster.org
Sun Jun 7 02:04:50 PDT 2009


On Sun, Jun 7, 2009 at 1:48 AM, Eli Friedman<eli.friedman at gmail.com> wrote:
> On Sun, Jun 7, 2009 at 1:33 AM, Daniel Dunbar<daniel at zuster.org> wrote:
>> Author: ddunbar
>> Date: Sun Jun  7 03:33:23 2009
>> New Revision: 73021
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=73021&view=rev
>> Log:
>> xmmintrin needs to include emmintrin, Darwin system headers seem to depend on it
>> defining m128[id], at least.
>
> There's an issue with this approach: if xmmintrin.h includes
> emmintrin.h, it's impossible to use xmmintrin.h without SSE2.  I'm not
> sure if that's actually a signficant issue, considering any remotely
> recent computer has SSE2 support, though; should we care?  We could
> always put it in an ifdef __APPLE__, I suppose...

I didn't investigate closely, but if it turns out that all that the
headers depend on is m128[di], then we could just tweak the headers so
these also get defined in xmmintrin.h (with some ifdef magic so that
both headers can be included w/o causing a redefinition). That's
probably a better solution than ifdef'ing to __APPLE__, since it
forces users to include the right header.

 - Daniel




More information about the cfe-commits mailing list