aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Object/MachO.h
diff options
context:
space:
mode:
authorPreston Gurd <preston.gurd@intel.com>2012-04-12 20:13:57 +0000
committerPreston Gurd <preston.gurd@intel.com>2012-04-12 20:13:57 +0000
commitc68dda815e64fb2fb463318d1eaa304e22199d50 (patch)
tree10f153529980e0bb8b0b15da7b9daddf04cb8d44 /include/llvm/Object/MachO.h
parentf0bcecc0d59455add4367204a198949d807fe1da (diff)
downloadexternal_llvm-c68dda815e64fb2fb463318d1eaa304e22199d50.zip
external_llvm-c68dda815e64fb2fb463318d1eaa304e22199d50.tar.gz
external_llvm-c68dda815e64fb2fb463318d1eaa304e22199d50.tar.bz2
This patch improves the MCJIT runtime dynamic loader by adding new handling
of zero-initialized sections, virtual sections and common symbols and preventing the loading of sections which are not required for execution such as debug information. Patch by Andy Kaylor! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154610 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Object/MachO.h')
-rw-r--r--include/llvm/Object/MachO.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/llvm/Object/MachO.h b/include/llvm/Object/MachO.h
index 1e409b2..0b73f94 100644
--- a/include/llvm/Object/MachO.h
+++ b/include/llvm/Object/MachO.h
@@ -72,6 +72,10 @@ protected:
virtual error_code isSectionText(DataRefImpl Sec, bool &Res) const;
virtual error_code isSectionData(DataRefImpl Sec, bool &Res) const;
virtual error_code isSectionBSS(DataRefImpl Sec, bool &Res) const;
+ virtual error_code isSectionRequiredForExecution(DataRefImpl Sec,
+ bool &Res) const;
+ virtual error_code isSectionVirtual(DataRefImpl Sec, bool &Res) const;
+ virtual error_code isSectionZeroInit(DataRefImpl Sec, bool &Res) const;
virtual error_code sectionContainsSymbol(DataRefImpl DRI, DataRefImpl S,
bool &Result) const;
virtual relocation_iterator getSectionRelBegin(DataRefImpl Sec) const;