
On 01/04/11 01:12, Cory Nelson wrote:
On Thu, Mar 31, 2011 at 3:07 AM, Mathias Gaunard <mathias.gaunard@ens-lyon.org> 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.