[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| 
RE: [cdt-dev] Re: [dsdp-dd-dev] Disassembly proposals
 | 
Hi John,
 
Please, see my answers inline.
Mikhail,
I apologize for the delayed feedback. The proposal looks 
like a great foundation. I would like to throw a bunch of ideas on the table and 
volunteer to collaborate with you on this feature in order to make these 
additional requirements a reality (where technically feasible, of 
course).
1. If would be nice if disassembly based on a frame context 
would not limit itself to just code associated with that frame. Of course, the 
PC would be the starting point and focus of the initial disassembly, but we'd 
like to let the user scroll up and down the memory space as much as he wants. 
It's up to the client to do it's best to find valid boundary lines for 
disassembly. I'm not familiar enough with editors to know if this is possible or 
not.
 
MK: Viewer reacts to user actions (scrolling, resizing, etc) and 
sends requests to the backend. It's up to the backend to provide 
content. Our 
implementation supports infinite scrolling and I am planning to support it 
for the CDI based backends.
2. We would like the user to be able to easily switch via (e.g., a 
toolbar) how the content in the disassembly viewer is presented
   
- pure disassembly
   - interleaved 
source+disassembly
   - pure source
 
When showing pure source (and even 
interleaved), the editor part is not showing the contents of a file per se, but 
parts of files. For example, at address 0x1000 there might be code from foo.cpp, 
at 0x1200 there might be code from bar.cpp. The disassembly view would show the 
source statements for both, with some marker at the boundary points which 
indicate the source file context for the lines that follow.
This 
multi-mode presentation capability would be available in both the "editor" part 
and the memory rendering.
 
MK: The content provided by the backend can be pure disassembly, 
mixed source and disassembly or anything else. The content request 
includes an object that passes presentation options to the 
backend.
I 
don't think it's a problem to implement your requirements for the CDI based 
backends, assuming the backends provide the corresponding 
functionality.
3. Clients should be able to contribute custom markers. For example, in 
addition to setting standard breakpoints, the user should be able to set product 
specific trace points.
 
MK: Clients contribute annotations via annotation 
providers. At the moment our implementation sets the standard CDT 
breakpoints and instruction pointers. The problem I see for the CDI based backends is that the only one 
adapter can be registered.
Let me know what you think of these ideas and if you 
would be willing to co-develop this feature.
John
At 
08:17 AM 12/13/2007, Mikhail Khodjaiants wrote:
Content-Class: 
  urn:content-classes:message
Content-Type: 
  multipart/alternative;
         
  boundary="----_=_NextPart_001_01C83D92.D5867888"
Hi,
 
I have updated the wiki page ( 
  http://wiki.eclipse.org/DSDP/DD/DisassemblyView) and added the proposals 
  for the disassembly window management which is the simple part of the task. 
  Please, feel free to add your comments.
Currently I am working on the 
  document that describes the viewer proposals and trying to prototype it at the 
  same time (or vice versa I should say). I'll try to post it as soon as 
  possible.
 
Regards,
Mikhail 
  Khodjaiants
ARM Limited
-- 
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.
_______________________________________________
dsdp-dd-dev 
  mailing list
dsdp-dd-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-dd-dev
-- 
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.