diff options
author | Andrew Pinski <andrew_pinski@playstation.sony.com> | 2007-08-03 23:36:05 +0000 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2007-08-03 16:36:05 -0700 |
commit | f9fc04494477f63b2739ea14f80bb87f4bfd21ce (patch) | |
tree | 60cdfed71aacfeec45cc5524ef7c06e55b808baf /gcc | |
parent | 48dd736cd4f9fe8eddc5ef1ab7711021236eacc4 (diff) | |
download | gcc-f9fc04494477f63b2739ea14f80bb87f4bfd21ce.zip gcc-f9fc04494477f63b2739ea14f80bb87f4bfd21ce.tar.gz gcc-f9fc04494477f63b2739ea14f80bb87f4bfd21ce.tar.bz2 |
re PR middle-end/32935 (internal compiler error: in emit_move_insn, at expr.c:3316)
2007-08-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32935
* fold-convert.c (fold_negate_expr <NOP_EXPR>): Convert back to the
correct type the negate expression.
2007-08-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32935
* gfortran.fortran-torture/compile/complex_1.f90: New test.
From-SVN: r127190
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fold-const.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.fortran-torture/compile/complex_1.f90 | 5 |
4 files changed, 17 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5878f50..21f9c3a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-08-03 Andrew Pinski <andrew_pinski@playstation.sony.com> + + PR middle-end/32935 + * fold-convert.c (fold_negate_expr <NOP_EXPR>): Convert back to the + correct type the negate expression. + 2007-08-03 Jan Hubicka <jh@suse.cz> * i386.c (setup_incoming_varargs_64): Tolerate 64bit preferred diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 614e55a..be46b23 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -1382,7 +1382,7 @@ fold_negate_expr (tree t) { tem = strip_float_extensions (t); if (tem != t && negate_expr_p (tem)) - return negate_expr (tem); + return fold_convert (type, negate_expr (tem)); } break; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ded4044..7ba9afc 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-08-03 Andrew Pinski <andrew_pinski@playstation.sony.com> + + PR middle-end/32935 + * gfortran.fortran-torture/compile/complex_1.f90: New test. + 2007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> PR fortran/32955 diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/complex_1.f90 b/gcc/testsuite/gfortran.fortran-torture/compile/complex_1.f90 new file mode 100644 index 0000000..605ec66 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/compile/complex_1.f90 @@ -0,0 +1,5 @@ +program test_gfortran2 + Complex(8) :: g, zh + Real(8) :: g_q + g = zh - zh/cmplx(0.0_8,-g_q) +end |