summaryrefslogtreecommitdiff
path: root/src/base/remote_gdb.cc
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2006-06-08 19:03:58 -0400
committerAli Saidi <saidi@eecs.umich.edu>2006-06-08 19:03:58 -0400
commit8ee856f1d53f9b181a06183c8c86855898b82ba7 (patch)
tree9566627ea771ec643b6736c8e83d6422a6e88092 /src/base/remote_gdb.cc
parent54d4220b004a385d04def37fa55c820366da0d4a (diff)
downloadgem5-8ee856f1d53f9b181a06183c8c86855898b82ba7.tar.xz
add write/read functions that have endian conversions in them
when we get a virtual port delete it (even though delete does nothing in these cases) src/arch/alpha/linux/system.cc: src/arch/alpha/stacktrace.cc: src/base/remote_gdb.cc: src/cpu/simple_thread.cc: when we get a virtual port delete it (even though delete does nothing in this case) src/mem/port.hh: src/mem/vport.hh: add write/read functions that have endian conversions in them --HG-- extra : convert_revision : 163e05cc038c461f95c92f8ce55422033f9ea513
Diffstat (limited to 'src/base/remote_gdb.cc')
-rw-r--r--src/base/remote_gdb.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/base/remote_gdb.cc b/src/base/remote_gdb.cc
index 2b545d13c..0d3b73b1e 100644
--- a/src/base/remote_gdb.cc
+++ b/src/base/remote_gdb.cc
@@ -642,7 +642,9 @@ RemoteGDB::read(Addr vaddr, size_t size, char *data)
DPRINTF(GDBRead, "read: addr=%#x, size=%d", vaddr, size);
- context->getVirtPort(context)->readBlob(vaddr, (uint8_t*)data, size);
+ VirtualPort *vp = context->getVirtPort(context);
+ vp->readBlob(vaddr, (uint8_t*)data, size);
+ context->delVirtPort(vp);
#if TRACING_ON
if (DTRACE(GDBRead)) {
@@ -679,8 +681,9 @@ RemoteGDB::write(Addr vaddr, size_t size, const char *data)
} else
DPRINTFNR("\n");
}
-
- context->getVirtPort(context)->writeBlob(vaddr, (uint8_t*)data, size);
+ VirtualPort *vp = context->getVirtPort(context);
+ vp->writeBlob(vaddr, (uint8_t*)data, size);
+ context->delVirtPort(vp);
#ifdef IMB
alpha_pal_imb();