Subject: Re: [boost] [GSOC]SIMD Library
From: Joel Falcou (joel.falcou_at_[hidden])
Date: 2011-04-01 03:20:21


On 01/04/11 01:12, Cory Nelson wrote:
> On Thu, Mar 31, 2011 at 3:07 AM, Mathias Gaunard
> <mathias.gaunard_at_[hidden]> wrote:
>> On 31/03/2011 11:47, Cory Nelson wrote:
>>
>>> What would ever make intrinsics improper?
>>
>> GCC generates a compile-time error if you include the intrinsics files
>> without the right option (-msse2 or similar) enabled with the compiler.
>> For this reason, we took care of only including the files requested by the
>> instruction set the user has chosen.
>>
>> Now then, I guess it would always be possible to cheat and redefine those
>> things.

> Is there a way to detect those compile options?

-mssex defines _SSEX_ adn this macro is checked in the intrinsic files
so you cant include sseX intrinsic if -msseX was not set.

> I think it would be acceptable to just disable any support for them if -msse etc. aren't
> given, and put a warning in the docs explaining it. Does -msse/etc.
> only enable those intrinsics, or does GCC actually try to use them
> during code gen for plain C++?

We have to explore this. After giving some thought the need for non
binary level of cross instruction set support is indeed valuable.