Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Orjan Friberg <orjan.friberg@axis.com>
To: Andrew Cagney <cagney@gnu.org>
Cc: Daniel Jacobowitz <drow@false.org>, gdb-patches@sources.redhat.com
Subject: Re: [CRIS] dwarf2 frame sniffer problem?
Date: Fri, 12 Mar 2004 12:00:00 -0000	[thread overview]
Message-ID: <4051A61E.3030907@axis.com> (raw)
Message-ID: <20040312120000.wwbi2DiYNXjrYwtGSmsy095zEgz7iBewxbBq0UOTFw0@z> (raw)
In-Reply-To: <40509C21.1040906@gnu.org>

Andrew Cagney wrote:
> 
> Does this:
> 
>         /* NOTE: cagney/2003-09-05: CFI should specify the disposition
>            of all debug info registers.  If it doesn't, complain (but
>            not too loudly).  It turns out that GCC assumes that an
>            unspecified register implies "same value" when CFI (draft
>            7) specifies nothing at all.  Such a register could equally
>            be interpreted as "undefined".  Also note that this check
>            isn't sufficient; it only checks that all registers in the
>            range [0 .. max column] are specified, and won't detect
>            problems when a debug info register falls outside of the
>            table.  We need a way of iterating through all the valid
>            DWARF2 register numbers.  */
>         if (fs->regs.reg[column].how == DWARF2_FRAME_REG_UNSPECIFIED)
>           complaint (&symfile_complaints,
>                      "Incomplete CFI data; unspecified registers at 0x%s",
>                      paddr (fs->pc));
>         else
>           cache->reg[regnum] = fs->regs.reg[column];
> 
> sound like your problem?  It's possible to specify initial values of 
> such registers with:

I do get that complaint, and it seems a lot of registers are set to 
DWARF2_FRAME_REG_UNSPECIFIED.

> /* Set the architecture-specific register state initialization
>    function for GDBARCH to INIT_REG.  */
> 
> extern void dwarf2_frame_set_init_reg (struct gdbarch *gdbarch,
>                                        void (*init_reg) (struct gdbarch 
> *, int,
>                                              struct 
> dwarf2_frame_state_reg *));

Thanks for the tip, I hadn't seen that.  Reading the s390 implementation 
of dwarf2_frame_init_reg I get the impression that that information 
should have been there from the beginning (emitted by gcc that is) since 
it seems to be ABI/calling convention related.  But I'll try and 
implement something similar.

-- 
Orjan Friberg
Axis Communications


  reply	other threads:[~2004-03-12 12:00 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-10 16:53 Orjan Friberg
2004-03-10 16:59 ` Daniel Jacobowitz
2004-03-19  0:09   ` Daniel Jacobowitz
2004-03-19  0:09   ` Orjan Friberg
2004-03-11 14:09     ` Orjan Friberg
2004-03-11 15:55     ` Orjan Friberg
2004-03-11 17:05       ` Andrew Cagney
2004-03-19  0:09         ` Orjan Friberg [this message]
2004-03-12 12:00           ` Orjan Friberg
2004-03-19  0:09         ` Andrew Cagney
2004-03-11 17:11       ` Daniel Jacobowitz
2004-03-12 10:23         ` Orjan Friberg
2004-03-19  0:09           ` Orjan Friberg
2004-03-12 15:38             ` Orjan Friberg
2004-03-19  0:09           ` Orjan Friberg
2004-03-12 13:50             ` Orjan Friberg
2004-03-19  0:09           ` Orjan Friberg
2004-03-19  0:09           ` Daniel Jacobowitz
2004-03-12 15:38             ` Daniel Jacobowitz
2004-03-15 10:19             ` Orjan Friberg
2004-03-19  0:09               ` Orjan Friberg
2004-03-16 16:26             ` Orjan Friberg
2004-03-16 19:13               ` Daniel Jacobowitz
2004-03-16 20:51                 ` Hans-Peter Nilsson
2004-03-16 22:27                   ` Daniel Jacobowitz
2004-03-16 23:38                     ` Hans-Peter Nilsson
2004-03-16 23:58                       ` Daniel Jacobowitz
2004-03-19  0:09                         ` Daniel Jacobowitz
2004-03-19  0:09                       ` Hans-Peter Nilsson
2004-03-19  0:09                     ` Daniel Jacobowitz
2004-03-19  0:09                   ` Hans-Peter Nilsson
2004-03-19  0:09                 ` Daniel Jacobowitz
2004-03-19  0:09               ` Orjan Friberg
2004-03-19  0:09         ` Daniel Jacobowitz
2004-03-19  0:09       ` Orjan Friberg
2004-03-19  0:09 ` Orjan Friberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4051A61E.3030907@axis.com \
    --to=orjan.friberg@axis.com \
    --cc=cagney@gnu.org \
    --cc=drow@false.org \
    --cc=gdb-patches@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox