[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[dsdp-dd-dev] debugger multiplexed input/output
|
Attached is a trace of what we discussed before.
Here are the explanation:
1/ User set a breakpoint thru the source view
Eclipse emit 3 commands, one per processor.
Only the ARM processor answer that he has set this breakpoint
2/ The ARM is stopped, user clic on the continue button having selected
the ARM processor from the debug view
Eclipse send "ARM-22-exec-continue"
3 /
An event occures to the ARM, the debugger uses the GDB/MI notification
mechanism and emit the following:
ARM-=bind-to-host,client="2",require="output"
This event is treated and dispatched to the graphicla plugin that knows
what it means
Then the debugger stops with the following MI output:
"ARM-22*stopped,reason="breakpoint-hit .... etc"
We are going to file bugs for enhancements that are generic enough to
have chanced to be integrated into the CVS database.
They mainly concerns fields that are considered to be global in actual
DSF plugins, but that can be "per processor", like the
fIsTargetAvailable and fResetCounter fields of
org.eclipse.dd.dsf.debug.CommandCache class for instance, or the
fCurrentStackLevel in AbstractMIControl class
There is also a fews bugs that will be contributed like the one that
displays the debugger OOBR's (Out Of Band Records) several time into the
console.
Regards
Denis
ARM-(ARM)
=> SAA-19-break-insert C:\soft\STM\ST_Nomadik_Toolset_1_0_0_RC2\nmf\examples\helloworld\share\host\src\example.c:176
=> SVA-20-break-insert C:\soft\STM\ST_Nomadik_Toolset_1_0_0_RC2\nmf\examples\helloworld\share\host\src\example.c:176
=> ARM-21-break-insert C:\soft\STM\ST_Nomadik_Toolset_1_0_0_RC2\nmf\examples\helloworld\share\host\src\example.c:176
ARM-21^done,bkpt={number="5",type="breakpoint",disp="keep",enabled="y",addr="0x92c",func="example",file="C:/soft/STM/ST_Nomadik_Toolset_1_0_0_RC2/nmf/examples/helloworld/share/host/src/example.c",fullname="C:/soft/STM/ST_Nomadik_Toolset_1_0_0_RC2/nmf/examples/helloworld/share/host/src/example.c",line="176",times="0"}
ARM-(ARM)
=> ARM-22-exec-continue
ARM-22^running
ARM-(ARM)
ARM-=bind-to-host,client="2",require="output"
ARM-22*stopped,reason="breakpoint-hit",bkptno="5",thread-id="0",frame={addr="0x92c",func="example",args=[{name="argc",value="Not available"},{name="argv",value="Not available"}],file="C:/soft/STM/ST_Nomadik_Toolset_1_0_0_RC2/nmf/examples/helloworld/share/host/src/example.c",fullname="C:/soft/STM/ST_Nomadik_Toolset_1_0_0_RC2/nmf/examples/helloworld/share/host/src/example.c",line="176"}
ARM-(ARM)
=> ARM-23-stack-list-frames
ARM-23^done,stack=[frame={level="0",addr="0x92c",func="example",file="C:/soft/STM/ST_Nomadik_Toolset_1_0_0_RC2/nmf/examples/helloworld/share/host/src/example.c",fullname="C:/soft/STM/ST_Nomadik_Toolset_1_0_0_RC2/nmf/examples/helloworld/share/host/src/example.c",line="176"},frame={level="1",addr="0x12a3b",func="main",file="arm_components/nmf/bare/src/main.c",fullname="",line="202"}]
ARM-(ARM)