diff options
Diffstat (limited to 'gcc/ChangeLog.ibm')
-rw-r--r-- | gcc/ChangeLog.ibm | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/gcc/ChangeLog.ibm b/gcc/ChangeLog.ibm index 1d582a19d8a..87216504c3c 100644 --- a/gcc/ChangeLog.ibm +++ b/gcc/ChangeLog.ibm @@ -1,5 +1,40 @@ 2010-03-31 Michael Meissner <meissner@linux.vnet.ibm.com> + * doc/extend.texi (__builtin_rsqrt): Document. + + * doc/invoke.texi (-mrecip): Document. + (-mno-recip): Ditto. + (-mrecip-passes=n): New switch to control the number of passes for + reciprocal square root estimate. + + * config/rs6000/rs6000-protos.h (rs6000_emit_swrsqrt): Rename from + rs6000_emit_swrsqrtsf. + + * config/rs6000/rs6000.opt (-mrecip): Change documentation. + (-mrecip-passes=n): New switch. + + * config/rs6000/rs6000-builtin.def (RS6000_BUILTIN_RSQRT): New + builtin. + + * config/rs6000/rs6000.c (rs6000_override_options): Don't allow + -mvsx -mno-altivec. Set rs6000_recip_passes to 2 on power6 and + power7, or 3 on other machines. Add some enum casts. + (rs6000_expand_builtin): Add __builtin_rsqrt support. + (rs6000_init_builtins): Ditto. + (rs6000_builtin_reciprocal): Ditto. + (rs6000_emit_swdivdf): Emit correct type for MULT. + (rs6000_emit_swrsqrt): Rewrite. Support both single and double + precision. Add support for reducing the number of Newton-Raphson + passes on newer machines. + + * config/rs6000/vsx.md (UNSPEC_VSX_RSQRTE): Delete. + (vsx_rsqrte<mode>2): Use UNSPEC_RSQRT. + (FP2): New iterator. + (rsqrt<mode>2): Rename from rsqrtsf2, and add DFmode support. + Call rs6000_emit_swrsqrt instead of rs6000_emit_swrsqrtsf. + (rsqrtsf_internal1): Rename from rsqrt_internal1. Add test for + TARGET_SINGLE_FLOAT for completeness. + (back ported from mainline, 2010-03-02, Jeff Law) PR middle-end/42431 * reload1.c (rtx_p, substitute_stack): Declare. |