diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2013-04-25 03:47:41 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2013-04-25 03:47:41 +0000 |
commit | 06fd5bf4ea122960f0435449c2391ea4fe1ea2ca (patch) | |
tree | c845deb6b60daaa789215860c7caac5b9b7f4cdb /include/llvm/ExecutionEngine/ObjectCache.h | |
parent | 7467e5ed1c04887c8d7bdb760df346f518003f07 (diff) |
Revert "Adding object caching support to MCJIT"
This reverts commit 07f03923137a91e3cca5d7fc075a22f8c9baf33a.
Looks like it broke the valgrind bot:
http://lab.llvm.org:8011/builders/llvm-x86_64-linux-vg_leak/builds/649
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180249 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/ExecutionEngine/ObjectCache.h')
-rw-r--r-- | include/llvm/ExecutionEngine/ObjectCache.h | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/include/llvm/ExecutionEngine/ObjectCache.h b/include/llvm/ExecutionEngine/ObjectCache.h deleted file mode 100644 index 0bee86161b..0000000000 --- a/include/llvm/ExecutionEngine/ObjectCache.h +++ /dev/null @@ -1,54 +0,0 @@ -//===-- ObjectCache.h - Class definition for the ObjectCache -----C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_LIB_EXECUTIONENGINE_OBJECTCACHE_H -#define LLVM_LIB_EXECUTIONENGINE_OBJECTCACHE_H - -#include "llvm/Support/MemoryBuffer.h" - -namespace llvm { - -class Module; - -/// This is the base ObjectCache type which can be provided to an -/// ExecutionEngine for the purpose of avoiding compilation for Modules that -/// have already been compiled and an object file is available. -class ObjectCache { -public: - ObjectCache() { } - - virtual ~ObjectCache() { } - - /// notifyObjectCompiled - Provides a pointer to compiled code for Module M. - virtual void notifyObjectCompiled(const Module *M, const MemoryBuffer *Obj) = 0; - - /// getObjectCopy - Returns a pointer to a newly allocated MemoryBuffer that - /// contains the object which corresponds with Module M, or 0 if an object is - /// not available. The caller owns the MemoryBuffer returned by this function. - MemoryBuffer* getObjectCopy(const Module* M) { - const MemoryBuffer* Obj = getObject(M); - if (Obj) - return MemoryBuffer::getMemBufferCopy(Obj->getBuffer()); - else - return 0; - } - -protected: - /// getObject - Returns a pointer to a MemoryBuffer that contains an object - /// that corresponds with Module M, or 0 if an object is not available. - /// The pointer returned by this function is not suitable for loading because - /// the memory is read-only and owned by the ObjectCache. To retrieve an - /// owning pointer to a MemoryBuffer (which is suitable for calling - /// RuntimeDyld::loadObject() with) use getObjectCopy() instead. - virtual const MemoryBuffer* getObject(const Module* M) = 0; -}; - -} - -#endif |