define MMX/SSE intrinsics without requiring cmdline isa flags

H.J. Lu hjl.tools@gmail.com
Thu Aug 19 18:16:00 GMT 2010


On Thu, Aug 19, 2010 at 10:36 AM, Xinliang David Li <davidxl@google.com> wrote:
> On Thu, Aug 19, 2010 at 9:03 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On Thu, Aug 19, 2010 at 8:42 AM, Xinliang David Li <davidxl@google.com> wrote:
>>> Good to know that I am not alone.
>>>
>>> I need comments on the patch I proposed -- what are the potential
>>> problems (other than slight increase in memory consumption which has
>>> no impact on compile time)?
>>>
>>
>> The whole target attribute is very fragile:
>>
>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37565
>>
>> There is another issue with intrinsics:
>>
>> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39840
>>
>> I don't think we should add more kludges to the current
>> scheme. I suggest you open a bug with your concern. We
>> should take a look at all related issues to address them
>> properly. I hope the driver changes Joseph is making can
>> help this.
>
> You have not comment on why you think the patch is a kludge --- though
> it does not solve the problem of mixing regions with different target
> options in the same function, it is an independent patch on top of the
> per function target attribute that will make people's life much easier
> (all it does is predefine all isa builtins and 'unguard' the intrinsic
> wrapper defs).  It makes your second example in
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39840 work when merging
> all sources into one file (after adding appropriate target attribute).
>

1. Why not just simply not check __SSEXX__ in intrinsic header files
and always define intrinsics?
2. Should we always define vector modes even when SSE isn't enabled?


-- 
H.J.



More information about the Gcc-patches mailing list