Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* Re: [RFA] import drow dbxread.c fix to branch
@ 2002-04-05 13:34 Michael Elizabeth Chastain
  0 siblings, 0 replies; 25+ messages in thread
From: Michael Elizabeth Chastain @ 2002-04-05 13:34 UTC (permalink / raw)
  To: ezannoni, jimb; +Cc: drow, gdb-patches

Jim Blandy writes:
> Perhaps this is bad attitude on my part, but I think we should go
> ahead with the changes (which we know are helpful), and wait until the
> older problem surfaces.

Sounds good to me.

DanielJ's patches have all been in areas unrelated to FredF's original
patch.  What's more, they are fixing more than FredF's patch broke.
So I'm happy with the path we are on.  I just want to nail all the
regressions in the 5.2 branch before it ships.

Michael C


^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [RFA] import drow dbxread.c fix to branch
@ 2002-04-04 18:17 Michael Elizabeth Chastain
  2002-04-04 18:36 ` Daniel Jacobowitz
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Elizabeth Chastain @ 2002-04-04 18:17 UTC (permalink / raw)
  To: drow, ezannoni; +Cc: ac131313, gdb-patches

Maybe I am some e-mails behind here.  But: if "gcc sometimes emits
line directives with a linenumber of 0", we may have a conflict.
FredF's patch synthesizes entries with a line number of 0.

So far DanielJ's patches have been adhering to the new meaning
per FredF.

Michael C

  2002-02-21  Fred Fish  <fnf@redhat.com>

	  * dbxread.c (process_one_symbol): When finding an N_FUN symbol
	  that marks the end of the range of a function, enter a line number
	  entry that has a line number of zero and a PC offset that matches
	  the end of the function.  This starts a range of PC's for which no
	  line number information is known.
	  * symtab.c (find_pc_sect_line): If our best fit is in a range of
	  PC's for which no line number info is found (line number is zero)
	  then we didn't find any valid line information.
	  * symtab.h: Document use of zero line number entry.


^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [RFA] import drow dbxread.c fix to branch
@ 2002-04-04  8:37 Michael Elizabeth Chastain
  0 siblings, 0 replies; 25+ messages in thread
From: Michael Elizabeth Chastain @ 2002-04-04  8:37 UTC (permalink / raw)
  To: ac131313, drow; +Cc: gdb-patches

My test bed likes it: no regressions; fixes PR gdb/381 as advertised.

You do need to bump the copyright datei mi-cmd-disas.c.

I'll keep posting these testsuite/ tarballs when I file bug reports
based on test failures.

Michael C

2002-04-04  Daniel Jacobowitz  <drow@mvista.com>

	* mi-cmd-disas.c (mi_cmd_disassemble): Skip end-of-function
	markers in the line table.


^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [RFA] import drow dbxread.c fix to branch
@ 2002-04-03 21:36 Michael Elizabeth Chastain
  2002-04-03 22:01 ` Daniel Jacobowitz
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Elizabeth Chastain @ 2002-04-03 21:36 UTC (permalink / raw)
  To: drow; +Cc: gdb-patches

DanielJ writes:
> Only shows on GCC 3.1, eh?  I'll try to look at it later, but I have no
> post-3.0 toolchain installed right now.  Actually, I should
> investigate, to make sure it isn't a 3.1 regression...

On the next spin, I'll make a special report of regressions for gcc
3.0.4 versus gcc-3_1-branch.  You can already look at "difference by gcc"
in the regular report if you want to pick up a hot spot or two.

BTW my test harness now saves the whole test directory, including all
the executable files.  In fact I'll just throw some tarball up in my
ftp directory in case it might help someone:

  ftp://ftp.shout.net/pub/users/mec/gdb/for-pr-gdb-381.tar.gz
  ftp://ftp.shout.net/pub/users/mec/gdb/for-pr-gdb-381-src.tar.gz

Michael C


