public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jeffrey A Law <law@hurl.cygnus.com>
To: Robert Lipe <robertl@sco.com>
Cc: Jason Merrill <jason@cygnus.com>, wilson@cygnus.com, egcs@cygnus.com
Subject: Re: dwarf2 debug dependent upon GAS?
Date: Sun, 28 Feb 1999 00:57:00 -0000	[thread overview]
Message-ID: <29507.920192219@hurl.cygnus.com> (raw)
In-Reply-To: Your message of Fri, 26 Feb 1999 01:25:22 MST.            < 19990226012522.D17655@rjlhome.sco.com >

  In message < 19990226012522.D17655@rjlhome.sco.com >you write:
  > > Actually, I think we should use ASM_{GENERATE,OUTPUT}_INTERNAL_LABEL to
  > > handle such matters, like we do for text_end_label (and as the comment in
  > > dwarfout.c suggests).  That's a bit more complicated than this approach,
  > > but more correct.
  > 
  > 
  > This isn't quite right, but I'm calling it a night.   
  > 
  > >From the hip, my guess is that add_AT_section_offset() is calling
  > stripattributes() on that third argument which is no longer appropriate.
  > 
  > The bogus code looks like:
  > 
  >         .ascii "/tmp/x.c\0"     / DW_AT_name
  >         .ascii "/home3/negcs/gcc\0"     / DW_AT_comp_dir
  >         .ascii "GNU C egcs-2.93.09 19990225 (gcc2 ss-980929 experimental)\0
  > "
  > / DW_AT_producer
  >         .byte   0x1     / DW_AT_language
  >         .4byte  .Ltext_label0   / DW_AT_low_pc
  >         .4byte  .Letext0        / DW_AT_high_pc
  > ->        .4byte  *.Ldebug_line_label0    / DW_AT_stmt_list
  >         .byte   0x2     / ULEB128 0x2 (DIE (0x6d) DW_TAG_subprogram)
  >         .byte   0x1     / DW_AT_external
  > 
  > Remove the '*' from that line, and it compiles and links again.
This looks a lot like something I had to fight not long ago.

Basically all this code is bypassing the logic to strip out unwanted stuff
from the symbol.

In my case it was easier to just put the label into an operand and use the
%<opnum> syntax of output_asm_insn to do what I needed to do.  I don't know
if that kind of solution will work for what you are doing though.

[ See ashrdi3_non_const_int in the x86 port ].


jeff

WARNING: multiple messages have this Message-ID
From: Jeffrey A Law <law@hurl.cygnus.com>
To: Robert Lipe <robertl@sco.com>
Cc: Jason Merrill <jason@cygnus.com>, wilson@cygnus.com, egcs@cygnus.com
Subject: Re: dwarf2 debug dependent upon GAS?
Date: Sun, 28 Feb 1999 22:53:00 -0000	[thread overview]
Message-ID: <29507.920192219@hurl.cygnus.com> (raw)
Message-ID: <19990228225300.0hnN9b-JDRB_8hS5LBqG7F058FS1Gd4lFxMnSCDfJ98@z> (raw)
In-Reply-To: <19990226012522.D17655@rjlhome.sco.com>

  In message < 19990226012522.D17655@rjlhome.sco.com >you write:
  > > Actually, I think we should use ASM_{GENERATE,OUTPUT}_INTERNAL_LABEL to
  > > handle such matters, like we do for text_end_label (and as the comment in
  > > dwarfout.c suggests).  That's a bit more complicated than this approach,
  > > but more correct.
  > 
  > 
  > This isn't quite right, but I'm calling it a night.   
  > 
  > >From the hip, my guess is that add_AT_section_offset() is calling
  > stripattributes() on that third argument which is no longer appropriate.
  > 
  > The bogus code looks like:
  > 
  >         .ascii "/tmp/x.c\0"     / DW_AT_name
  >         .ascii "/home3/negcs/gcc\0"     / DW_AT_comp_dir
  >         .ascii "GNU C egcs-2.93.09 19990225 (gcc2 ss-980929 experimental)\0
  > "
  > / DW_AT_producer
  >         .byte   0x1     / DW_AT_language
  >         .4byte  .Ltext_label0   / DW_AT_low_pc
  >         .4byte  .Letext0        / DW_AT_high_pc
  > ->        .4byte  *.Ldebug_line_label0    / DW_AT_stmt_list
  >         .byte   0x2     / ULEB128 0x2 (DIE (0x6d) DW_TAG_subprogram)
  >         .byte   0x1     / DW_AT_external
  > 
  > Remove the '*' from that line, and it compiles and links again.
This looks a lot like something I had to fight not long ago.

Basically all this code is bypassing the logic to strip out unwanted stuff
from the symbol.

In my case it was easier to just put the label into an operand and use the
%<opnum> syntax of output_asm_insn to do what I needed to do.  I don't know
if that kind of solution will work for what you are doing though.

[ See ashrdi3_non_const_int in the x86 port ].


jeff

  parent reply	other threads:[~1999-02-28  0:57 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <19990221144644.M8783.cygnus.egcs@rjlhome.sco.com>
1999-02-22 17:24 ` Jim Wilson
     [not found]   ` < 199902230124.RAA24440@rtl.cygnus.com >
1999-02-22 21:32     ` Robert Lipe
     [not found]       ` < 19990222233200.P325@rjlhome.sco.com >
1999-02-23  7:04         ` Brian Ford
     [not found]           ` < Pine.SGI.4.03.9902230903340.512-100000@uscream.vss.fsi.com >
1999-02-23  8:41             ` Robert Lipe
     [not found]               ` < 19990223104109.E2294@rjlhome.sco.com >
1999-02-23  9:03                 ` Brian Ford
1999-02-28 22:53                   ` Brian Ford
1999-02-23 17:39               ` Daniel Berlin
1999-02-28 22:53                 ` Daniel Berlin
1999-02-28 22:53               ` Robert Lipe
1999-02-28 22:53           ` Brian Ford
1999-02-23 14:19         ` Jim Wilson
1999-02-28 22:53           ` Jim Wilson
1999-02-28 22:53       ` Robert Lipe
1999-02-28 22:53   ` Jim Wilson
     [not found] ` <199902230124.RAA24440.cygnus.egcs@rtl.cygnus.com>
1999-02-25 12:05   ` Jason Merrill
     [not found]     ` <19990225143649.I17655@rjlhome.sco.com>
1999-02-25 18:13       ` Jason Merrill
     [not found]         ` < u9u2w9j4jr.fsf@yorick.cygnus.com >
1999-02-25 20:55           ` Robert Lipe
1999-02-25 21:02             ` Jason Merrill
     [not found]               ` < u9d82xiwp5.fsf@yorick.cygnus.com >
1999-02-25 21:21                 ` Robert Lipe
1999-02-25 21:27                   ` Jason Merrill
1999-02-28 22:53                     ` Jason Merrill
1999-02-28 22:53                   ` Robert Lipe
1999-02-25 22:16                 ` Robert Lipe
1999-02-25 22:31                   ` Jason Merrill
     [not found]                     ` < u93e3tism2.fsf@yorick.cygnus.com >
1999-02-25 23:25                       ` Robert Lipe
     [not found]                         ` < 19990226012522.D17655@rjlhome.sco.com >
1999-02-28  0:57                           ` Jeffrey A Law [this message]
1999-02-28 22:53                             ` Jeffrey A Law
1999-02-28 22:53                         ` Robert Lipe
1999-02-28 22:53                     ` Jason Merrill
1999-02-28 22:53                   ` Robert Lipe
1999-02-28 22:53               ` Jason Merrill
1999-02-25 21:19             ` Jason Merrill
1999-02-28 22:53               ` Jason Merrill
1999-02-28 22:53             ` Robert Lipe
1999-02-28 22:53         ` Jason Merrill
1999-02-28 22:53     ` Jason Merrill
1999-02-21 12:47 Robert Lipe
     [not found] ` < 19990221144644.M8783@rjlhome.sco.com >
1999-02-21 14:51   ` Jeffrey A Law
1999-02-28 22:53     ` Jeffrey A Law
1999-02-28 22:53 ` Robert Lipe

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=29507.920192219@hurl.cygnus.com \
    --to=law@hurl.cygnus.com \
    --cc=egcs@cygnus.com \
    --cc=jason@cygnus.com \
    --cc=robertl@sco.com \
    --cc=wilson@cygnus.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).