Commit 1cf5abb3 by Jan Hubicka Committed by Jan Hubicka

re PR debug/39267 (gdb testsuite regressions)


	PR debug/39267
	* tree-inline.c (setup_one_parameter): Do not copy propagate
	arguments when not optimizing.
	PR debug/39267
	* gcc.dg/debug/dwarf2/inline1.c: New testcase.

From-SVN: r144515
parent 39ae51e0
2009-02-28 Jan Hubicka <jh@suse.cz>
PR debug/39267
* tree-inline.c (setup_one_parameter): Do not copy propagate
arguments when not optimizing.
2009-02-28 H.J. Lu <hongjiu.lu@intel.com> 2009-02-28 H.J. Lu <hongjiu.lu@intel.com>
PR target/39327 PR target/39327
......
2009-03-01 Jan Hubicka <jh@suse.cz>
PR debug/39267
* gcc.dg/debug/dwarf2/inline1.c: New testcase.
2009-03-01 Eric Botcazou <ebotcazou@adacore.com> 2009-03-01 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/pack12.adb: New test. * gnat.dg/pack12.adb: New test.
......
/* { dg-do compile } */
/* { dg-options "-O0 -gdwarf-2 -dA" } */
void e(int);
__attribute__ ((always_inline)) inline int
t(int function_parameter)
{
e(function_parameter);
}
void test (int function_parameter2)
{
t(function_parameter2);
}
/* Verify that we get both function_parameter and function_parameter2 declared
in test. Overall we should have 3 variables with location defined (also
function_parameter in offline copy of t. */
/* { dg-final { scan-assembler-times " DW_AT_location" 3 } } */
...@@ -2048,6 +2048,7 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn, ...@@ -2048,6 +2048,7 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn,
We might want to introduce a notion that single SSA_NAME might We might want to introduce a notion that single SSA_NAME might
represent multiple variables for purposes of debugging. */ represent multiple variables for purposes of debugging. */
if (gimple_in_ssa_p (cfun) && rhs && def && is_gimple_reg (p) if (gimple_in_ssa_p (cfun) && rhs && def && is_gimple_reg (p)
&& optimize
&& (TREE_CODE (rhs) == SSA_NAME && (TREE_CODE (rhs) == SSA_NAME
|| is_gimple_min_invariant (rhs)) || is_gimple_min_invariant (rhs))
&& !SSA_NAME_OCCURS_IN_ABNORMAL_PHI (def)) && !SSA_NAME_OCCURS_IN_ABNORMAL_PHI (def))
...@@ -2058,7 +2059,7 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn, ...@@ -2058,7 +2059,7 @@ setup_one_parameter (copy_body_data *id, tree p, tree value, tree fn,
/* If the value of argument is never used, don't care about initializing /* If the value of argument is never used, don't care about initializing
it. */ it. */
if (gimple_in_ssa_p (cfun) && !def && is_gimple_reg (p)) if (optimize && gimple_in_ssa_p (cfun) && !def && is_gimple_reg (p))
{ {
gcc_assert (!value || !TREE_SIDE_EFFECTS (value)); gcc_assert (!value || !TREE_SIDE_EFFECTS (value));
return NULL; return NULL;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment