Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
CDT/summitfall2008/Debug Session
< CDT | summitfall2008
Contents
- 1 CDI / DSF feature list
- 2 CDI/DSF coexistence
- 3 Memory rendering
- 4 Breakpoint actions -> platform
- 5 Disassembly
- 6 TCF
- 7 Launch
- 8 Reverse debugging
- 9 Tracepoints
- 10 Clean up CDI debugger types
- 11 Supported GDB versions
- 12 Bug triaging
- 13 Componentization
- 14 Variable view improvments (STL handling)
- 15 Multi context
CDI / DSF feature list
- Launching
- CDI
- Support for use-selectable MI protocol versions
- Supports suspending on shared library events
- DSF
- Detects GDB version at launch time, but has support for only v6.6+
- CDI
- Local
- CDI
- Supports setting environment variables
- CDI
- Attach
- Remote
- DSF
- Has explicit launch configuration for remote launch, which is less confusing to users
- DSF
- JTAG
- CDI
- Custom UI for configuring gdbserver for JTAG debugging.
- CDI
- Post Mortem
- DSF
- <Missing>
- DSF
- Breakpoints
- CDI
- Emulates pending breakpoints (loading breakpoints on shared library events).
- DSF
- Missing shared library support
- CDI
- Breakpoint Actions
- CDI
- Has more actions which use CDI model objects.
- DSF
- Does support actions, not sure how well tested it is.
- CDI
- Menu Actions
- CDI
- Toggle support in Variables views.
- CDI
- Types
- CDI
- Event breakpoints are supported.
- CDI
- Debug view
- CDI
- Show full path (for stack frame file names)
- DSF
- Retrieving limited # of frames
- CDI
- Run control
- CDI
- Set PC to here
- Run to line
- Resume at line
- DSF
- Stepping speed throttling
- CDI
- Non-stop Multi-threading
- DSF
- Supported with GDB 7+
- DSF
- Multi-process
- DSF
- Supported with GDB 7+
- Attach to multiple processes after launch
- DSF
- All variables views
- CDI
- Display as array.
- Cast to type.
- Show in memory.
- Number format for individual items.
- Detail pane uses a different expression evaluation.
- DSF
- Set number format for the whole view.
- Has a show all number formats detail pane.
- CDI
- Registers
- Groups
- CDI
- User defined groups.
- CDI
- Groups
- Variables
- CDI
- Add selected global variables.
- CDI
- Expressions
- DSF
- Same variable/register support as in their native views
- inline editing
- columns
- etc.
- Inline editing of expressions
- Same variable/register support as in their native views
- DSF
- Modules
- CDI
- Browsing symbols parsed by the IDE.
- CDI
- Signals
- CDI
- Resume without signal
- Signal view
- CDI
- Disassembly
- DSF
- Toni's disassembly view.
- DSF
- Console
- CDI
- Verbose mode to show all GDB protocol traffic.
- Save console content.
- CDI
- Source Lookup
- CDI
- Has enhanced source not found editor.
- CDI
- View update modes
- CDI
- Allows disabling retrieving register or variable updates entirely at launch time
- Allows user to enable/disable updates of individual registers/register groups/variables through a context menu item
- DSF
- User-selected update modes for individual views.
- Manual refresh button.
- Debug view: manual refresh mode for list of threads.
- Force non-lazy mode updating.
- CDI
CDI/DSF coexistence
- Convert common actions to the command framework.
- Have common commands, but use different handlers for the different models where appropriate.
- Hide actions based on active debug context where appropriate.
Memory rendering
- Ted will try to contribute the traditional rendering to platform.
- There are possible issues with the rendering being extendible.
- If the contribution is not acceptable for platform we can contribute it to CDT.
Breakpoint actions -> platform
Disassembly
- If instruction stepping mode is on, disassembly should be shown by default.
- If disassembly view is opened, instruction stepping mode should turn on by default.
- If the disassembly is opened because file didn't have source for a function, when debugger steps out of that function the editor should be shown again.
TCF
- Bring it in:
- Need to investigate if there are any build issues?
- Nokia and possibly Freescale would contribute development to it.
- Wind River can support DSF-TCF development just like DSF-GDB.
Launch
- Support multiple debugger types (DSF, CDI, TCF, etc) through different launch delegates registered for the same launch configuration type.
- Three basic launch types:
- New Process
- Attach to Process
- Post mortem
- Rename "C/C++ Local Application" -> "C/C++ Application"
- Launch Wizard