llvm::WriteThroughMemoryBuffer

MemoryBuffer that maps a file writable and can commit changes back.

Synopsis

Declared in <llvm/Support/MemoryBuffer.h>

class WriteThroughMemoryBuffer
    : public MemoryBuffer

Base Classes

NameDescription
MemoryBufferThis interface provides simple read-only access to a block of memory, and provides simple methods for reading files and standard input into a memory buffer. In addition to basic access to the characters in the file, this interface guarantees you can read one character past the end of the file, and that this character will read as '0'.

Enums

NameDescription
BufferKind The kind of memory backing used to support the MemoryBuffer.

Member Functions

NameDescription
operator= [deleted]Deleted copy assignment.
dontNeedIfMmap [virtual]Advise the kernel that a read-only mmap buffer is unused soon.
getBuffer getBuffer overloads
getBufferEnd getBufferEnd overloads
getBufferIdentifier [virtual]Return an identifier for this buffer, typically the filename it was read from.
getBufferKind [virtual]Return information on the memory mechanism used to support the MemoryBuffer.
getBufferSize Number of bytes in the buffer (end minus start).
getBufferStart getBufferStart overloads
getMemBufferRef Return a lightweight reference to this buffer's data and identifier.
randomAccessIfMmap [virtual]Advise the kernel that accesses to this mmap buffer will be random.
willNeedIfMmap [virtual]Advise the kernel to prefetch this mmap buffer into memory.

Static Member Functions

NameDescription
getFile getFile overloads
getFileAsStream Read the specified file into a MemoryBuffer until EOF.
getFileOrSTDIN Open the specified file as a MemoryBuffer, or open stdin if the Filename is "-".
getFileSlice getFileSlice overloads
getMemBuffer getMemBuffer overloads
getMemBufferCopy Open the specified memory range as a MemoryBuffer, copying the contents and taking ownership of it.
getOpenFile Given an already-open file descriptor, read the file and return a MemoryBuffer.
getOpenFileSlice Map a slice of an already-open file into a MemoryBuffer.
getSTDIN Read all of stdin into a file buffer, and return it.

Using Declarations

NameDescription
getBuffer Inherit the const getBuffer() overload from MemoryBuffer.
getBufferEnd Inherit getBufferEnd() from MemoryBuffer.
getBufferStart Inherit getBufferStart() from MemoryBuffer.

Protected Member Functions

NameDescription
WriteThroughMemoryBuffer [constructor]Construct an empty write-through memory buffer.
init Initialize buffer pointers and whether a null terminator is required.

Non-Member Functions

NameDescription
createBasicBlockSectionsProfileReaderWrapperPassCreate a pass that parses a basic block sections profile from Buf.
wrapConvert a MemoryBuffer pointer to an LLVMMemoryBufferRef.