64,66d63
< SETranslatingPortProxy::~SETranslatingPortProxy()
< { }
<
85,90d81
< void
< SETranslatingPortProxy::readBlob(Addr addr, uint8_t *p, int size) const
< {
< if (!tryReadBlob(addr, p, size))
< fatal("readBlob(0x%x, ...) failed", addr);
< }
92d82
<
125,131d114
< void
< SETranslatingPortProxy::writeBlob(Addr addr, const uint8_t *p, int size) const
< {
< if (!tryWriteBlob(addr, p, size))
< fatal("writeBlob(0x%x, ...) failed", addr);
< }
<
153,218d135
<
< 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);
< }
<