re PR tree-optimization/46346 (fma testsuite failures)
authorUros Bizjak <uros@gcc.gnu.org>
Sun, 7 Nov 2010 17:49:11 +0000 (18:49 +0100)
committerUros Bizjak <uros@gcc.gnu.org>
Sun, 7 Nov 2010 17:49:11 +0000 (18:49 +0100)
PR tree-optimization/46346
* tree-ssa-forwprop.c (rhs_to_tree): Handle GIMPLE_TERNARY_RHS.

From-SVN: r166419

gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/tree-ssa-forwprop.c

index b57589e..7f3e284 100644 (file)
@@ -1,3 +1,8 @@
+2010-11-07  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR tree-optimization/46346
+       * tree-ssa-forwprop.c (rhs_to_tree): Handle GIMPLE_TERNARY_RHS.
+
 2010-11-07  Richard Sandiford  <rdsandiford@googlemail.com>
 
        * config/mips/mips.c: Revert previous patch.
@@ -20,7 +25,7 @@
 
        PR c/43384
        * c-decl.c (lookup_label): Labels can only be referenced in a
-       function's scope. 
+       function's scope.
        (store_parm_decls_oldstyle): Skip erroneous parameters.
 
 2010-11-06  Anatoly Sokolov  <aesok@post.ru>
@@ -49,7 +54,7 @@
        * doc/tm.texi.in (TARGET_OBJC_CONSTRUCT_STRING_OBJECT) Rename.
        (TARGET_STRING_OBJECT_REF_TYPE_P): New.
        (TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): New.
-       * target.def (objc_construct_string_object): Rename, amend 
+       * target.def (objc_construct_string_object): Rename, amend
        documentation.
        (string_object_ref_type_p): New hook.
        (check_string_object_format_arg): New hook.
@@ -66,7 +71,7 @@
        (TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): New.
 
 2010-11-06  Eric Botcazou  <ebotcazou@adacore.com>
-            Pascal Obry  <obry@adacore.com>
+           Pascal Obry  <obry@adacore.com>
 
        * config/i386/cygming.h (DWARF_FRAME_REGISTERS): Redefine.  Use 33
        in 64-bit mode and 17 otherwise.
@@ -85,8 +90,7 @@
 
 2010-11-05  Ian Lance Taylor  <iant@google.com>
 
-       * explow.c (allocate_dynamic_stack_space): Check
-       MALLOC_ABI_ALIGNMENT.
+       * explow.c (allocate_dynamic_stack_space): Check MALLOC_ABI_ALIGNMENT.
 
 2010-11-05  Jakub Jelinek  <jakub@redhat.com>
 
 
        PR target/46084
        * explow.c (allocate_dynamic_stack_space): If flag_split_stack,
-       request enough additional space for alignment, and force
-       alignment.
+       request enough additional space for alignment, and force alignment.
 
 2010-11-05  Kai Tietz  <kai.tietz@onevision.com>
 
 
 2010-11-05  Jakub Jelinek  <jakub@redhat.com>
 
-       * cfgexpand.c (expand_debug_expr): Handle MEM_REF
-       with non-zero offset.
+       * cfgexpand.c (expand_debug_expr): Handle MEM_REF with non-zero offset.
 
        PR tree-optimization/46099
        * tree-parloops.c (take_address_of): Add GSI argument.  Return NULL
index 04faf4f..f7ba6d4 100644 (file)
 
        * gcc.target/i386/387-2.c: Skip if -march= is specified.
        * gcc.target/i386/387-6.c: Ditto.
-       * gcc.target/i386/387-2.c: Add -mfancy-math-387 to dg-options.
+       * gcc.target/i386/387-3.c: Add -mfancy-math-387 to dg-options.
        * gcc.target/i386/387-4.c: Ditto.
        * gcc.target/i386/387-7.c: Ditto.
        * gcc.target/i386/387-8.c: Ditto.
        * gcc.target/i386/387-11.c: Ditto.
        * gcc.target/i386/387-12.c: Ditto.
 
-       * gcc.target/i386/387-2.c: Add -mno-sse3 to dg-options.
+       * gcc.target/i386/funcspec-8.c: Add -mno-sse3 to dg-options.
 
 2010-11-06  Iain Sandoe  <iains@gcc.gnu.org>
 
 
 2010-11-04  Bud Davis  <jimmied@smu.edu>
 
-       * gfortran.dg/intrinsic_numeric_arg.f: Add test to check
-       error message.
+       * gfortran.dg/intrinsic_numeric_arg.f: Add test to check error message.
 
 2010-11-04  Chao-ying Fu  <fu@mips.com>
 
index a828408..7e7e2b1 100644 (file)
@@ -341,7 +341,11 @@ rhs_to_tree (tree type, gimple stmt)
 {
   location_t loc = gimple_location (stmt);
   enum tree_code code = gimple_assign_rhs_code (stmt);
-  if (get_gimple_rhs_class (code) == GIMPLE_BINARY_RHS)
+  if (get_gimple_rhs_class (code) == GIMPLE_TERNARY_RHS)
+    return fold_build3_loc (loc, code, type, gimple_assign_rhs1 (stmt),
+                           gimple_assign_rhs2 (stmt),
+                           gimple_assign_rhs3 (stmt));
+  else if (get_gimple_rhs_class (code) == GIMPLE_BINARY_RHS)
     return fold_build2_loc (loc, code, type, gimple_assign_rhs1 (stmt),
                        gimple_assign_rhs2 (stmt));
   else if (get_gimple_rhs_class (code) == GIMPLE_UNARY_RHS)