diff options
author | Lang Hames <lhames@gmail.com> | 2014-01-08 04:09:09 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2014-01-08 04:09:09 +0000 |
commit | 42fdb1f00ffc5d0a0326f11cadaeec1c26691688 (patch) | |
tree | 5294abeb5fb8c95d81ced305ed1a9d5d0ba7849b /lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h | |
parent | 0fe78d5669e37cf9c5b613ef56b4e5a2de975271 (diff) | |
download | llvm-42fdb1f00ffc5d0a0326f11cadaeec1c26691688.tar.gz llvm-42fdb1f00ffc5d0a0326f11cadaeec1c26691688.tar.bz2 llvm-42fdb1f00ffc5d0a0326f11cadaeec1c26691688.tar.xz |
Re-apply r196639: Add support for archives and object file caching under MCJIT.
I believe the bot failures on linux systems were due to overestimating the
alignment of object-files within archives, which are only guaranteed to be
two-byte aligned. I have reduced the alignment in
RuntimeDyldELF::createObjectImageFromFile accordingly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198737 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h')
-rw-r--r-- | lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h b/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h index 3adf82706a..181964faa9 100644 --- a/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h +++ b/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h @@ -140,7 +140,9 @@ public: const SymbolTableMap &Symbols, StubMap &Stubs); virtual bool isCompatibleFormat(const ObjectBuffer *Buffer) const; + virtual bool isCompatibleFile(const object::ObjectFile *Buffer) const; virtual ObjectImage *createObjectImage(ObjectBuffer *InputBuffer); + virtual ObjectImage *createObjectImageFromFile(object::ObjectFile *Obj); virtual void registerEHFrames(); virtual void deregisterEHFrames(); virtual void finalizeLoad(ObjSectionToIDMap &SectionMap); |