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
- In DSF, this feature should be supported using event breakpoints bug 248587.
- DSF
- Detects GDB version at launch time, but has support for only v6.6+
- CDI
- Local
- CDI
- Supports setting environment variables (DSF: bug 248591)
- 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. (DSF bug 248593)
- CDI
- Post Mortem
- CDI
- Feature supported (DSF: bug 202346).
- CDI
- Breakpoints
- CDI
- Emulates pending breakpoints (loading breakpoints on shared library events). (DSF: bug 248595)
- CDI
- Breakpoint Actions
- CDI
- Has more actions which use CDI model objects.
- DSF
- Does support actions.
- Remaining issues in bug 228703
- CDI
- Menu Actions
- CDI
- Toggle support in Variables views. (DSF: bug 248606)
- CDI
- Types
- CDI
- Event breakpoints are supported. (DSF: bug 248587)
- CDI
- Debug view
- CDI
- Show full path (for stack frame file names) (DSF: bug 248627)
- DSF
- Retrieving limited # of frames
- CDI
- Run control
- CDI
- Set PC to here (DSF: bug 249162).
- Run to line (DSF: bug 233230)
- Resume at line (DSF: bug 248165).
- 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
- Cast to type. (DFE: bug 219203)
- Display as array. (DFE: also bug 219203)
- Show in memory. (DSF: bug 248610)
- Number format for individual items. (DSF: bug 202556).
- Detail pane uses a different expression evaluation. (DSF: bug 249169)
- DSF
- Set number format for the whole view.
- Has a show all number formats detail pane.
- CDI
- Registers
- Groups
- CDI
- User defined groups. (DFE: bug 235747)
- CDI
- Groups
- Variables
- CDI
- Add selected global variables. (DFE: bug 219040)
- 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. (DFE: bug 159958)
- CDI
- Signals
- CDI
- Resume without signal (DFE: bug 249223)
- Signal view (DFE: bug 249220)
- CDI
- Disassembly
- DSF
- Toni's disassembly view.
- DSF
- Console
- CDI
- Verbose mode to show all GDB protocol traffic. (DFE: bug 249227).
- Save console content.
- CDI
- Source Lookup
- CDI
- Has enhanced source not found editor. (DFE: bug 159955).
- 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
- Nokia to create a patch for platform
- Need to fix minor known bugs
- Need to evaluate API footprint, consider using command framework to avoid adding a new extension point for actions.
- Need a reference implementation for JDT or PDA example
- Pawel will review the contribution
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
Reverse debugging
Tracepoints
Clean up CDI debugger types
Supported GDB versions
- DSF
- Supports v6.7+
- Supports Linux and mingw
- CDI
- "works" with v5.2.1
- QNX has the only active committer and will triage bugs
- Mikhail will review bug fixes to help avoid breaking old versions