^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [RFA] import drow dbxread.c fix to branch
@ 2002-04-03 20:48 Michael Elizabeth Chastain
  2002-04-03 21:09 ` Daniel Jacobowitz
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Elizabeth Chastain @ 2002-04-03 20:48 UTC (permalink / raw)
  To: ac131313, drow, eliz; +Cc: gdb-patches

Welcome back, Andrew!

Andrew Cagney writes:
> Fortunatly (for JimB), DanielJ found a fix for the problem and that has 
> slowly been working its way into the branch.

Here is the current status from my perspective:

. DanielJ's fix is great for PR gdb/379 and PR gdb/380.  It has been in
  mainline for a couple of test cycles with no regressions.  It's one of the
  steps DanielJ took to reach his fabulous "NO FAIL" tree.

. I grabbed the patch and tested it on the 5.2 branch.  It tests great
  over there.

. I'm waiting for approval to commit to the branch.  Then I can spin more
  test results and produce another detailed "5.1.1 versus gdb_5_2-branch"
  report.

. This fix does not fix PR gdb/381.  gdb/381 is still happening in mainline.
  I'm secretly hoping that DanielJ will take an interest in it.

. I am ambivalent about whether gdb/381 is a showstopper.  On one hand:
  any regression is bad and should be nailed down before a release.
  On the other hand: gdb/381 happens only in gcc-3_1-branch and
  gcc HEAD, which are not released.  "Ambivalence" also translates to:
  I'll be comfortable with whatever Andrew decides.

Michael C


^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [RFA] import drow dbxread.c fix to branch
@ 2002-04-01 21:36 Michael Elizabeth Chastain
  2002-04-01 21:43 ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Elizabeth Chastain @ 2002-04-01 21:36 UTC (permalink / raw)
  To: eliz; +Cc: gdb-patches

Eli Zaretskii writes:

> In general, I think only safe fixes for grave bugs should go into the 
> branch.

Well, yes.

PR/379 and PR/380 are broken in places where 5.1 worked correctly.
They are on Andrew Cagney's list of high priority bugs for 5.2 (along
with PR/381 which has a similar cause but is not fixed yet).

I believe this fix is safe because I ran before-and-after tests with:

  native i686-pc-linux-gnu%rh-7.2
  gcc = 2.95.3, 2.96-rh, 3.0.4, gcc-3_1-branch, HEAD
  goption = -gdwarf-2, -goption

That's ten combinations of gcc/goption.

I also believe that this fix is safe because it's been on mainline
for two full sunday test cycles without any regressions.

> Can you please post a simple test program, and a procedure to test the 
> relevant feature before and after the patch?  (I cannot run the test 
> suite on my system.)

The exact configuration is in PR gdb/379:

  [target = native host = i686-pc-linux-gnu%rh-7.2 gdb = gdb_5_2-branch%20020222 gcc = 2.95.3 glibc = vendor goption = -gstabs+]

The important bits are the "gcc 2.95.3" and "-gstabs+".  If you use those
you are likely to see the problem with a different target and host.
All the gdb code involved is not in OS-specific parts of gdb so I
believe that the problem is not OS-specific.  We had one report from
a freebsd system which looked similar.

If you want to reproduce this without running the test suite:

  . use gcc 2.95.3
  . copy gdb/testsuite/gdb.base/step-test.c into your local directory
  . compile with: gcc -gstabs+ -o step-test.exe step-test.c
    (yes I like .exe extensions even on Unix)
  . build a 5.2 branch gdb
  . gdb step-test.exe
    . break 56
    . run
    . step
    . note how "step" steps over the function, not into it

Here's a log from my system:

  bash-2.05$ /berman/fsf/OLD/2002-03-29/berman/native/install/gdb/gdb_5_2-branch/bin/gdb step-test.exe
  GNU gdb 5.1.90-2002-03-30-cvs
  Copyright 2002 Free Software Foundation, Inc.
  GDB is free software, covered by the GNU General Public License, and you are
  welcome to change it and/or distribute copies of it under certain conditions.
  Type "show copying" to see the conditions.
  There is absolutely no warranty for GDB.  Type "show warranty" for details.
  This GDB was configured as "i686-pc-linux-gnu"...
  (gdb) break 56
  Breakpoint 1 at 0x80484df: file step-test.c, line 56.
  (gdb) run
  Starting program: /berman/home/mec/tmp/step-test.exe
  Breakpoint 1, main () at step-test.c:56
  56           large_struct_by_value (r);  /* step-test.exp: large struct by value */
  (gdb) step
  59         exit (0);

gdb's behavior for the "step" command is wrong.  The correct behavior
is to step into the function "large_struct_by_value (r)".

Out of curiosity, how come you can't run the test suite?

> If we still have problems for which such solutions are 
> impossible, but which are deemed too grave to not solve them in 5.2, it 
> would mean that the branch was cut too early, and we should consider 
> canceling the branch and starting the release cycle anew.

That's always an option.  My opinion at this time is that we are not
at all close to needing a re-branch.

Michael C


^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [RFA] import drow dbxread.c fix to branch
@ 2002-04-01 11:22 Michael Elizabeth Chastain
  2002-04-01 20:49 ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Michael Elizabeth Chastain @ 2002-04-01 11:22 UTC (permalink / raw)
  To: gdb-patches, mec

Followup:

My test bed loves it for 5.2 (linux native).  It improves gcc 2.95.3
-gstabs+ and has no change with any other gcc/goption combination.

Okay to import into 5.2?

(I'm basically gonna focus on 5.1.1 -> 5.2 regressions for a while,
and this is one of them).

Michael C

  2002-03-21  Daniel Jacobowitz  <drow@mvista.com>
  * dbxread.c (process_one_symbol): Extend the first N_SLINE
  in a function to cover the entire beginning of the function
  as well if it does not already.


^ permalink raw reply	[flat|nested] 25+ messages in thread
* [RFA] import drow dbxread.c fix to branch
@ 2002-04-01  8:56 Michael Elizabeth Chastain
  0 siblings, 0 replies; 25+ messages in thread
From: Michael Elizabeth Chastain @ 2002-04-01  8:56 UTC (permalink / raw)
  To: gdb-patches

I would like to import this bug fix to the 5.2 branch:

  http://sources.redhat.com/ml/gdb-cvs/2002-03/msg00149.html

  2002-03-21  Daniel Jacobowitz  <drow@mvista.com>
  * dbxread.c (process_one_symbol): Extend the first N_SLINE
  in a function to cover the entire beginning of the function
  as well if it does not already.

This ought to fix a major regression with gcc 2.95.3 -gstabs+, as reported
in PR gdb/379 and PR gdb/380.

I'm about to run a test of this in my Linux test bed.  Assuming that
it works and doesn't regress anything else, is it okay to import this
patch to the 5.2 branch?

Michael C


^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2002-04-05 21:34 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-04-05 13:34 [RFA] import drow dbxread.c fix to branch Michael Elizabeth Chastain
  -- strict thread matches above, loose matches on Subject: below --
2002-04-04 18:17 Michael Elizabeth Chastain
2002-04-04 18:36 ` Daniel Jacobowitz
2002-04-04 19:35   ` Elena Zannoni
2002-04-05 13:10     ` Jim Blandy
2002-04-05 13:16       ` Daniel Jacobowitz
2002-04-04  8:37 Michael Elizabeth Chastain
2002-04-03 21:36 Michael Elizabeth Chastain
2002-04-03 22:01 ` Daniel Jacobowitz
2002-04-04 10:58   ` Andrew Cagney
2002-04-04 11:33   ` Elena Zannoni
2002-04-04 11:40     ` Daniel Jacobowitz
2002-04-04 12:15       ` Elena Zannoni
2002-04-04 12:24         ` Daniel Jacobowitz
2002-04-04 12:18       ` Andrew Cagney
2002-04-04 12:20         ` Daniel Berlin
2002-04-04 12:30           ` Andrew Cagney
2002-04-03 20:48 Michael Elizabeth Chastain
2002-04-03 21:09 ` Daniel Jacobowitz
2002-04-01 21:36 Michael Elizabeth Chastain
2002-04-01 21:43 ` Eli Zaretskii
2002-04-03 19:43   ` Andrew Cagney
2002-04-01 11:22 Michael Elizabeth Chastain
2002-04-01 20:49 ` Eli Zaretskii
2002-04-01  8:56 Michael Elizabeth Chastain

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox