From bd055118bde42506983db3bfed6d05be5974709e Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Mon, 16 Sep 2002 23:05:53 -0700 Subject: [PATCH] re PR fortran/3924 (g77 generates code which is rejected by GAS if COFF debugging info is requested) PR fortran/3924 * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol. From-SVN: r57232 --- gcc/ChangeLog | 5 +++++ gcc/sdbout.c | 17 ----------------- 2 files changed, 5 insertions(+), 17 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0a5248f0d07..8b1d3dea5aa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-09-16 Richard Henderson + + PR fortran/3924 + * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol. + 2002-09-16 Richard Henderson * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE diff --git a/gcc/sdbout.c b/gcc/sdbout.c index 9effe785110..9d5effd6f6e 100644 --- a/gcc/sdbout.c +++ b/gcc/sdbout.c @@ -924,23 +924,6 @@ sdbout_symbol (decl, local) PUT_SDB_INT_VAL (DEBUGGER_AUTO_OFFSET (XEXP (value, 0))); PUT_SDB_SCL (C_AUTO); } - else if (GET_CODE (value) == MEM && GET_CODE (XEXP (value, 0)) == CONST) - { - /* Handle an obscure case which can arise when optimizing and - when there are few available registers. (This is *always* - the case for i386/i486 targets). The DECL_RTL looks like - (MEM (CONST ...)) even though this variable is a local `auto' - or a local `register' variable. In effect, what has happened - is that the reload pass has seen that all assignments and - references for one such a local variable can be replaced by - equivalent assignments and references to some static storage - variable, thereby avoiding the need for a register. In such - cases we're forced to lie to debuggers and tell them that - this variable was itself `static'. */ - PUT_SDB_DEF (name); - PUT_SDB_VAL (XEXP (XEXP (value, 0), 0)); - PUT_SDB_SCL (C_STAT); - } else { /* It is something we don't know how to represent for SDB. */ -- 2.30.2