[PATCH 0/3 V3] Cache code access for disassemble

Yao Qi yao@codesourcery.com
Thu Nov 21 01:34:00 GMT 2013


Hi,
This is the V3 of this patch series.  Most of the patches were
committed because they are cleanups, and V3 only has three patches.

Patch 1/3 is to rename some functions and variables related to
"stack-cache", to address review comments in V2 that we find they are
improper.  Patch 2/3 is to add commands "set/show code-cache", and we
choose a way that "both stack cache and code cache use the single global
dcache, and transitions of either options will invalidate the dcache".
Patch 3/3 is unchanged.

The performance improvement is measured by gdb.perf/disassemble.exp,
posted https://sourceware.org/ml/gdb-patches/2013-11/msg00574.html
(note that gdb.perf/disassemble.py is modified to flush code cache after
each run)

			      Original Patched
disassemble cpu_time	0	0.49	0.16
disassemble cpu_time	1	0.93	0.21
disassemble cpu_time	2	1.35	0.33
disassemble wall_time	0	0.722337007523	0.167083024979
disassemble wall_time	1	1.37996888161	0.215560913086
disassemble wall_time	2	2.07086896896	0.323045969009
disassemble vmsize	0	151000	150880
disassemble vmsize	1	151692	151740
disassemble vmsize	2	151692	151740

Regression tested x86_64-linux.

*** BLURB HERE ***

Yao Qi (3):
  Renaming in target-dcache.c
  set/show code-cache
  Use target_read_code in disassemble.

 gdb/NEWS            |    6 ++++
 gdb/disasm.c        |    2 +-
 gdb/doc/gdb.texinfo |   16 +++++++++-
 gdb/target-dcache.c |   81 +++++++++++++++++++++++++++++++++++++++++---------
 gdb/target-dcache.h |    4 ++-
 gdb/target.c        |   23 ++++++++++++--
 gdb/target.h        |    5 +++
 7 files changed, 115 insertions(+), 22 deletions(-)

-- 
1.7.7.6



More information about the Gdb-patches mailing list