public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: Andrew Cagney <ac131313@cygnus.com>
To: Steven Johnson <sbjohnson@ozemail.com.au>
Cc: gdb@sources.redhat.com
Subject: Re: Register Cache.
Date: Mon, 26 Mar 2001 06:46:00 -0000	[thread overview]
Message-ID: <3ABF562F.2144AF18@cygnus.com> (raw)
In-Reply-To: <39AC598A.DFAF67E9@ozemail.com.au>

Just FYI,

I'm letting this e-mail slip off my desk and onto the floor.  Someone
will eventually re-visit the idea (since it is very real).?

	Andrew


To : gdb at sources dot redhat dot com
Subject : Register Cache.
From : Steven Johnson <sbjohnson at ozemail dot com dot au>
Date : Wed, 30 Aug 2000 10:47:06 +1000
References : <8AE4B526B977D411841F00A0CC334020052C28@cuz-exchange.sdesigns.net>

GDB caches it's register reads. ie, it will only read a register once, and
will only write a register if it thinks the value has changed.

For Example:

set $myreg=0x12345678     <-- Results in GDB Actually changing the register.
set $myreg=0x12345678     <-- Filtered by GDB and doesnt set register.

Now this seems fine on the surface, but there are many registers that
the act of writing is sometimes more important than the data (like say a
watchdog reset register). You may need to write the same value multiple times.

I Can find no way of forcing GDB to not cache its register accesses (dcache
also has this problem, but it also has a solution) does anyone know of a way to
force GDB to either always update registers and read registers and not cache
them, or of a way to force GDB to set it's status of these registers as unknown
(and hence making it update from the register).

Ive spent all day hunting through the code ("Using the source" as some would
say) but i'm damned if I can find anything. So I am attempting to introduce my
own solution. But obviously I may have missed something. 

Steven Johnson

  parent reply	other threads:[~2001-03-26  6:46 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-08-24 17:01 Wrong PC after external interrupt Fabrice Gautier
2000-08-29 18:01 ` Register Cache Steven Johnson
2000-08-30 21:40   ` Steven Johnson
2001-03-26  6:46   ` Andrew Cagney [this message]
2001-03-26  7:22     ` Fernando Nasser
     [not found]       ` <3ABFD062.17EDADAF@neurizon.net>
2001-03-29 16:27         ` Andrew Cagney
2001-03-29 16:27         ` Fernando Nasser
2000-08-31  5:50 Peter Reilley
2001-02-10 14:37 Register cache Mark Kettenis
2001-02-11 12:07 ` Nick Duffek
2001-02-11 23:26   ` Eli Zaretskii
2001-02-12  9:46     ` Nick Duffek
2001-02-12 10:37       ` Eli Zaretskii
2001-02-16 15:21         ` Mark Kettenis
2001-02-17  0:28           ` Eli Zaretskii
2001-02-17  3:19             ` Mark Kettenis
2001-02-13 13:38 ` Andrew Cagney

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=3ABF562F.2144AF18@cygnus.com \
    --to=ac131313@cygnus.com \
    --cc=gdb@sources.redhat.com \
    --cc=sbjohnson@ozemail.com.au \
    /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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).