re PR bootstrap/63821 (ICE in verify_gimple during libgcc build starting with r217349)

2014-11-12  Richard Biener  <rguenther@suse.de>

	PR middle-end/63821
	* match.pd: Add missing conversion to the -(T)-X pattern.

	* gfortran.dg/pr63821.f90: New testcase.

From-SVN: r217411
This commit is contained in:
Richard Biener 2014-11-12 10:13:48 +00:00 committed by Richard Biener
parent e7d1000cd7
commit a0f12cf8ea
4 changed files with 28 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2014-11-12 Richard Biener <rguenther@suse.de>
PR middle-end/63821
* match.pd: Add missing conversion to the -(T)-X pattern.
2014-11-12 Richard Biener <rguenther@suse.de>
PR bootstrap/63819

View File

@ -299,7 +299,7 @@ along with GCC; see the file COPYING3. If not see
(if (tree_nop_conversion_p (type, TREE_TYPE (@1))
&& (TYPE_OVERFLOW_WRAPS (type)
|| (flag_sanitize & SANITIZE_SI_OVERFLOW) == 0))
@1))
(convert @1)))
/* We can't reassociate floating-point or fixed-point plus or minus
because of saturation to +-Inf. */

View File

@ -1,3 +1,8 @@
2014-11-12 Richard Biener <rguenther@suse.de>
PR middle-end/63821
* gfortran.dg/pr63821.f90: New testcase.
2014-11-12 Thomas Preud'homme <thomas.preudhomme@arm.com>
PR tree-optimization/63761

View File

@ -0,0 +1,17 @@
! { dg-do compile }
! { dg-options "-O3" }
SUBROUTINE calculates_green_opt()
INTEGER, PARAMETER :: dp=8
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: green, green1
ALLOCATE(green(-nrec:nrec),stat=i_all)
DO ikern=1,nrec
green(-ikern)=gleft+gright
IF (ABS(green(ikern)) <= 1.e-20_dp) THEN
nrec=ikern
EXIT
END IF
END DO
ALLOCATE(green1(-nrec:nrec),stat=i_all)
CALL scf_recursion(nrec,green(-nrec),green1(-nrec))
END SUBROUTINE calculates_green_opt