gimple-low.c (lower_gimple_return): When not optimizing, force labels associated with user returns to be preserved.
* gimple-low.c (lower_gimple_return): When not optimizing, force labels associated with user returns to be preserved. From-SVN: r172030
This commit is contained in:
parent
96621ebf37
commit
516426da9f
@ -1,3 +1,8 @@
|
||||
2011-04-06 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gimple-low.c (lower_gimple_return): When not optimizing, force labels
|
||||
associated with user returns to be preserved.
|
||||
|
||||
2011-04-06 Tristan Gingold <gingold@adacore.com>
|
||||
|
||||
* dbxout.c: (debug_nesting, symbol_queue, symbol_queue_index)
|
||||
|
@ -758,6 +758,9 @@ lower_gimple_return (gimple_stmt_iterator *gsi, struct lower_data *data)
|
||||
|
||||
/* Generate a goto statement and remove the return statement. */
|
||||
found:
|
||||
/* When not optimizing, make sure user returns are preserved. */
|
||||
if (!optimize && gimple_has_location (stmt))
|
||||
DECL_ARTIFICIAL (tmp_rs.label) = 0;
|
||||
t = gimple_build_goto (tmp_rs.label);
|
||||
gimple_set_location (t, gimple_location (stmt));
|
||||
gimple_set_block (t, gimple_block (stmt));
|
||||
|
@ -1,5 +1,9 @@
|
||||
2011-04-06 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gnat.dg/return3.adb: New test.
|
||||
|
||||
2011-04-06 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
|
||||
PR tree-optimization/47663
|
||||
* gcc.dg/tree-ssa/inline-8.c: New testcase.
|
||||
|
||||
|
9
gcc/testsuite/gnat.dg/return3.adb
Normal file
9
gcc/testsuite/gnat.dg/return3.adb
Normal file
@ -0,0 +1,9 @@
|
||||
-- { dg-do compile { target *-*-linux* } }
|
||||
-- { dg-options "-gdwarf-2 -dA" }
|
||||
|
||||
procedure Return3 is
|
||||
begin
|
||||
return;
|
||||
end;
|
||||
|
||||
-- { dg-final { scan-assembler "loc 1 6" } }
|
Loading…
Reference in New Issue
Block a user