On Mon, Mar 5, 2012 at 7:23 PM, Michael Meissner
> On power7 systems, the backend was not prepared to handle vector comparisons
> with UNEQ, LTGT, ORDERED, and UNORDERED tests, since there is no single
> comparison instruction for these cases. This patch adds support for doing
> vector conditional move involving these operations. I have bootstrapped the
> compiler with these patches, and there were no regressions. The test
> gcc.c-torture/execute/ieee/pr50340.c now passes if you build the compiler
> --with-cpu=power7 as a default (or define ADDITIONAL_TORTURE_OPTIONS in the
> site.exp file to add -mcpu=power7). Is this ok to install in 4.8?
> In addition, I would like to backport this fix to the current older branches.
> Can I check it into the 4.7 branch or should this patch wait until after the
> 4.7 release for 4.7.1?
> 2012-03-05 Michael Meissner <meiss...@linux.vnet.ibm.com>
> PR target/50310
> * config/rs6000/vector.md (vector_uneq<mode>): Add support for
> UNEQ, LTGT, ORDERED, and UNORDERED IEEE vector comparisons.
> (vector_ltgt<mode>): Likewise.
> (vector_ordered<mode>): Likewise.
> (vector_unordered<mode>): Likewise.
> * config/rs6000/rs6000.c (rs6000_emit_vector_compare_inner):
The logical operations on floating point registers seem weird, but okay.
We need to ask the RMs if this patch is acceptable for GCC 4.7.0.