recent troubles with float vectors & bitwise ops
Paolo Bonzini
paolo.bonzini@lu.unisi.ch
Thu Aug 23 15:56:00 GMT 2007
>>> "The types defined in this manner can be used with a subset of
>>> normal C operations. Currently, GCC will allow using the following
>>> operators on these types: +, -, *, /, unary minus, ^, |, &, ~.".
>> What was missing is "when allowed by the base type". E.g. >> is not
>> supported.
>
> I think we should revert the patch, and continue permitting the
> bitwise operations on vector float.
>
> There seem to be solid reasons to permit this, and no very strong ones
> to prohibit it.
I'm not sure. I think it's better if we improve the compiler to
generate better code for the version with casts. So we get no
pessimization, and better typechecking.
I think that, in an ideal world, intrinsics would be implemented using
the generic vector extensions, and they would generic as good code as
with builtins -- better because of simplifications that can be done
after inlining. We should move towards that direction.
Paolo
More information about the Gcc
mailing list