From: Andrew Cagney <cagney@gnu.org>
To: Alain Magloire <alain@qnx.com>
Cc: Alexiev Dobrin <dalexiev@ti.com>, gdb@sources.redhat.com
Subject: Re: Registry Group
Date: Tue, 04 Jan 2005 20:20:00 -0000 [thread overview]
Message-ID: <41DAFA6C.90104@gnu.org> (raw)
In-Reply-To: <200412201627.LAA00079@smtp.ott.qnx.com>
Alain Magloire wrote:
>>Alexiev, Dobrin wrote:
>>
>>>I am working with the Eclipse C Development Tools community to add a
>>>feature that will group registers in the Register View of Eclipse.
>>>
>>>Since embedded CPUs have lots of peripheral registers (50-100+) it is
>>>getting a burden for the developer to keep scrolling the registry view
>>>to find the right register. A grouping will make the user experience way
>>>better.
>>>
>>>Since the IDE is relying on the GDB for most of the device information I
>>>was wandering if there is a similar MI/GDB command to obtain the name of
>>>the groups and their registers association.
>>>
>>>In our product we added such command "-data-list-register-groups". The
>>>syntax of the command is:
>>>-data-list-register-groups
>>>^done,register-groups=[{name="r0",group="GRP1"},{name="r8",group="GRP2"}
>>>]
>>
>>Sure! have you looked at the output from:
>> (gdb) maint print register-groups
>>as it should make a good starting point.
>>
>>I suspect that the output should be more like:
>> ...{name="r0",groups=["grp1","grp2",...]},...
>>(the MI syntax police will quickly point out the exact syntax :-).
>>
>
>
> I think Alexiev is off to see Santa 'til January .. but
Sounds familiar, ran into Santa surfing at bondi.
> this is a not from a patch he dropped to the CDT mailing list
> it should give you a rough idea of his way of thinking.
> The part about a default "Main" group is probably CDT specific
> and there for backward compatibility.
Right (more recent gdb's use heuristics to guess which register goes where)
> /**
> * Custom command for requesting the register groups.
> * It is not yet in the GDB stream.
> *
> * -data-list-register-groups
> *
> * The format of the command is:
> * IN:(gdb)-data-list-register-groups
> * OUT:^done,register-groups= [{name="r0", group="GRP1"},{name="r8",group="GRP2"}]
the first key difference is that a register can be in multiple groups.
You can see this in the `maint print register-groups' command. The
other potential wart is that groups are either "user" or "internal" (for
instance save/restore groups are normally for internal use) - you might
want to both query for the list of groups and the register/group mapping.
For code, what about refactoring reggroups.c's *_dump methods so that
they use ui-out.
Andrew
> * It is similar of the command: "-data-list-register-values".
> *
> * The register group names are case sensitive.
> * * The register groups appear in the Register View in order they are returns from
> * the command "-data-list-register-groups".
> *
> * The registers appear in the groups in the order they are returned from the
> * command "-data-list-register-names".
> * The register names are case sensitive.
> *
> * If the debugger doesn<92>t support the command "-data-list-register-groups" all
> * registers are added to the "Main" group.
> * If there is a register returned by the command "-data-list-register-names" but not
> * in the command "-data-list-register-groups" it is added to the "Main" group.
> * The main group itself is added first to the Register view.
> * If there is a register returned by the command "-data-list-register-groups" but not in
> * the command "-data-list-register-names" the register is ignored.
> */
>
next parent reply other threads:[~2005-01-04 20:20 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200412201627.LAA00079@smtp.ott.qnx.com>
2005-01-04 20:20 ` Andrew Cagney [this message]
2004-12-16 16:44 Alexiev, Dobrin
2004-12-18 1:03 ` Andrew Cagney
2004-12-20 16:27 ` Alain Magloire
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=41DAFA6C.90104@gnu.org \
--to=cagney@gnu.org \
--cc=alain@qnx.com \
--cc=dalexiev@ti.com \
--cc=gdb@sources.redhat.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