diff options
author | Gabe Black <gabeblack@google.com> | 2019-05-01 19:03:28 -0700 |
---|---|---|
committer | Gabe Black <gabeblack@google.com> | 2019-05-29 04:23:18 +0000 |
commit | 6a69fc18e743006db013797531d9ebcdb352a88d (patch) | |
tree | 3ece9c4d7530bdb04bcc93946e13f97b13715903 /src/mem/se_translating_port_proxy.cc | |
parent | ac65b6ee7f470e73a39197d30e4190f6a538e567 (diff) | |
download | gem5-6a69fc18e743006db013797531d9ebcdb352a88d.tar.xz |
mem, arm: Move some helper methods into the base PortProxy class.
These were originally in the SETranslatingPortProxy class, but they're
not specific to SE mode in any way and are an unnecessary divergence
between the SE and FS mode translating port proxies.
Change-Id: I8cb77531cc287bd15b2386410ffa7b43cdfa67d0
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18570
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'src/mem/se_translating_port_proxy.cc')
-rw-r--r-- | src/mem/se_translating_port_proxy.cc | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/src/mem/se_translating_port_proxy.cc b/src/mem/se_translating_port_proxy.cc index bb30ffbd2..de5335a05 100644 --- a/src/mem/se_translating_port_proxy.cc +++ b/src/mem/se_translating_port_proxy.cc @@ -61,9 +61,6 @@ SETranslatingPortProxy::SETranslatingPortProxy(MasterPort& port, Process *p, process(p), allocating(alloc) { } -SETranslatingPortProxy::~SETranslatingPortProxy() -{ } - bool SETranslatingPortProxy::tryReadBlob(Addr addr, uint8_t *p, int size) const { @@ -82,13 +79,6 @@ SETranslatingPortProxy::tryReadBlob(Addr addr, uint8_t *p, int size) const return true; } -void -SETranslatingPortProxy::readBlob(Addr addr, uint8_t *p, int size) const -{ - if (!tryReadBlob(addr, p, size)) - fatal("readBlob(0x%x, ...) failed", addr); -} - bool SETranslatingPortProxy::tryWriteBlob(Addr addr, const uint8_t *p, @@ -122,13 +112,6 @@ SETranslatingPortProxy::tryWriteBlob(Addr addr, const uint8_t *p, } -void -SETranslatingPortProxy::writeBlob(Addr addr, const uint8_t *p, int size) const -{ - if (!tryWriteBlob(addr, p, size)) - fatal("writeBlob(0x%x, ...) failed", addr); -} - bool SETranslatingPortProxy::tryMemsetBlob(Addr addr, uint8_t val, int size) const { @@ -150,69 +133,3 @@ SETranslatingPortProxy::tryMemsetBlob(Addr addr, uint8_t val, int size) const return true; } - -void -SETranslatingPortProxy::memsetBlob(Addr addr, uint8_t val, int size) const -{ - if (!tryMemsetBlob(addr, val, size)) - fatal("memsetBlob(0x%x, ...) failed", addr); -} - - -bool -SETranslatingPortProxy::tryWriteString(Addr addr, const char *str) const -{ - uint8_t c; - - Addr vaddr = addr; - - do { - c = *str++; - Addr paddr; - - if (!pTable->translate(vaddr++, paddr)) - return false; - - PortProxy::writeBlob(paddr, &c, 1); - } while (c); - - return true; -} - -void -SETranslatingPortProxy::writeString(Addr addr, const char *str) const -{ - if (!tryWriteString(addr, str)) - fatal("writeString(0x%x, ...) failed", addr); -} - -bool -SETranslatingPortProxy::tryReadString(std::string &str, Addr addr) const -{ - uint8_t c; - - Addr vaddr = addr; - - while (true) { - Addr paddr; - - if (!pTable->translate(vaddr++, paddr)) - return false; - - PortProxy::readBlob(paddr, &c, 1); - if (c == '\0') - break; - - str += c; - } - - return true; -} - -void -SETranslatingPortProxy::readString(std::string &str, Addr addr) const -{ - if (!tryReadString(str, addr)) - fatal("readString(0x%x, ...) failed", addr); -} - |