15 #ifndef LLVM_EXECUTIONENGINE_SECTIONMEMORYMANAGER_H
16 #define LLVM_EXECUTIONENGINE_SECTIONMEMORYMANAGER_H
94 uint8_t *allocateSection(MemoryGroup &MemGroup, uintptr_t Size,
97 error_code applyMemoryGroupPermissions(MemoryGroup &MemGroup,
98 unsigned Permissions);
101 MemoryGroup RWDataMem;
102 MemoryGroup RODataMem;
107 #endif // LLVM_EXECUTION_ENGINE_SECTION_MEMORY_MANAGER_H
virtual void invalidateInstructionCache()
Invalidate instruction cache for code sections.
virtual uint8_t * allocateCodeSection(uintptr_t Size, unsigned Alignment, unsigned SectionID, StringRef SectionName)
Allocates a memory block of (at least) the given size suitable for executable code.
Memory block abstraction.
virtual bool finalizeMemory(std::string *ErrMsg=0)
Update section-specific memory permissions and other attributes.
#define LLVM_DELETED_FUNCTION
virtual uint8_t * allocateDataSection(uintptr_t Size, unsigned Alignment, unsigned SectionID, StringRef SectionName, bool isReadOnly)
Allocates a memory block of (at least) the given size suitable for executable code.
virtual ~SectionMemoryManager()