10 #ifndef LLVM_SUPPORT_MEMORYOBJECT_H
11 #define LLVM_SUPPORT_MEMORYOBJECT_H
13 #include "llvm/Support/DataTypes.h"
47 virtual uint64_t
readBytes(uint8_t *Buf, uint64_t Size,
56 virtual const uint8_t *
getPointer(uint64_t address, uint64_t
size)
const = 0;
virtual uint64_t getExtent() const =0
Returns the size of the region in bytes.
Interface to data which might be streamed.
virtual uint64_t readBytes(uint8_t *Buf, uint64_t Size, uint64_t Address) const =0
Tries to read a contiguous range of bytes from the region, up to the end of the region.
virtual bool isValidAddress(uint64_t address) const =0
Returns true if the address is within the object (i.e.
virtual const uint8_t * getPointer(uint64_t address, uint64_t size) const =0
Ensures that the requested data is in memory, and returns a pointer to it.