[PATCH 00/10 V2] Cache code access for disassemble

Yao Qi yao@codesourcery.com
Sun Nov 3 05:57:00 GMT 2013


Hi,
This is the V2 of this patch series.  In the discussion of V1, the
major comments are:

 1. dcache.c and target_dcache needs some cleanups and factor.
 2. commands "set dcache size" and "set dcahce line-size" needs a
    description on semantics when dcache is per-address_space.
 3. Use a single global 'target_dcache' for both stack caching and
    code caching.
 4. Replace "executable code" with "code segment" in doc and NEWS.

V2 addresses these comments as follows:

Patch #1 ~ #4 are about cleanups and factors to dcache.c and
target_dcache.  Patch #5 is a minor optimization to target_dcache.
Patch #6 and #7 change target_dcache to per-address_space mode, and
update doc on dcache-related commands.

We decide to use single 'target_dcache' for caching different types
of access, so cache invalidation caused by option "stack-cache"
changes makes troubles.  Think a little, I find we don't have to
invalidate target_dcache when option "stack-cache" is changed.  This
is what patch #8 does, and looks change in patch #8 doesn't affect
the semantics of option "set stack-cache".

Patch #9 adds command "set code-cache", similar to "set stack-cache", and
patch #10 is to use TARGET_OBJECT_CODE_MEMORY to read for disassembly.

Patch 4, 5, 7, and 9 need doc review.

Each patch is regression tested on x86_64-linux.

*** BLURB HERE ***

Yao Qi (10):
  Remove last_cache
  Don't update target_dcache if it is not initialized
  Move target-dcache out of target.c
  Don't stress 'remote' in "Data Caching" in doc
  Invalidate or shrink dcache when setting is changed.
  Add REGISTRY for struct address_space.
  Associate target_dcache to address_space.
  Don't invalidate dcache when option stack-cache is changed
  set/show code-cache
  Use target_read_code in disassemble.

 gdb/Makefile.in     |    6 +-
 gdb/NEWS            |    6 ++
 gdb/dcache.c        |   93 ++++++++++++++++++---------
 gdb/dcache.h        |    4 +
 gdb/disasm.c        |    2 +-
 gdb/doc/gdb.texinfo |   52 ++++++++++-----
 gdb/memattr.c       |    1 +
 gdb/progspace.c     |   14 ++---
 gdb/progspace.h     |   19 +++++-
 gdb/target-dcache.c |  175 +++++++++++++++++++++++++++++++++++++++++++++++++++
 gdb/target-dcache.h |   30 +++++++++
 gdb/target.c        |   94 +++++++++-------------------
 gdb/target.h        |    9 ++-
 gdb/top.c           |    1 +
 gdb/tracepoint.c    |    1 +
 15 files changed, 379 insertions(+), 128 deletions(-)
 create mode 100644 gdb/target-dcache.c
 create mode 100644 gdb/target-dcache.h

-- 
1.7.7.6



More information about the Gdb-patches mailing list