Community
Participate
Working Groups
[Description] Register View doesn't refresh when switching between different stack frames [Software] CDT6.0.2, debugging with DSF launchers [Details] in CLI mode, we switch to a stack frame and the registers content gets changed. in CDT-DSF, Register View is not stack frame specific, it only updates on selecting different threads. It's the same with CDT 7.0 [Code] We've found some hints from the comments from: org.eclipse.cdt.dsf.debug.ui.viewmodel.register.RegisterVMProvider Line 168, update() [Proposal] N/A
The original discussion can be reached at: http://dev.eclipse.org/mhonarc/lists/cdt-dev/msg20203.html
My impression is that this bug should be for DSF. I think registers should be stack-frame specific, but I need some background on the current DSF design of this to be sure. Until then, for DSF-GDB, I think Mikhail's effort to move registers to variable object may indirectly fix this problem. See bug 317892.
(In reply to comment #2) > My impression is that this bug should be for DSF. I think registers should be > stack-frame specific, but I need some background on the current DSF design of > this to be sure. > This feature has been supported by CDI since CDT 3.0 but was broken by a platform bug in Eclipse 3.4. I fixed it for CDT 7.0. > Until then, for DSF-GDB, I think Mikhail's effort to move registers to variable > object may indirectly fix this problem. See bug 317892. Unfortunately, my patch doesn't address this issue. To implement it var-objects for registers should be treated like var-objects for expressions. Currently, the var-objects for registers are evaluated in the context of GDB, not the context of Eclipse.
(In reply to comment #3) > (In reply to comment #2) > > My impression is that this bug should be for DSF. I think registers should be > > stack-frame specific, but I need some background on the current DSF design of > > this to be sure. > > > > This feature has been supported by CDI since CDT 3.0 but was broken by a > platform bug in Eclipse 3.4. I fixed it for CDT 7.0. Bug 308055. > > Until then, for DSF-GDB, I think Mikhail's effort to move registers to variable > > object may indirectly fix this problem. See bug 317892. > > Unfortunately, my patch doesn't address this issue. To implement it var-objects > for registers should be treated like var-objects for expressions. Currently, > the var-objects for registers are evaluated in the context of GDB, not the > context of Eclipse. Ah yes, I see that now. Once your final solution is posted and committed, maybe it won't be too bad to adapt it for this feature. I'm hesitant to suggest changes to the current MIRegisters service et al. if we are going to stop using it soon :-)
A proposed solution is now available in Gerrit: https://git.eclipse.org/r/#/c/16566/ Note: this solution may need to be lifted to a different structure once bug 317892 is decided.
Committed to master from Gerrit. Thanks Alvaro!
(In reply to Marc Khouzam from comment #6) > Committed to master from Gerrit. > > Thanks Alvaro! Thank you for the good review !