recent troubles with float vectors & bitwise ops
Paolo Bonzini
paolo.bonzini@lu.unisi.ch
Fri Aug 24 18:34:00 GMT 2007
> If there is a reason to put in that obstacle--e.g., because we
> are implementing a language standard and the language standard forbids
> it--then fine. But citing a PowerPC specific standard to forbid code
> appropriate for the x86 does not count as a sufficient reason in my
> book.
The code I want to forbid is actually appropriate not only for the x86;
the exact same code is appropriate for PowerPC, because the same kind of
masking operations can be used there. However, for some reason, the
PowerPC spec chose *not* to allow "vector float" bitwise operations, and
I agree with it; the reason I want to avoid this, is that it goes
against our guideline for vector extensions (i.e. valarray).
Users can also achieve the same effect with casts, and in addition I
would like to trade this lost ability with two gained abilities. First,
I want GCC to produce the exact same code with and without casts.
Second, I want GCC to have builtins supporting most common uses of the
idiom, so that users can actually do without casts *and* bitwise
operations 99% of the time.
Paolo
More information about the Gcc
mailing list