Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "CDT/summitfall2008/Debug Session"

m (CDI / DSF feature list)
 
(5 intermediate revisions by one other user not shown)
Line 1: Line 1:
 +
 +
{{warning|Note: The contents of this page refer to a past CDT summit. For information on other and possible upcoming summits visit [[CDT/summits]]}}
 +
 +
[[Category:CDT:Summits]]
 +
 
== CDI / DSF feature list ==
 
== CDI / DSF feature list ==
  
Line 5: Line 10:
 
**** Support for use-selectable MI protocol versions
 
**** Support for use-selectable MI protocol versions
 
**** Supports suspending on shared library events
 
**** Supports suspending on shared library events
***** In DSF, this feature should be supported using event breakpoints (bug 248587).
+
***** In DSF, this feature should be supported using event breakpoints ''bug 248587''.
 
*** DSF
 
*** DSF
 
**** Detects GDB version at launch time, but has support for only v6.6+
 
**** Detects GDB version at launch time, but has support for only v6.6+
 
** Local
 
** Local
 
*** CDI
 
*** CDI
**** Supports setting environment variables
+
**** Supports setting environment variables (DSF: ''bug 248591'')
***** DSF: (bug 248591)
+
 
** Attach
 
** Attach
 
** Remote
 
** Remote
Line 18: Line 22:
 
** JTAG
 
** JTAG
 
*** CDI
 
*** CDI
**** Custom UI for configuring gdbserver for JTAG debugging.
+
**** Custom UI for configuring gdbserver for JTAG debugging. (DSF ''bug 248593'')
***** DSF (bug 248593).
+
** Post Mortem  
** Post Mortem
+
*** CDI
*** DSF: (bug 202346).
+
**** Feature supported (DSF: ''bug 202346'').
 
* Breakpoints
 
* Breakpoints
 
*** CDI
 
*** CDI
**** Emulates pending breakpoints (loading breakpoints on shared library events).
+
**** Emulates pending breakpoints (loading breakpoints on shared library events). (DSF: ''bug 248595'')
*** DSF
+
****
+
**** '''Missing shared library support'''
+
 
** Breakpoint Actions
 
** Breakpoint Actions
 
*** CDI
 
*** CDI
 
**** Has more actions which use CDI model objects.  
 
**** Has more actions which use CDI model objects.  
 
*** DSF
 
*** DSF
**** Does support actions, not sure how well tested it is.
+
**** Does support actions.
 +
**** Remaining issues in ''bug 228703''
 
** Menu Actions
 
** Menu Actions
 
*** CDI
 
*** CDI
**** '''Toggle support in Variables views.'''
+
**** '''Toggle support in Variables views.''' (DSF: ''bug 248606'')
 
** Types
 
** Types
 
*** CDI
 
*** CDI
**** Event breakpoints are supported.
+
**** Event breakpoints are supported. (DSF: ''bug 248587'')
 
* Debug view
 
* Debug view
 
*** CDI
 
*** CDI
**** Show full path (for stack frame file names)
+
**** Show full path (for stack frame file names) (DSF: ''bug 248627'')
 
*** DSF
 
*** DSF
 
**** Retrieving limited # of frames
 
**** Retrieving limited # of frames
 
** Run control
 
** Run control
 
*** CDI
 
*** CDI
**** Set PC to here
+
**** Set PC to here (DSF: ''bug 249162'').
**** Run to line
+
**** Run to line (DSF: ''bug 233230'')
**** Resume at line
+
**** Resume at line (DSF: ''bug 248165'').
 
*** DSF
 
*** DSF
 
**** Stepping speed throttling
 
**** Stepping speed throttling
Line 60: Line 62:
 
* All variables views
 
* All variables views
 
*** CDI
 
*** CDI
**** Display as array.
+
**** Cast to type. (DFE: ''bug 219203'')
**** Cast to type.
+
**** Display as array. (DFE: ''also bug 219203'')
**** '''Show in memory.'''
+
**** '''Show in memory.''' (DSF: ''bug 248610'')
**** Number format for individual items.
+
**** Number format for individual items. (DSF: ''bug 202556'').
**** Detail pane uses a different expression evaluation.
+
**** Detail pane uses a different expression evaluation. (DSF: ''bug 249169'')
 
*** DSF
 
*** DSF
 
**** Set number format for the whole view.
 
**** Set number format for the whole view.
Line 71: Line 73:
 
** Groups
 
** Groups
 
*** CDI
 
*** CDI
**** User defined groups.
+
**** User defined groups. (DFE: ''bug 235747'')
* Variables
+
* Variables  
 
*** CDI
 
*** CDI
**** Add selected global variables.
+
**** Add selected global variables. (DFE: ''bug 219040'')
 
* Expressions
 
* Expressions
 
*** DSF
 
*** DSF
Line 84: Line 86:
 
* Modules
 
* Modules
 
*** CDI
 
*** CDI
**** Browsing symbols parsed by the IDE.
+
**** Browsing symbols parsed by the IDE. (DFE: ''bug 159958'')
 
* Signals
 
* Signals
 
*** CDI
 
*** CDI
**** Resume without signal
+
**** Resume without signal (DFE: ''bug 249223'')
**** Signal view
+
**** Signal view (DFE: ''bug 249220'')
 
* Disassembly
 
* Disassembly
 
*** DSF
 
*** DSF
Line 94: Line 96:
 
* Console
 
* Console
 
*** CDI
 
*** CDI
**** Verbose mode to show all GDB protocol traffic.
+
**** Verbose mode to show all GDB protocol traffic. (DFE: ''bug 249227'').
 
**** Save console content.
 
**** Save console content.
 
* Source Lookup
 
* Source Lookup
 
*** CDI
 
*** CDI
**** Has enhanced source not found editor.
+
**** Has enhanced source not found editor. (DFE: ''bug 159955'').
 
* View update modes
 
* View update modes
 
*** CDI
 
*** CDI

Latest revision as of 16:12, 17 January 2020

Warning2.png
Note: The contents of this page refer to a past CDT summit. For information on other and possible upcoming summits visit CDT/summits

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+
    • Local
      • CDI
        • Supports setting environment variables (DSF: bug 248591)
    • Attach
    • Remote
      • DSF
        • Has explicit launch configuration for remote launch, which is less confusing to users
    • JTAG
      • CDI
        • Custom UI for configuring gdbserver for JTAG debugging. (DSF bug 248593)
    • Post Mortem
      • CDI
        • Feature supported (DSF: bug 202346).
  • Breakpoints
      • CDI
        • Emulates pending breakpoints (loading breakpoints on shared library events). (DSF: bug 248595)
    • Breakpoint Actions
      • CDI
        • Has more actions which use CDI model objects.
      • DSF
        • Does support actions.
        • Remaining issues in bug 228703
    • Menu Actions
      • CDI
        • Toggle support in Variables views. (DSF: bug 248606)
    • Types
      • CDI
        • Event breakpoints are supported. (DSF: bug 248587)
  • Debug view
      • CDI
        • Show full path (for stack frame file names) (DSF: bug 248627)
      • DSF
        • Retrieving limited # of frames
    • 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
    • Non-stop Multi-threading
      • DSF
        • Supported with GDB 7+
    • Multi-process
      • DSF
        • Supported with GDB 7+
        • Attach to multiple processes after launch
  • 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.
  • Registers
    • Groups
      • CDI
        • User defined groups. (DFE: bug 235747)
  • Variables
      • CDI
        • Add selected global variables. (DFE: bug 219040)
  • Expressions
      • DSF
        • Same variable/register support as in their native views
          • inline editing
          • columns
          • etc.
        • Inline editing of expressions
  • Modules
      • CDI
        • Browsing symbols parsed by the IDE. (DFE: bug 159958)
  • Signals
      • CDI
        • Resume without signal (DFE: bug 249223)
        • Signal view (DFE: bug 249220)
  • Disassembly
      • DSF
        • Toni's disassembly view.
  • Console
      • CDI
        • Verbose mode to show all GDB protocol traffic. (DFE: bug 249227).
        • Save console content.
  • Source Lookup
      • CDI
        • Has enhanced source not found editor. (DFE: bug 159955).
  • 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/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

Bug triaging

Componentization

Variable view improvments (STL handling)

Multi context

Back to the top