diff options
author | Anton Leherbauer | 2010-02-26 08:42:25 +0000 |
---|---|---|
committer | Anton Leherbauer | 2010-02-26 08:42:25 +0000 |
commit | e33b39e5b7580284939a340b8925e9291dc44160 (patch) | |
tree | 23623a73f7605cbaf30e60d0b708cd55cc4877bd /dsf/org.eclipse.cdt.dsf.ui | |
parent | 1400363b31245531f33a21ca5e464a7a63b28414 (diff) | |
download | org.eclipse.cdt-e33b39e5b7580284939a340b8925e9291dc44160.tar.gz org.eclipse.cdt-e33b39e5b7580284939a340b8925e9291dc44160.tar.xz org.eclipse.cdt-e33b39e5b7580284939a340b8925e9291dc44160.zip |
[302925] Incorporate John's review feedback
Diffstat (limited to 'dsf/org.eclipse.cdt.dsf.ui')
-rw-r--r-- | dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyBackendDsf.java | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyBackendDsf.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyBackendDsf.java index af35f3387e9..57fb315ccc7 100644 --- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyBackendDsf.java +++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/disassembly/DisassemblyBackendDsf.java @@ -441,6 +441,8 @@ public class DisassemblyBackendDsf implements IDisassemblyBackend, SessionEndedL * @see org.eclipse.cdt.dsf.debug.internal.ui.disassembly.IDisassemblyBackend#retrieveDisassembly(java.math.BigInteger, java.math.BigInteger, java.lang.String, int, int, boolean, boolean, boolean, int) */ public void retrieveDisassembly(final BigInteger startAddress, BigInteger endAddress, final String file, final int lineNumber, final int lines, boolean mixed, final boolean showSymbols, final boolean showDisassembly, final int linesHint) { + // make sure address range is no less than 32 bytes + // this is an attempt to get better a response from the backend (bug 302505) final BigInteger finalEndAddress= startAddress.add(BigInteger.valueOf(32)).max(endAddress); DsfSession session = getSession(); @@ -609,10 +611,6 @@ public class DisassemblyBackendDsf implements IDisassemblyBackend, SessionEndedL BigInteger instrLength= null; if (j < instructions.length - 1) { instrLength= instructions[j+1].getAdress().subtract(instruction.getAdress()).abs(); - } else if (instructions.length == 1) { - if (p.fAddressLength.compareTo(BigInteger.valueOf(8)) <= 0) { - instrLength= p.fAddressLength; - } } if (instrLength == null) { // cannot determine length of last instruction @@ -739,10 +737,6 @@ public class DisassemblyBackendDsf implements IDisassemblyBackend, SessionEndedL if (nextSrcLineIdx >= mixedInstructions.length) { break; } - } else if (instructions.length == 1) { - if (p.fAddressLength.compareTo(BigInteger.valueOf(8)) <= 0) { - instrLength= p.fAddressLength; - } } if (instrLength == null) { // cannot determine length of last instruction |