re PR lto/41521 ([LTO] ICE verify_cgraph_node only with "-g")

2009-10-14  Richard Guenther  <rguenther@suse.de>

	PR lto/41521
	* lto-streamer-in.c (input_bb): Replace debug stmts with
	nops instead of dropping them.

	* gfortran.dg/lto/pr41521_0.f90: New testcase.
	* gfortran.dg/lto/pr41521_1.f90: Likewise.

From-SVN: r152767
This commit is contained in:
Richard Guenther 2009-10-14 13:08:44 +00:00 committed by Richard Biener
parent 8ad1dde72b
commit 77ce724c6b
5 changed files with 38 additions and 9 deletions

View File

@ -1,3 +1,9 @@
2009-10-14 Richard Guenther <rguenther@suse.de>
PR lto/41521
* lto-streamer-in.c (input_bb): Replace debug stmts with
nops instead of dropping them.
2009-10-14 Nick Clifton <nickc@redhat.com>
* gcc/doc/extended.texi: Replace the dash character with

View File

@ -1014,15 +1014,15 @@ input_bb (struct lto_input_block *ib, enum LTO_tags tag,
{
gimple stmt = input_gimple_stmt (ib, data_in, fn, tag);
/* Drop debug stmts on-the-fly if we do not have VTA enabled.
/* Change debug stmts to nops on-the-fly if we do not have VTA enabled.
This allows us to build for example static libs with debugging
enabled and do the final link without. */
if (MAY_HAVE_DEBUG_STMTS
|| !is_gimple_debug (stmt))
{
find_referenced_vars_in (stmt);
gsi_insert_after (&bsi, stmt, GSI_NEW_STMT);
}
if (!MAY_HAVE_DEBUG_STMTS
&& is_gimple_debug (stmt))
stmt = gimple_build_nop ();
find_referenced_vars_in (stmt);
gsi_insert_after (&bsi, stmt, GSI_NEW_STMT);
/* After the statement, expect a 0 delimiter or the EH region
that the previous statement belongs to. */
@ -1033,8 +1033,7 @@ input_bb (struct lto_input_block *ib, enum LTO_tags tag,
{
HOST_WIDE_INT region = lto_input_sleb128 (ib);
gcc_assert (region == (int) region);
if (MAY_HAVE_DEBUG_STMTS || !is_gimple_debug (stmt))
add_stmt_to_eh_lp (stmt, region);
add_stmt_to_eh_lp (stmt, region);
}
tag = input_record_start (ib);

View File

@ -1,3 +1,9 @@
2009-10-14 Richard Guenther <rguenther@suse.de>
PR lto/41521
* gfortran.dg/lto/pr41521_0.f90: New testcase.
* gfortran.dg/lto/pr41521_1.f90: Likewise.
2009-10-14 Jakub Jelinek <jakub@redhat.com>
PR preprocessor/41543

View File

@ -0,0 +1,9 @@
! { dg-lto-do link }
! { dg-lto-options {{-g -flto} {-g -O -flto}} }
program species
integer spk(2)
real eval(2)
spk = 2
call atom(1.1,spk,eval)
end program

View File

@ -0,0 +1,9 @@
subroutine atom(sol,k,eval)
real, intent(in) :: sol
integer, intent(in) :: k(2)
real, intent(out) :: eval(2)
real t1
t1=sqrt(dble(k(1)**2)-(sol)**2)
eval(1)=sol**2/sqrt(t1)-sol**2
end subroutine