[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [dsdp-dd-dev] Re: [cdt-dev] Disassembly issues
|
Title: Re: [dsdp-dd-dev] Re: [cdt-dev] Disassembly issues
Thanks Ken. That would be very
helpful.
Mikhail,
I’ve found little to suggest that John
hasn’t already mentioned but I’m looking forward to trying this out. And we’ll
get it in front of some of our developers and do some usability testing as soon
as it is feasible.
Thanks - Ken
From: ext John Cortell <john.cortell@xxxxxxxxxxxxx>
Reply-To:
Device Debugging developer discussions
<dsdp-dd-dev@xxxxxxxxxxx>
Date: Wed, 23 Apr 2008 09:09:11
-0500
To: "CDT General developers list." <cdt-dev@xxxxxxxxxxx>,
<cdt-dev@xxxxxxxxxxx>, <dsdp-dd-dev@xxxxxxxxxxx>
Subject:
[dsdp-dd-dev] Re: [cdt-dev] Disassembly issues
At 06:17 AM 4/22/2008,
Mikhail Khodjaiants wrote:
Content-Class:
urn:content-classes:message
Content-Type:
multipart/alternative;
boundary="----_=_NextPart_001_01C8A46A.753B0AE3"
Hi
all,
To move forward with the new disassembly implementation I
need your feedback on the following proposals and issues.
1.
Management of disassembly/source editors and source lookup
The
only way to open a disassembly editor window is to use the "Open Disassembly"
action from the Debug view's context menu or from the "Source Not Found"
editor.
Once the disassembly editor is opened for a disassembly
context it becomes the default editor for all elements that expose the same
debug context.
There are two options on how to manage the source editors
in this case:
a. always try to open the source editor in background if the
source file is available
b. do not try to open the source editor. In this
case to open it user has to close the disassembly editor and double click on
the corresponding stack frame.
In both cases we need to maintain the IP
position in the source editor if it is open, which means that we can not use
the default ISourceDisplay adapter provided by the platform
:(
Mikhail, I'd like to suggest a third option.
Introduce a context menu action in the new Disassembly editor labeled "Show
source" (or something to that effect). The action would close the Disassembly
editor and open the Source one. If that's not possible, I would go with (b), but
honestly, I'm not crazy about either
alternative.
2. Stepping mode selection
Currently
there is a toggle action "Instruction Mode" to switch between the source and
instruction modes. There have been requests to make the instruction mode
default when the disassembly view has focus (doesn't seem to work
anymore).
I would propose to replace the "Instruction Mode" action by the
dropdown menu with the following choices:
a. "Context" - use the
instruction mode if the disassembly window is open, otherwise use the source
mode
b. "Source" - always use the source mode.
c. "Instruction" - always
use the instruction mode
This sounds good to
me.
3. Preference pages
As the content of
the disassembly viewer is provided by models the creation of preference pages
becomes a problem. It seems that we need one global page for the preferences
shared by all models and a special preference page for each model. It could be
confusing for the end
users.
I don't think this will be too
confusing.
4. CDI support
Currently, the CDI
interfaces for disassembly are duplicates of the disassembly related gdb/mi
commands. This is not sufficient to implement the efficient "infinite"
scrolling which is a big challenge for assemblers with variable instruction
size.
Does it make sense to add an API extensions for the cases when some
additional information (like previous/next valid instruction address) is
available from the
backend?
It makes sense to me. If we come up with even more
advanced disassembly features that not all backends can support, we'll just keep
adding new interfaces, and that will allow us to discover and exercise those
capabilities on the advanced
backends.
John
--
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.