Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Paul Gilliam <pgilliam@us.ibm.com>
To: gdb-patches@sources.redhat.com
Cc: Andrew Cagney <cagney@gnu.org>,
	Michael Chastain <mec.gnu@mindspring.com>
Subject: Re: [PATCH] Fixes testsuit/gdb.base/annota1.exp
Date: Thu, 23 Sep 2004 02:13:00 -0000	[thread overview]
Message-ID: <200409221910.41605.pgilliam@us.ibm.com> (raw)
In-Reply-To: <4151D7B4.1080306@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 3066 bytes --]

Andrew,

(I am sorry if this is just a rehash of the past, but it's new to me :-)

On Wednesday 22 September 2004 12:51, Andrew Cagney wrote:

--- snip ---
> > The problem is specific to any ISA that uses delayed breakpoints...  I
> > think that's just the Power64.
>
> Keep going .... what problem?
>

The problem of backtracing past main.  It shows up when debugging a 64-bit 
application.  it does NOT show up when debugging a 32-bit application.  Both 
on powerpc64--linux.

> >>> I see this lets GDB accept the ``warning: adjusting breakpoint''
> >>> message.  I'm wondering if GDB should even emit the warning - it and
> >>> the descriptor are very much integral parts of the ABI - and hence
> >>> should be trying to always display the descriptor symbol and code
> >>> address (and not display the dot symbol).
> >
> > I think I agree.  Unless this level of detail is needed by the user for
> > some reason.  And I don't think they need to be reminded every time the
> > breakpoint is hit.  But that's the way the code is.  The testsuite should
> > reflect the way the code is, and to a certain extent, the way it was.
> >
> >>> What's going to happen when 64-bit PPC stops emiting those dot symbols?
> >
> > When this happens, then the regexp that I added would never be matched. 
> > So Its kind of self correcting.
>
> This sounds like a KFAIL.
>
>  > Some time later we can just remove the regexp.
>
> (that never happens)
>
> >>>> > 2) Due to a bug (I which I knew the number), GDB 'skids' past the
> >>>> > top-of-stack when doing a backtrace.  This causes two extra and
> >>>> > severial garbage stack frames to be displayed, eventually getting an
> >>>> > error.
> >>>
> >>> You mean backtracing past main - that code was recently rewritten.
> >>> However, there's apparently no test case for the feature, perhaphs it
> >>> it should first be added and fixed?.  Anyway, I don't think we should
> >>> be passing a broken backtrace.
> >
> > Well... this doesn't 'pass' a broken backtrace, it just doesn't let a
> > broken backtrace stop it from testing what it is really interested in:
> > annotations.
>
> That sounds like a KFAIL.

So when testing annotations, it will be a known failure on powerpc64--linux, 
when debugging a 64-bit application, because backtrace went past main.

I agree it is a known failure.  But it has nothing to do with annotations.  
Annotations work fine.  

I can see what a mess we would have if each test started trying to defend its 
self against bugs outside of the area being tested.

It it well known that a 'KFAIL' durring a test may have nothing to do with 
what is being tested? 

Is there an equivelent failure for 'I just can't run this part of the test?'

>
> > I agree that we need a test for the 'backtracing past main' problem.  I
> > will post one later today, along with a log showing it in action.  Which
> > .exp file would you suggest I use as a model?
>
> The first half of siginfo.*?
>
> Andrew

OK, so I wrote a test for the 'backtracing past main' problem.  Here it is 
along with a couple of logs:


