mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-11 18:25:40 +02:00
Implementing the disassembly mode.
This commit is contained in:
parent
e01a121c1c
commit
fd956221a4
3 changed files with 37 additions and 2 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2002-10-10 Mikhail Khodjaiants
|
||||||
|
* CDebugTarget.java: Implementing the disassembly mode.
|
||||||
|
* CThread.java: Implementing the disassembly mode.
|
||||||
|
|
||||||
2002-10-10 Mikhail Khodjaiants
|
2002-10-10 Mikhail Khodjaiants
|
||||||
* CSourceManager.java: Implementing the disassembly mode.
|
* CSourceManager.java: Implementing the disassembly mode.
|
||||||
* DisassemblyManager.java: Implementing the disassembly mode.
|
* DisassemblyManager.java: Implementing the disassembly mode.
|
||||||
|
|
|
@ -58,6 +58,7 @@ import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceManager;
|
||||||
import org.eclipse.cdt.debug.internal.core.sourcelookup.DisassemblyManager;
|
import org.eclipse.cdt.debug.internal.core.sourcelookup.DisassemblyManager;
|
||||||
import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
|
import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocation;
|
||||||
import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
|
import org.eclipse.cdt.debug.core.sourcelookup.ICSourceLocator;
|
||||||
|
import org.eclipse.cdt.debug.core.sourcelookup.ISourceMode;
|
||||||
import org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint;
|
import org.eclipse.cdt.debug.internal.core.breakpoints.CBreakpoint;
|
||||||
import org.eclipse.core.resources.IMarkerDelta;
|
import org.eclipse.core.resources.IMarkerDelta;
|
||||||
import org.eclipse.core.resources.IProject;
|
import org.eclipse.core.resources.IProject;
|
||||||
|
@ -1861,4 +1862,14 @@ public class CDebugTarget extends CDebugElement
|
||||||
{
|
{
|
||||||
return ( getTargetType() == ICDebugTargetType.TARGET_TYPE_LOCAL_CORE_DUMP );
|
return ( getTargetType() == ICDebugTargetType.TARGET_TYPE_LOCAL_CORE_DUMP );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected int getRealSourceMode()
|
||||||
|
{
|
||||||
|
ISourceLocator sl = getSourceLocator();
|
||||||
|
if ( sl != null && sl instanceof CSourceManager )
|
||||||
|
{
|
||||||
|
return ((CSourceManager)sl).getRealMode();
|
||||||
|
}
|
||||||
|
return ISourceMode.MODE_SOURCE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,6 +32,7 @@ import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
|
||||||
import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
|
import org.eclipse.cdt.debug.core.cdi.model.ICDIStackFrame;
|
||||||
import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
|
import org.eclipse.cdt.debug.core.cdi.model.ICDITarget;
|
||||||
import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
|
import org.eclipse.cdt.debug.core.cdi.model.ICDIThread;
|
||||||
|
import org.eclipse.cdt.debug.core.sourcelookup.ISourceMode;
|
||||||
import org.eclipse.debug.core.DebugEvent;
|
import org.eclipse.debug.core.DebugEvent;
|
||||||
import org.eclipse.debug.core.DebugException;
|
import org.eclipse.debug.core.DebugException;
|
||||||
import org.eclipse.debug.core.model.IBreakpoint;
|
import org.eclipse.debug.core.model.IBreakpoint;
|
||||||
|
@ -543,7 +544,14 @@ public class CThread extends CDebugElement
|
||||||
return;
|
return;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
getCDIThread().stepInto();
|
if ( getRealSourceMode() == ISourceMode.MODE_SOURCE )
|
||||||
|
{
|
||||||
|
getCDIThread().stepInto();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
getCDIThread().stepIntoInstruction();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch( CDIException e )
|
catch( CDIException e )
|
||||||
{
|
{
|
||||||
|
@ -560,7 +568,14 @@ public class CThread extends CDebugElement
|
||||||
return;
|
return;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
getCDIThread().stepOver();
|
if ( getRealSourceMode() == ISourceMode.MODE_SOURCE )
|
||||||
|
{
|
||||||
|
getCDIThread().stepOver();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
getCDIThread().stepOverInstruction();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch( CDIException e )
|
catch( CDIException e )
|
||||||
{
|
{
|
||||||
|
@ -973,4 +988,9 @@ public class CThread extends CDebugElement
|
||||||
targetRequestFailed( e.getMessage(), null );
|
targetRequestFailed( e.getMessage(), null );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private int getRealSourceMode()
|
||||||
|
{
|
||||||
|
return ((CDebugTarget)getDebugTarget()).getRealSourceMode();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue