Commit 6d55e0ab by Jim Wilson

(sdbout_symbol): Handle variables at zero offset from frame pointer.

From-SVN: r6358
parent 6a22e3a7
......@@ -842,12 +842,17 @@ sdbout_symbol (decl, local)
type = build_pointer_type (TREE_TYPE (decl));
}
else if (GET_CODE (value) == MEM
&& GET_CODE (XEXP (value, 0)) == PLUS
&& GET_CODE (XEXP (XEXP (value, 0), 0)) == REG
&& GET_CODE (XEXP (XEXP (value, 0), 1)) == CONST_INT)
&& ((GET_CODE (XEXP (value, 0)) == PLUS
&& GET_CODE (XEXP (XEXP (value, 0), 0)) == REG
&& GET_CODE (XEXP (XEXP (value, 0), 1)) == CONST_INT)
/* This is for variables which are at offset zero from
the frame pointer. This happens on the Alpha.
Non-frame pointer registers are excluded above. */
|| (GET_CODE (XEXP (value, 0)) == REG)))
{
/* DECL_RTL looks like (MEM (PLUS (REG...) (CONST_INT...))).
We want the value of that CONST_INT. */
/* DECL_RTL looks like (MEM (PLUS (REG...) (CONST_INT...)))
or (MEM (REG...)). We want the value of that CONST_INT
or zero. */
PUT_SDB_DEF (name);
PUT_SDB_INT_VAL (DEBUGGER_AUTO_OFFSET (XEXP (value, 0)));
PUT_SDB_SCL (C_AUTO);
......
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