[-- Attachment #2: backtrace.exp --]
[-- Type: text/plain, Size: 3233 bytes --]

# Copyright 2004 Free Software Foundation, Inc.

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  

# Please email any bugs, comments, and/or additions to this file to:
# bug-gdb@gnu.org

# This file is part of the gdb testsuite.

if $tracelevel {
    strace $tracelevel
}

#
# Test for backtrace past main.
#

set prms_id 0
set bug_id 0

# should 4 digits or less
set subr_depth 100

set testfile "backtrace"
set srcfile "$subdir/$testfile.c"
set escapedsrcfile [string_to_regexp "./$srcfile"]
set binfile ${objdir}/${subdir}/${testfile}

# Generate the 'c' program.

set src_out [open $srcfile "w"]
puts $src_out "/* Copyright 2004 Free Software Foundation, Inc. */\n"
puts $src_out "/* This file is used by 'backtrace.exp', part of the gdb testsuite. */\n"
puts $src_out "#include <stdio.h>\n"
puts $src_out [format "void deep_sub_%04d (int up_count, int down_count)" $subr_depth]
puts $src_out "{\n  printf (\"At the bottom\\n\");\n}\n"

for {set i [expr $subr_depth - 1]} {$i > 0} {incr i -1} {
  puts $src_out [format "void deep_sub_%04d (int up_count, int down_count)" $i]
  puts $src_out [format "{\n  deep_sub_%04d (++up_count, --down_count);\n}\n" [expr $i + 1]]
}

puts $src_out [format "int main()\n{\n  deep_sub_%04d (0, $subr_depth);\n  return 0;\n}" 1]
close $src_out

# Compile the 'c' program.

if { [gdb_compile "${srcdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
    gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
}

# Reset and start GDB

gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir
gdb_load ${binfile}

set test "backtrace past main"

# Set a breakpoint at the deepest subroutine.

gdb_test [format "break deep_sub_%04d" $subr_depth] "Breakpoint 1 at $hex: file $escapedsrcfile, line $decimal." "$test"

# Run the test program.

gdb_test "run" "Starting program:.*Breakpoint 1,.*printf \\(\"At the bottom\\\\n\"\\);" "$test"

# Do the backtrace. (lots of output)

set first_line [format "#0  deep_sub_%04d \\(up_count=%d, down_count=1\\) at $escapedsrcfile:$decimal" $subr_depth [expr $subr_depth - 1]]
              #$decimal $hex in deep_sub_$decimal .up_count=$decimal, down_count=$decimal) at ./gdb.base/backtrace.c:489
set middle_lines "#$decimal +$hex in deep_sub_$decimal \\(up_count=$decimal, down_count=$decimal\\) at $escapedsrcfile:$decimal"
set last_line [format "#%d +$hex in main .. at $escapedsrcfile:$decimal\r\n" $subr_depth]

gdb_test_multiple "backtrace" "$test" {
  -re "$first_line\r\n($middle_lines\r\n)+$last_line$gdb_prompt $" {
    pass "$test"
  }
}


[-- Attachment #3: gdb.log.64 --]
[-- Type: text/plain, Size: 14649 bytes --]

Test Run By pgilliam on Thu Sep 23 01:47:59 2004
Native configuration is powerpc64-unknown-linux-gnu

		=== gdb tests ===

Schedule of variations:
    unix/-m64

Running target unix/-m64
Using ./dejagnu/baseboards/unix.exp as board description file for target.
Using ./dejagnu/config/unix.exp as generic interface file for target.
Using ./config/unix.exp as tool-and-target-specific interface file.
Running ./gdb.base/backtrace.exp ...
Executing on host: gcc ./gdb.base/backtrace.c  -g  -lm   -m64 -o /home/pgilliam/testsuite/gdb.base/backtrace    (timeout = 300)
spawn gcc ./gdb.base/backtrace.c -g -lm -m64 -o /home/pgilliam/testsuite/gdb.base/backtrace 
spawn /usr/bin/gdb -nw -nx 
GNU gdb Red Hat Linux (6.1post-1.20040607.8rh)
Copyright 2004 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 "ppc64-redhat-linux-gnu".
(gdb) set height 0
(gdb) set width 0
(gdb) dir
Reinitialize source path to empty? (y or n) y
Source directories searched: $cdir:$cwd
(gdb) dir ./gdb.base
Source directories searched: /home/pgilliam/testsuite/./gdb.base:$cdir:$cwd
(gdb) file /home/pgilliam/testsuite/gdb.base/backtrace
Reading symbols from /home/pgilliam/testsuite/gdb.base/backtrace...done.
Using host libthread_db library "/lib64/tls/libthread_db.so.1".
(gdb) break deep_sub_0100
Breakpoint 1 at 0x10000550: file ./gdb.base/backtrace.c, line 9.
(gdb) PASS: gdb.base/backtrace.exp: backtrace past main
run
Starting program: /home/pgilliam/testsuite/gdb.base/backtrace 

Breakpoint 1, deep_sub_0100 (up_count=99, down_count=1) at ./gdb.base/backtrace.c:9
9	  printf ("At the bottom\n");
(gdb) PASS: gdb.base/backtrace.exp: backtrace past main
backtrace
#0  deep_sub_0100 (up_count=99, down_count=1) at ./gdb.base/backtrace.c:9
#1  0x00000000100005d0 in deep_sub_0099 (up_count=99, down_count=1) at ./gdb.base/backtrace.c:14
#2  0x0000000010000644 in deep_sub_0098 (up_count=98, down_count=2) at ./gdb.base/backtrace.c:19
#3  0x00000000100006b8 in deep_sub_0097 (up_count=97, down_count=3) at ./gdb.base/backtrace.c:24
#4  0x000000001000072c in deep_sub_0096 (up_count=96, down_count=4) at ./gdb.base/backtrace.c:29
#5  0x00000000100007a0 in deep_sub_0095 (up_count=95, down_count=5) at ./gdb.base/backtrace.c:34
#6  0x0000000010000814 in deep_sub_0094 (up_count=94, down_count=6) at ./gdb.base/backtrace.c:39
#7  0x0000000010000888 in deep_sub_0093 (up_count=93, down_count=7) at ./gdb.base/backtrace.c:44
#8  0x00000000100008fc in deep_sub_0092 (up_count=92, down_count=8) at ./gdb.base/backtrace.c:49
#9  0x0000000010000970 in deep_sub_0091 (up_count=91, down_count=9) at ./gdb.base/backtrace.c:54
#10 0x00000000100009e4 in deep_sub_0090 (up_count=90, down_count=10) at ./gdb.base/backtrace.c:59
#11 0x0000000010000a58 in deep_sub_0089 (up_count=89, down_count=11) at ./gdb.base/backtrace.c:64
#12 0x0000000010000acc in deep_sub_0088 (up_count=88, down_count=12) at ./gdb.base/backtrace.c:69
#13 0x0000000010000b40 in deep_sub_0087 (up_count=87, down_count=13) at ./gdb.base/backtrace.c:74
#14 0x0000000010000bb4 in deep_sub_0086 (up_count=86, down_count=14) at ./gdb.base/backtrace.c:79
#15 0x0000000010000c28 in deep_sub_0085 (up_count=85, down_count=15) at ./gdb.base/backtrace.c:84
#16 0x0000000010000c9c in deep_sub_0084 (up_count=84, down_count=16) at ./gdb.base/backtrace.c:89
#17 0x0000000010000d10 in deep_sub_0083 (up_count=83, down_count=17) at ./gdb.base/backtrace.c:94
#18 0x0000000010000d84 in deep_sub_0082 (up_count=82, down_count=18) at ./gdb.base/backtrace.c:99
#19 0x0000000010000df8 in deep_sub_0081 (up_count=81, down_count=19) at ./gdb.base/backtrace.c:104
#20 0x0000000010000e6c in deep_sub_0080 (up_count=80, down_count=20) at ./gdb.base/backtrace.c:109
#21 0x0000000010000ee0 in deep_sub_0079 (up_count=79, down_count=21) at ./gdb.base/backtrace.c:114
#22 0x0000000010000f54 in deep_sub_0078 (up_count=78, down_count=22) at ./gdb.base/backtrace.c:119
#23 0x0000000010000fc8 in deep_sub_0077 (up_count=77, down_count=23) at ./gdb.base/backtrace.c:124
#24 0x000000001000103c in deep_sub_0076 (up_count=76, down_count=24) at ./gdb.base/backtrace.c:129
#25 0x00000000100010b0 in deep_sub_0075 (up_count=75, down_count=25) at ./gdb.base/backtrace.c:134
#26 0x0000000010001124 in deep_sub_0074 (up_count=74, down_count=26) at ./gdb.base/backtrace.c:139
#27 0x0000000010001198 in deep_sub_0073 (up_count=73, down_count=27) at ./gdb.base/backtrace.c:144
#28 0x000000001000120c in deep_sub_0072 (up_count=72, down_count=28) at ./gdb.base/backtrace.c:149
#29 0x0000000010001280 in deep_sub_0071 (up_count=71, down_count=29) at ./gdb.base/backtrace.c:154
#30 0x00000000100012f4 in deep_sub_0070 (up_count=70, down_count=30) at ./gdb.base/backtrace.c:159
#31 0x0000000010001368 in deep_sub_0069 (up_count=69, down_count=31) at ./gdb.base/backtrace.c:164
#32 0x00000000100013dc in deep_sub_0068 (up_count=68, down_count=32) at ./gdb.base/backtrace.c:169
#33 0x0000000010001450 in deep_sub_0067 (up_count=67, down_count=33) at ./gdb.base/backtrace.c:174
#34 0x00000000100014c4 in deep_sub_0066 (up_count=66, down_count=34) at ./gdb.base/backtrace.c:179
#35 0x0000000010001538 in deep_sub_0065 (up_count=65, down_count=35) at ./gdb.base/backtrace.c:184
#36 0x00000000100015ac in deep_sub_0064 (up_count=64, down_count=36) at ./gdb.base/backtrace.c:189
#37 0x0000000010001620 in deep_sub_0063 (up_count=63, down_count=37) at ./gdb.base/backtrace.c:194
#38 0x0000000010001694 in deep_sub_0062 (up_count=62, down_count=38) at ./gdb.base/backtrace.c:199
#39 0x0000000010001708 in deep_sub_0061 (up_count=61, down_count=39) at ./gdb.base/backtrace.c:204
#40 0x000000001000177c in deep_sub_0060 (up_count=60, down_count=40) at ./gdb.base/backtrace.c:209
#41 0x00000000100017f0 in deep_sub_0059 (up_count=59, down_count=41) at ./gdb.base/backtrace.c:214
#42 0x0000000010001864 in deep_sub_0058 (up_count=58, down_count=42) at ./gdb.base/backtrace.c:219
#43 0x00000000100018d8 in deep_sub_0057 (up_count=57, down_count=43) at ./gdb.base/backtrace.c:224
#44 0x000000001000194c in deep_sub_0056 (up_count=56, down_count=44) at ./gdb.base/backtrace.c:229
#45 0x00000000100019c0 in deep_sub_0055 (up_count=55, down_count=45) at ./gdb.base/backtrace.c:234
#46 0x0000000010001a34 in deep_sub_0054 (up_count=54, down_count=46) at ./gdb.base/backtrace.c:239
#47 0x0000000010001aa8 in deep_sub_0053 (up_count=53, down_count=47) at ./gdb.base/backtrace.c:244
#48 0x0000000010001b1c in deep_sub_0052 (up_count=52, down_count=48) at ./gdb.base/backtrace.c:249
#49 0x0000000010001b90 in deep_sub_0051 (up_count=51, down_count=49) at ./gdb.base/backtrace.c:254
#50 0x0000000010001c04 in deep_sub_0050 (up_count=50, down_count=50) at ./gdb.base/backtrace.c:259
#51 0x0000000010001c78 in deep_sub_0049 (up_count=49, down_count=51) at ./gdb.base/backtrace.c:264
#52 0x0000000010001cec in deep_sub_0048 (up_count=48, down_count=52) at ./gdb.base/backtrace.c:269
#53 0x0000000010001d60 in deep_sub_0047 (up_count=47, down_count=53) at ./gdb.base/backtrace.c:274
#54 0x0000000010001dd4 in deep_sub_0046 (up_count=46, down_count=54) at ./gdb.base/backtrace.c:279
#55 0x0000000010001e48 in deep_sub_0045 (up_count=45, down_count=55) at ./gdb.base/backtrace.c:284
#56 0x0000000010001ebc in deep_sub_0044 (up_count=44, down_count=56) at ./gdb.base/backtrace.c:289
#57 0x0000000010001f30 in deep_sub_0043 (up_count=43, down_count=57) at ./gdb.base/backtrace.c:294
#58 0x0000000010001fa4 in deep_sub_0042 (up_count=42, down_count=58) at ./gdb.base/backtrace.c:299
#59 0x0000000010002018 in deep_sub_0041 (up_count=41, down_count=59) at ./gdb.base/backtrace.c:304
#60 0x000000001000208c in deep_sub_0040 (up_count=40, down_count=60) at ./gdb.base/backtrace.c:309
#61 0x0000000010002100 in deep_sub_0039 (up_count=39, down_count=61) at ./gdb.base/backtrace.c:314
#62 0x0000000010002174 in deep_sub_0038 (up_count=38, down_count=62) at ./gdb.base/backtrace.c:319
#63 0x00000000100021e8 in deep_sub_0037 (up_count=37, down_count=63) at ./gdb.base/backtrace.c:324
#64 0x000000001000225c in deep_sub_0036 (up_count=36, down_count=64) at ./gdb.base/backtrace.c:329
#65 0x00000000100022d0 in deep_sub_0035 (up_count=35, down_count=65) at ./gdb.base/backtrace.c:334
#66 0x0000000010002344 in deep_sub_0034 (up_count=34, down_count=66) at ./gdb.base/backtrace.c:339
#67 0x00000000100023b8 in deep_sub_0033 (up_count=33, down_count=67) at ./gdb.base/backtrace.c:344
#68 0x000000001000242c in deep_sub_0032 (up_count=32, down_count=68) at ./gdb.base/backtrace.c:349
#69 0x00000000100024a0 in deep_sub_0031 (up_count=31, down_count=69) at ./gdb.base/backtrace.c:354
#70 0x0000000010002514 in deep_sub_0030 (up_count=30, down_count=70) at ./gdb.base/backtrace.c:359
#71 0x0000000010002588 in deep_sub_0029 (up_count=29, down_count=71) at ./gdb.base/backtrace.c:364
#72 0x00000000100025fc in deep_sub_0028 (up_count=28, down_count=72) at ./gdb.base/backtrace.c:369
#73 0x0000000010002670 in deep_sub_0027 (up_count=27, down_count=73) at ./gdb.base/backtrace.c:374
#74 0x00000000100026e4 in deep_sub_0026 (up_count=26, down_count=74) at ./gdb.base/backtrace.c:379
#75 0x0000000010002758 in deep_sub_0025 (up_count=25, down_count=75) at ./gdb.base/backtrace.c:384
#76 0x00000000100027cc in deep_sub_0024 (up_count=24, down_count=76) at ./gdb.base/backtrace.c:389
#77 0x0000000010002840 in deep_sub_0023 (up_count=23, down_count=77) at ./gdb.base/backtrace.c:394
#78 0x00000000100028b4 in deep_sub_0022 (up_count=22, down_count=78) at ./gdb.base/backtrace.c:399
#79 0x0000000010002928 in deep_sub_0021 (up_count=21, down_count=79) at ./gdb.base/backtrace.c:404
#80 0x000000001000299c in deep_sub_0020 (up_count=20, down_count=80) at ./gdb.base/backtrace.c:409
#81 0x0000000010002a10 in deep_sub_0019 (up_count=19, down_count=81) at ./gdb.base/backtrace.c:414
#82 0x0000000010002a84 in deep_sub_0018 (up_count=18, down_count=82) at ./gdb.base/backtrace.c:419
#83 0x0000000010002af8 in deep_sub_0017 (up_count=17, down_count=83) at ./gdb.base/backtrace.c:424
#84 0x0000000010002b6c in deep_sub_0016 (up_count=16, down_count=84) at ./gdb.base/backtrace.c:429
#85 0x0000000010002be0 in deep_sub_0015 (up_count=15, down_count=85) at ./gdb.base/backtrace.c:434
#86 0x0000000010002c54 in deep_sub_0014 (up_count=14, down_count=86) at ./gdb.base/backtrace.c:439
#87 0x0000000010002cc8 in deep_sub_0013 (up_count=13, down_count=87) at ./gdb.base/backtrace.c:444
#88 0x0000000010002d3c in deep_sub_0012 (up_count=12, down_count=88) at ./gdb.base/backtrace.c:449
#89 0x0000000010002db0 in deep_sub_0011 (up_count=11, down_count=89) at ./gdb.base/backtrace.c:454
#90 0x0000000010002e24 in deep_sub_0010 (up_count=10, down_count=90) at ./gdb.base/backtrace.c:459
#91 0x0000000010002e98 in deep_sub_0009 (up_count=9, down_count=91) at ./gdb.base/backtrace.c:464
#92 0x0000000010002f0c in deep_sub_0008 (up_count=8, down_count=92) at ./gdb.base/backtrace.c:469
#93 0x0000000010002f80 in deep_sub_0007 (up_count=7, down_count=93) at ./gdb.base/backtrace.c:474
#94 0x0000000010002ff4 in deep_sub_0006 (up_count=6, down_count=94) at ./gdb.base/backtrace.c:479
#95 0x0000000010003068 in deep_sub_0005 (up_count=5, down_count=95) at ./gdb.base/backtrace.c:484
#96 0x00000000100030dc in deep_sub_0004 (up_count=4, down_count=96) at ./gdb.base/backtrace.c:489
#97 0x0000000010003150 in deep_sub_0003 (up_count=3, down_count=97) at ./gdb.base/backtrace.c:494
#98 0x00000000100031c4 in deep_sub_0002 (up_count=2, down_count=98) at ./gdb.base/backtrace.c:499
#99 0x0000000010003238 in deep_sub_0001 (up_count=1, down_count=99) at ./gdb.base/backtrace.c:504
#100 0x0000000010003278 in main () at ./gdb.base/backtrace.c:509
#101 0x00000080c5932810 in .generic_start_main () from /lib64/tls/libc.so.6
#102 0x00000080c5932998 in .__libc_start_main () from /lib64/tls/libc.so.6
#103 0x0000000000000000 in ?? ()
Previous frame identical to this frame (corrupt stack?)
(gdb) FAIL: gdb.base/backtrace.exp: backtrace past main
testcase ./gdb.base/backtrace.exp completed in 0 seconds
Running ./gdb.trace/backtrace.exp ...
spawn /usr/bin/gdb -nw -nx 
GNU gdb Red Hat Linux (6.1post-1.20040607.8rh)
Copyright 2004 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 "ppc64-redhat-linux-gnu".
(gdb) set height 0
(gdb) set width 0
(gdb) Executing on host: gcc ./gdb.trace/actions.c  -w -g  -lm   -m64 -o /home/pgilliam/testsuite/gdb.trace/actions    (timeout = 300)
spawn gcc ./gdb.trace/actions.c -w -g -lm -m64 -o /home/pgilliam/testsuite/gdb.trace/actions 
file /home/pgilliam/testsuite/gdb.trace/actions
Reading symbols from /home/pgilliam/testsuite/gdb.trace/actions...done.
Using host libthread_db library "/lib64/tls/libthread_db.so.1".
(gdb) tstop
Trace can only be run on remote targets.
(gdb) tfind none
Trace can only be run on remote targets.
(gdb) delete breakpoints
(gdb) info breakpoints
No breakpoints or watchpoints.
(gdb) break main
Breakpoint 1 at 0x100009f0: file ./gdb.trace/actions.c, line 125.
(gdb) run 
Starting program: /home/pgilliam/testsuite/gdb.trace/actions 

Breakpoint 1, main (argc=1, argv=0x1fffffff6f8, envp=0x1fffffff708) at ./gdb.trace/actions.c:125
125	  begin ();
(gdb) dir
Reinitialize source path to empty? (y or n) y
Source directories searched: $cdir:$cwd
(gdb) dir ./gdb.trace
Source directories searched: /home/pgilliam/testsuite/./gdb.trace:$cdir:$cwd
(gdb) tstatus
Trace can only be run on remote targets.
(gdb) PASS: gdb.trace/backtrace.exp: Current target does not supporst trace
testcase ./gdb.trace/backtrace.exp completed in 1 seconds

		=== gdb Summary ===

# of expected passes		3
# of unexpected failures	1
Executing on host: /usr/bin/gdb -nw --command gdb_cmd    (timeout = 300)
spawn /usr/bin/gdb -nw --command gdb_cmd 
GNU gdb Red Hat Linux (6.1post-1.20040607.8rh)
Copyright 2004 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 "ppc64-redhat-linux-gnu".
/usr/bin/gdb version  2004 -nx

runtest completed at Thu Sep 23 01:48:00 2004

[-- Attachment #4: gdb.log.32 --]
[-- Type: text/plain, Size: 13576 bytes --]

Test Run By pgilliam on Thu Sep 23 01:51:24 2004
Native configuration is powerpc64-unknown-linux-gnu

		=== gdb tests ===

Schedule of variations:
    unix/-m32

Running target unix/-m32
Using ./dejagnu/baseboards/unix.exp as board description file for target.
Using ./dejagnu/config/unix.exp as generic interface file for target.
Using ./config/unix.exp as tool-and-target-specific interface file.
Running ./gdb.base/backtrace.exp ...
Executing on host: gcc ./gdb.base/backtrace.c  -g  -lm   -m32 -o /home/pgilliam/testsuite/gdb.base/backtrace    (timeout = 300)
spawn gcc ./gdb.base/backtrace.c -g -lm -m32 -o /home/pgilliam/testsuite/gdb.base/backtrace 
spawn /usr/bin/gdb -nw -nx 
GNU gdb Red Hat Linux (6.1post-1.20040607.8rh)
Copyright 2004 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 "ppc64-redhat-linux-gnu".
(gdb) set height 0
(gdb) set width 0
(gdb) dir
Reinitialize source path to empty? (y or n) y
Source directories searched: $cdir:$cwd
(gdb) dir ./gdb.base
Source directories searched: /home/pgilliam/testsuite/./gdb.base:$cdir:$cwd
(gdb) file /home/pgilliam/testsuite/gdb.base/backtrace
Reading symbols from /home/pgilliam/testsuite/gdb.base/backtrace...done.
Using host libthread_db library "/lib64/tls/libthread_db.so.1".
(gdb) break deep_sub_0100
Breakpoint 1 at 0x10000440: file ./gdb.base/backtrace.c, line 9.
(gdb) PASS: gdb.base/backtrace.exp: backtrace past main
run
Starting program: /home/pgilliam/testsuite/gdb.base/backtrace 

Breakpoint 1, deep_sub_0100 (up_count=99, down_count=1) at ./gdb.base/backtrace.c:9
9	  printf ("At the bottom\n");
(gdb) PASS: gdb.base/backtrace.exp: backtrace past main
backtrace
#0  deep_sub_0100 (up_count=99, down_count=1) at ./gdb.base/backtrace.c:9
#1  0x100004a8 in deep_sub_0099 (up_count=99, down_count=1) at ./gdb.base/backtrace.c:14
#2  0x10000504 in deep_sub_0098 (up_count=98, down_count=2) at ./gdb.base/backtrace.c:19
#3  0x10000560 in deep_sub_0097 (up_count=97, down_count=3) at ./gdb.base/backtrace.c:24
#4  0x100005bc in deep_sub_0096 (up_count=96, down_count=4) at ./gdb.base/backtrace.c:29
#5  0x10000618 in deep_sub_0095 (up_count=95, down_count=5) at ./gdb.base/backtrace.c:34
#6  0x10000674 in deep_sub_0094 (up_count=94, down_count=6) at ./gdb.base/backtrace.c:39
#7  0x100006d0 in deep_sub_0093 (up_count=93, down_count=7) at ./gdb.base/backtrace.c:44
#8  0x1000072c in deep_sub_0092 (up_count=92, down_count=8) at ./gdb.base/backtrace.c:49
#9  0x10000788 in deep_sub_0091 (up_count=91, down_count=9) at ./gdb.base/backtrace.c:54
#10 0x100007e4 in deep_sub_0090 (up_count=90, down_count=10) at ./gdb.base/backtrace.c:59
#11 0x10000840 in deep_sub_0089 (up_count=89, down_count=11) at ./gdb.base/backtrace.c:64
#12 0x1000089c in deep_sub_0088 (up_count=88, down_count=12) at ./gdb.base/backtrace.c:69
#13 0x100008f8 in deep_sub_0087 (up_count=87, down_count=13) at ./gdb.base/backtrace.c:74
#14 0x10000954 in deep_sub_0086 (up_count=86, down_count=14) at ./gdb.base/backtrace.c:79
#15 0x100009b0 in deep_sub_0085 (up_count=85, down_count=15) at ./gdb.base/backtrace.c:84
#16 0x10000a0c in deep_sub_0084 (up_count=84, down_count=16) at ./gdb.base/backtrace.c:89
#17 0x10000a68 in deep_sub_0083 (up_count=83, down_count=17) at ./gdb.base/backtrace.c:94
#18 0x10000ac4 in deep_sub_0082 (up_count=82, down_count=18) at ./gdb.base/backtrace.c:99
#19 0x10000b20 in deep_sub_0081 (up_count=81, down_count=19) at ./gdb.base/backtrace.c:104
#20 0x10000b7c in deep_sub_0080 (up_count=80, down_count=20) at ./gdb.base/backtrace.c:109
#21 0x10000bd8 in deep_sub_0079 (up_count=79, down_count=21) at ./gdb.base/backtrace.c:114
#22 0x10000c34 in deep_sub_0078 (up_count=78, down_count=22) at ./gdb.base/backtrace.c:119
#23 0x10000c90 in deep_sub_0077 (up_count=77, down_count=23) at ./gdb.base/backtrace.c:124
#24 0x10000cec in deep_sub_0076 (up_count=76, down_count=24) at ./gdb.base/backtrace.c:129
#25 0x10000d48 in deep_sub_0075 (up_count=75, down_count=25) at ./gdb.base/backtrace.c:134
#26 0x10000da4 in deep_sub_0074 (up_count=74, down_count=26) at ./gdb.base/backtrace.c:139
#27 0x10000e00 in deep_sub_0073 (up_count=73, down_count=27) at ./gdb.base/backtrace.c:144
#28 0x10000e5c in deep_sub_0072 (up_count=72, down_count=28) at ./gdb.base/backtrace.c:149
#29 0x10000eb8 in deep_sub_0071 (up_count=71, down_count=29) at ./gdb.base/backtrace.c:154
#30 0x10000f14 in deep_sub_0070 (up_count=70, down_count=30) at ./gdb.base/backtrace.c:159
#31 0x10000f70 in deep_sub_0069 (up_count=69, down_count=31) at ./gdb.base/backtrace.c:164
#32 0x10000fcc in deep_sub_0068 (up_count=68, down_count=32) at ./gdb.base/backtrace.c:169
#33 0x10001028 in deep_sub_0067 (up_count=67, down_count=33) at ./gdb.base/backtrace.c:174
#34 0x10001084 in deep_sub_0066 (up_count=66, down_count=34) at ./gdb.base/backtrace.c:179
#35 0x100010e0 in deep_sub_0065 (up_count=65, down_count=35) at ./gdb.base/backtrace.c:184
#36 0x1000113c in deep_sub_0064 (up_count=64, down_count=36) at ./gdb.base/backtrace.c:189
#37 0x10001198 in deep_sub_0063 (up_count=63, down_count=37) at ./gdb.base/backtrace.c:194
#38 0x100011f4 in deep_sub_0062 (up_count=62, down_count=38) at ./gdb.base/backtrace.c:199
#39 0x10001250 in deep_sub_0061 (up_count=61, down_count=39) at ./gdb.base/backtrace.c:204
#40 0x100012ac in deep_sub_0060 (up_count=60, down_count=40) at ./gdb.base/backtrace.c:209
#41 0x10001308 in deep_sub_0059 (up_count=59, down_count=41) at ./gdb.base/backtrace.c:214
#42 0x10001364 in deep_sub_0058 (up_count=58, down_count=42) at ./gdb.base/backtrace.c:219
#43 0x100013c0 in deep_sub_0057 (up_count=57, down_count=43) at ./gdb.base/backtrace.c:224
#44 0x1000141c in deep_sub_0056 (up_count=56, down_count=44) at ./gdb.base/backtrace.c:229
#45 0x10001478 in deep_sub_0055 (up_count=55, down_count=45) at ./gdb.base/backtrace.c:234
#46 0x100014d4 in deep_sub_0054 (up_count=54, down_count=46) at ./gdb.base/backtrace.c:239
#47 0x10001530 in deep_sub_0053 (up_count=53, down_count=47) at ./gdb.base/backtrace.c:244
#48 0x1000158c in deep_sub_0052 (up_count=52, down_count=48) at ./gdb.base/backtrace.c:249
#49 0x100015e8 in deep_sub_0051 (up_count=51, down_count=49) at ./gdb.base/backtrace.c:254
#50 0x10001644 in deep_sub_0050 (up_count=50, down_count=50) at ./gdb.base/backtrace.c:259
#51 0x100016a0 in deep_sub_0049 (up_count=49, down_count=51) at ./gdb.base/backtrace.c:264
#52 0x100016fc in deep_sub_0048 (up_count=48, down_count=52) at ./gdb.base/backtrace.c:269
#53 0x10001758 in deep_sub_0047 (up_count=47, down_count=53) at ./gdb.base/backtrace.c:274
#54 0x100017b4 in deep_sub_0046 (up_count=46, down_count=54) at ./gdb.base/backtrace.c:279
#55 0x10001810 in deep_sub_0045 (up_count=45, down_count=55) at ./gdb.base/backtrace.c:284
#56 0x1000186c in deep_sub_0044 (up_count=44, down_count=56) at ./gdb.base/backtrace.c:289
#57 0x100018c8 in deep_sub_0043 (up_count=43, down_count=57) at ./gdb.base/backtrace.c:294
#58 0x10001924 in deep_sub_0042 (up_count=42, down_count=58) at ./gdb.base/backtrace.c:299
#59 0x10001980 in deep_sub_0041 (up_count=41, down_count=59) at ./gdb.base/backtrace.c:304
#60 0x100019dc in deep_sub_0040 (up_count=40, down_count=60) at ./gdb.base/backtrace.c:309
#61 0x10001a38 in deep_sub_0039 (up_count=39, down_count=61) at ./gdb.base/backtrace.c:314
#62 0x10001a94 in deep_sub_0038 (up_count=38, down_count=62) at ./gdb.base/backtrace.c:319
#63 0x10001af0 in deep_sub_0037 (up_count=37, down_count=63) at ./gdb.base/backtrace.c:324
#64 0x10001b4c in deep_sub_0036 (up_count=36, down_count=64) at ./gdb.base/backtrace.c:329
#65 0x10001ba8 in deep_sub_0035 (up_count=35, down_count=65) at ./gdb.base/backtrace.c:334
#66 0x10001c04 in deep_sub_0034 (up_count=34, down_count=66) at ./gdb.base/backtrace.c:339
#67 0x10001c60 in deep_sub_0033 (up_count=33, down_count=67) at ./gdb.base/backtrace.c:344
#68 0x10001cbc in deep_sub_0032 (up_count=32, down_count=68) at ./gdb.base/backtrace.c:349
#69 0x10001d18 in deep_sub_0031 (up_count=31, down_count=69) at ./gdb.base/backtrace.c:354
#70 0x10001d74 in deep_sub_0030 (up_count=30, down_count=70) at ./gdb.base/backtrace.c:359
#71 0x10001dd0 in deep_sub_0029 (up_count=29, down_count=71) at ./gdb.base/backtrace.c:364
#72 0x10001e2c in deep_sub_0028 (up_count=28, down_count=72) at ./gdb.base/backtrace.c:369
#73 0x10001e88 in deep_sub_0027 (up_count=27, down_count=73) at ./gdb.base/backtrace.c:374
#74 0x10001ee4 in deep_sub_0026 (up_count=26, down_count=74) at ./gdb.base/backtrace.c:379
#75 0x10001f40 in deep_sub_0025 (up_count=25, down_count=75) at ./gdb.base/backtrace.c:384
#76 0x10001f9c in deep_sub_0024 (up_count=24, down_count=76) at ./gdb.base/backtrace.c:389
#77 0x10001ff8 in deep_sub_0023 (up_count=23, down_count=77) at ./gdb.base/backtrace.c:394
#78 0x10002054 in deep_sub_0022 (up_count=22, down_count=78) at ./gdb.base/backtrace.c:399
#79 0x100020b0 in deep_sub_0021 (up_count=21, down_count=79) at ./gdb.base/backtrace.c:404
#80 0x1000210c in deep_sub_0020 (up_count=20, down_count=80) at ./gdb.base/backtrace.c:409
#81 0x10002168 in deep_sub_0019 (up_count=19, down_count=81) at ./gdb.base/backtrace.c:414
#82 0x100021c4 in deep_sub_0018 (up_count=18, down_count=82) at ./gdb.base/backtrace.c:419
#83 0x10002220 in deep_sub_0017 (up_count=17, down_count=83) at ./gdb.base/backtrace.c:424
#84 0x1000227c in deep_sub_0016 (up_count=16, down_count=84) at ./gdb.base/backtrace.c:429
#85 0x100022d8 in deep_sub_0015 (up_count=15, down_count=85) at ./gdb.base/backtrace.c:434
#86 0x10002334 in deep_sub_0014 (up_count=14, down_count=86) at ./gdb.base/backtrace.c:439
#87 0x10002390 in deep_sub_0013 (up_count=13, down_count=87) at ./gdb.base/backtrace.c:444
#88 0x100023ec in deep_sub_0012 (up_count=12, down_count=88) at ./gdb.base/backtrace.c:449
#89 0x10002448 in deep_sub_0011 (up_count=11, down_count=89) at ./gdb.base/backtrace.c:454
#90 0x100024a4 in deep_sub_0010 (up_count=10, down_count=90) at ./gdb.base/backtrace.c:459
#91 0x10002500 in deep_sub_0009 (up_count=9, down_count=91) at ./gdb.base/backtrace.c:464
#92 0x1000255c in deep_sub_0008 (up_count=8, down_count=92) at ./gdb.base/backtrace.c:469
#93 0x100025b8 in deep_sub_0007 (up_count=7, down_count=93) at ./gdb.base/backtrace.c:474
#94 0x10002614 in deep_sub_0006 (up_count=6, down_count=94) at ./gdb.base/backtrace.c:479
#95 0x10002670 in deep_sub_0005 (up_count=5, down_count=95) at ./gdb.base/backtrace.c:484
#96 0x100026cc in deep_sub_0004 (up_count=4, down_count=96) at ./gdb.base/backtrace.c:489
#97 0x10002728 in deep_sub_0003 (up_count=3, down_count=97) at ./gdb.base/backtrace.c:494
#98 0x10002784 in deep_sub_0002 (up_count=2, down_count=98) at ./gdb.base/backtrace.c:499
#99 0x100027e0 in deep_sub_0001 (up_count=1, down_count=99) at ./gdb.base/backtrace.c:504
#100 0x10002818 in main () at ./gdb.base/backtrace.c:509
(gdb) PASS: gdb.base/backtrace.exp: backtrace past main
testcase ./gdb.base/backtrace.exp completed in 1 seconds
Running ./gdb.trace/backtrace.exp ...
spawn /usr/bin/gdb -nw -nx 
GNU gdb Red Hat Linux (6.1post-1.20040607.8rh)
Copyright 2004 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 "ppc64-redhat-linux-gnu".
(gdb) set height 0
(gdb) set width 0
(gdb) Executing on host: gcc ./gdb.trace/actions.c  -w -g  -lm   -m32 -o /home/pgilliam/testsuite/gdb.trace/actions    (timeout = 300)
spawn gcc ./gdb.trace/actions.c -w -g -lm -m32 -o /home/pgilliam/testsuite/gdb.trace/actions 
file /home/pgilliam/testsuite/gdb.trace/actions
Reading symbols from /home/pgilliam/testsuite/gdb.trace/actions...done.
Using host libthread_db library "/lib64/tls/libthread_db.so.1".
(gdb) tstop
Trace can only be run on remote targets.
(gdb) tfind none
Trace can only be run on remote targets.
(gdb) delete breakpoints
(gdb) info breakpoints
No breakpoints or watchpoints.
(gdb) break main
Breakpoint 1 at 0x10000880: file ./gdb.trace/actions.c, line 125.
(gdb) run 
Starting program: /home/pgilliam/testsuite/gdb.trace/actions 

Breakpoint 1, main (argc=1, argv=0xffffe834, envp=0xffffe83c) at ./gdb.trace/actions.c:125
125	  begin ();
(gdb) dir
Reinitialize source path to empty? (y or n) y
Source directories searched: $cdir:$cwd
(gdb) dir ./gdb.trace
Source directories searched: /home/pgilliam/testsuite/./gdb.trace:$cdir:$cwd
(gdb) tstatus
Trace can only be run on remote targets.
(gdb) PASS: gdb.trace/backtrace.exp: Current target does not supporst trace
testcase ./gdb.trace/backtrace.exp completed in 0 seconds

		=== gdb Summary ===

# of expected passes		4
Executing on host: /usr/bin/gdb -nw --command gdb_cmd    (timeout = 300)
spawn /usr/bin/gdb -nw --command gdb_cmd 
GNU gdb Red Hat Linux (6.1post-1.20040607.8rh)
Copyright 2004 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 "ppc64-redhat-linux-gnu".
/usr/bin/gdb version  2004 -nx

runtest completed at Thu Sep 23 01:51:25 2004

  reply	other threads:[~2004-09-23  2:13 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-21 21:43 Paul Gilliam
2004-09-22 14:01 ` Andrew Cagney
2004-09-22 16:56   ` Paul Gilliam
2004-09-22 19:54     ` Andrew Cagney
2004-09-23  2:13       ` Paul Gilliam [this message]
2004-09-23 17:08         ` Michael Chastain
2004-09-23 17:25         ` Michael Chastain
2004-09-24 22:38         ` Test "set backtrace ..."; " Andrew Cagney
2004-09-23 17:25 ` Michael Chastain
2005-04-07 17:27 Paul Gilliam
2005-04-14 19:36 ` Daniel Jacobowitz
2005-04-15 23:38   ` Paul Gilliam
2005-04-27 15:49     ` Daniel Jacobowitz
2005-04-27 20:02       ` Paul Gilliam

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=200409221910.41605.pgilliam@us.ibm.com \
    --to=pgilliam@us.ibm.com \
    --cc=cagney@gnu.org \
    --cc=gdb-patches@sources.redhat.com \
    --cc=mec.gnu@mindspring.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