diff --git a/include/llvm/Support/MemoryObject.h b/include/llvm/Support/MemoryObject.h index fcc6bf79c4f..dc5106e1c5d 100644 --- a/include/llvm/Support/MemoryObject.h +++ b/include/llvm/Support/MemoryObject.h @@ -51,7 +51,8 @@ public: /// and large enough to hold size bytes. /// @result - 0 if successful; -1 if not. Failure may be due to a /// bounds violation or an implementation-specific error. - virtual int readBytes(uint64_t address, uint64_t size, uint8_t *buf) const; + virtual int readBytes(uint64_t address, uint64_t size, + uint8_t *buf) const = 0; }; } diff --git a/lib/Support/MemoryObject.cpp b/lib/Support/MemoryObject.cpp index fe5fa87109d..d796acfa90e 100644 --- a/lib/Support/MemoryObject.cpp +++ b/lib/Support/MemoryObject.cpp @@ -12,22 +12,3 @@ using namespace llvm; MemoryObject::~MemoryObject() { } - -int MemoryObject::readBytes(uint64_t address, - uint64_t size, - uint8_t* buf) const { - uint64_t current = address; - uint64_t limit = getExtent(); - - if (current + size > limit) - return -1; - - while (current - address < size) { - if (readByte(current, &buf[(current - address)])) - return -1; - - current++; - } - - return 0; -}