diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2010-11-07 18:49:11 +0100 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2010-11-07 18:49:11 +0100 |
commit | bb3684703d50c0d84978135438eba3fb8780b2ac (patch) | |
tree | 33733443aa4b3ecc17c13c832d47c84ba35650a6 /gcc | |
parent | 604e92e2f18660939dbd248d13e927307313c362 (diff) | |
download | gcc-bb3684703d50c0d84978135438eba3fb8780b2ac.zip gcc-bb3684703d50c0d84978135438eba3fb8780b2ac.tar.gz gcc-bb3684703d50c0d84978135438eba3fb8780b2ac.tar.bz2 |
re PR tree-optimization/46346 (fma testsuite failures)
PR tree-optimization/46346
* tree-ssa-forwprop.c (rhs_to_tree): Handle GIMPLE_TERNARY_RHS.
From-SVN: r166419
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 20 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/tree-ssa-forwprop.c | 6 |
3 files changed, 19 insertions, 14 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b57589e..7f3e284 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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> @@ -98,8 +102,7 @@ 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> @@ -209,8 +212,7 @@ 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 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 04faf4f..f7ba6d4 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -100,7 +100,7 @@ * 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. @@ -109,7 +109,7 @@ * 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> @@ -217,8 +217,7 @@ 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> diff --git a/gcc/tree-ssa-forwprop.c b/gcc/tree-ssa-forwprop.c index a828408..7e7e2b1 100644 --- a/gcc/tree-ssa-forwprop.c +++ b/gcc/tree-ssa-forwprop.c @@ -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) |