This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA] massively speed up "info var foo" on large programs
- From: dje at google dot com
- To: Sergio Durigan Junior <sergiodj at redhat dot com>
- Cc: Andreas Schwab <schwab at linux-m68k dot org>, Pedro Alves <palves at redhat dot com>, gdb-patches at sourceware dot org, ratmice at gmail dot com
- Date: Wed, 1 Aug 2012 12:29:52 -0700
- Subject: Re: [RFA] massively speed up "info var foo" on large programs
- References: <20120524175852.D38381E139C@ruffy2.mtv.corp.google.com> <CADPb22T1K5sHhddJtCg0iURbyL7oQngFBVJ23gAsfz58qWQ0Ww@mail.gmail.com> <CADPb22ROtFjAWBrCRVu-8QqHKBjqmR+FSRAonHQMAFPU=m02pA@mail.gmail.com> <4FBF47DD.4030100@redhat.com> <CADPb22Tnz7rK7VpwKW-cwMJm+tMwThoe5h=r=AH_sX=CwQat6g@mail.gmail.com> <4FC91A33.5040900@redhat.com> <CADPb22Tp5auHhj+-=qHW9XDEJfh-N1HjSBGYYYKVXutT-S0Zpw@mail.gmail.com> <4FCCCE27.2060804@redhat.com> <CADPb22Ts13qv-7Y=UckapJmECyheYAoXNTfFes7ZvqsALbcyhw@mail.gmail.com> <m2d33sjein.fsf@igel.home> <20502.50281.392575.922986@ruffy2.mtv.corp.google.com> <m37gtko0tm.fsf@redhat.com> <m3ehnrmbqd.fsf@redhat.com>
Sergio Durigan Junior writes:
> On Tuesday, July 31 2012, I wrote:
>
> > I have just tested your patch on ppc64 and it works OK; I don't have a
> > s390x machine right now but I'll check tomorrow when I wake up.
>
> FWIW the patch also works OK on s390x RHEL 6.3.
>
> --
> Sergio
Thanks.
How about this?
I will check it into cvs head and 7.5 in a few days if there are no objections.
2012-08-01 Doug Evans <dje@google.com>
* gdb.base/info-fun.exp: Fix failures on m68k, ppc64, s390x.
Index: info-fun.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/info-fun.exp,v
retrieving revision 1.2
diff -u -p -r1.2 info-fun.exp
--- info-fun.exp 21 Jun 2012 20:46:22 -0000 1.2
+++ info-fun.exp 1 Aug 2012 18:34:44 -0000
@@ -67,9 +67,17 @@ foreach libsepdebug {NO IN SEP} { with_t
append match_str {int foo\(void\);[\r\n]*}
}
append match_str {Non-debugging symbols:[\r\n]*}
+ # Note: Targets like {m68k,ppc64,s390x}-linux also have, e.g.,
+ # 00000011.plt_call.foo+0 (m68k).
+ set plt_foo_match "($hex \[^\r\n\]*plt\[^\r\n\]*foo\[^\r\n\]*\[\r\n\]*)?"
+ append match_str $plt_foo_match
+ # This text we want to match precisely.
append match_str "$hex *foo(@plt)?\[\r\n\]*"
+ # Watch for again to not have to worry about the order of appearance.
+ append match_str $plt_foo_match
if { "$libsepdebug" == "NO" } {
- append match_str "$hex *foo\[\r\n\]*"
+ # Note: The ".?" is for targets like m68k-linux that have ".foo" here.
+ append match_str "$hex *.?foo\[\r\n\]*"
}
gdb_test "info fun foo" "$match_str"