[llvm] r217193 - Post-JIT light cleanup of ExecutionEngine.h: edited comments about the JIT,

Eric Christopher echristo at gmail.com
Thu Sep 4 16:37:46 PDT 2014


Thanks!

-eric


On Thu, Sep 4, 2014 at 1:37 PM, Yaron Keren <yaron.keren at gmail.com> wrote:

> Author: yrnkrn
> Date: Thu Sep  4 15:37:02 2014
> New Revision: 217193
>
> URL: http://llvm.org/viewvc/llvm-project?rev=217193&view=rev
> Log:
> Post-JIT light cleanup of ExecutionEngine.h: edited comments about the JIT,
> removed runJITOnFunction and isLazyCompilationDisabled.
>
> Deleted CodeGen\MachineCodeInfo.h which was used by runJITOnFunction()
> only.
>
>
>
> Removed:
>     llvm/trunk/include/llvm/CodeGen/MachineCodeInfo.h
> Modified:
>     llvm/trunk/include/llvm/ExecutionEngine/ExecutionEngine.h
>
> Removed: llvm/trunk/include/llvm/CodeGen/MachineCodeInfo.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/MachineCodeInfo.h?rev=217192&view=auto
>
> ==============================================================================
> --- llvm/trunk/include/llvm/CodeGen/MachineCodeInfo.h (original)
> +++ llvm/trunk/include/llvm/CodeGen/MachineCodeInfo.h (removed)
> @@ -1,53 +0,0 @@
> -//===-- MachineCodeInfo.h - Class used to report JIT info -------*- C++
> -*-===//
> -//
> -//                     The LLVM Compiler Infrastructure
> -//
> -// This file is distributed under the University of Illinois Open Source
> -// License. See LICENSE.TXT for details.
> -//
>
> -//===----------------------------------------------------------------------===//
> -//
> -// This file defines MachineCodeInfo, a class used by the JIT
> ExecutionEngine
> -// to report information about the generated machine code.
> -//
> -// See JIT::runJITOnFunction for usage.
> -//
>
> -//===----------------------------------------------------------------------===//
> -
> -#ifndef LLVM_CODEGEN_MACHINECODEINFO_H
> -#define LLVM_CODEGEN_MACHINECODEINFO_H
> -
> -#include "llvm/Support/DataTypes.h"
> -
> -namespace llvm {
> -
> -class MachineCodeInfo {
> -private:
> -  size_t Size;   // Number of bytes in memory used
> -  void *Address; // The address of the function in memory
> -
> -public:
> -  MachineCodeInfo() : Size(0), Address(nullptr) {}
> -
> -  void setSize(size_t s) {
> -    Size = s;
> -  }
> -
> -  void setAddress(void *a) {
> -    Address = a;
> -  }
> -
> -  size_t size() const {
> -    return Size;
> -  }
> -
> -  void *address() const {
> -    return Address;
> -  }
> -
> -};
> -
> -}
> -
> -#endif
> -
>
> Modified: llvm/trunk/include/llvm/ExecutionEngine/ExecutionEngine.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ExecutionEngine/ExecutionEngine.h?rev=217193&r1=217192&r2=217193&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/ExecutionEngine/ExecutionEngine.h (original)
> +++ llvm/trunk/include/llvm/ExecutionEngine/ExecutionEngine.h Thu Sep  4
> 15:37:02 2014
> @@ -152,9 +152,8 @@ protected:
>    void *(*LazyFunctionCreator)(const std::string &);
>
>  public:
> -  /// lock - This lock protects the ExecutionEngine, MCJIT, JIT,
> JITResolver and
> -  /// JITEmitter classes.  It must be held while changing the internal
> state of
> -  /// any of those classes.
> +  /// lock - This lock protects the ExecutionEngine and MCJIT classes. It
> must
> +  /// be held while changing the internal state of any of those classes.
>    sys::Mutex lock;
>
>
>  //===--------------------------------------------------------------------===//
> @@ -216,10 +215,6 @@ public:
>    /// it prints a message to stderr and aborts.
>    ///
>    /// This function is deprecated for the MCJIT execution engine.
> -  ///
> -  /// FIXME: the JIT and MCJIT interfaces should be disentangled or united
> -  /// again, if possible.
> -  ///
>    virtual void *getPointerToNamedFunction(const std::string &Name,
>                                            bool AbortOnFailure = true) = 0;
>
> @@ -232,7 +227,7 @@ public:
>                       "EE!");
>    }
>
> -  /// generateCodeForModule - Run code generationen for the specified
> module and
> +  /// generateCodeForModule - Run code generation for the specified
> module and
>    /// load it into memory.
>    ///
>    /// When this function has completed, all code and data for the
> specified
> @@ -246,7 +241,7 @@ public:
>    /// locally can use the getFunctionAddress call, which will generate
> code
>    /// and apply final preparations all in one step.
>    ///
> -  /// This method has no effect for the legacy JIT engine or the
> interpeter.
> +  /// This method has no effect for the interpeter.
>    virtual void generateCodeForModule(Module *M) {}
>
>    /// finalizeObject - ensure the module is fully processed and is usable.
> @@ -255,8 +250,7 @@ public:
>    /// object usable for execution.  It should be called after sections
> within an
>    /// object have been relocated using mapSectionAddress.  When this
> method is
>    /// called the MCJIT execution engine will reapply relocations for a
> loaded
> -  /// object.  This method has no effect for the legacy JIT engine or the
> -  /// interpeter.
> +  /// object.  This method has no effect for the interpeter.
>    virtual void finalizeObject() {}
>
>    /// runStaticConstructorsDestructors - This method is used to execute
> all of
> @@ -341,9 +335,9 @@ public:
>    /// getGlobalValueAddress - Return the address of the specified global
>    /// value. This may involve code generation.
>    ///
> -  /// This function should not be called with the JIT or interpreter
> engines.
> +  /// This function should not be called with the interpreter engine.
>    virtual uint64_t getGlobalValueAddress(const std::string &Name) {
> -    // Default implementation for JIT and interpreter.  MCJIT will
> override this.
> +    // Default implementation for the interpreter.  MCJIT will override
> this.
>      // JIT and interpreter clients should use getPointerToGlobal instead.
>      return 0;
>    }
> @@ -351,14 +345,11 @@ public:
>    /// getFunctionAddress - Return the address of the specified function.
>    /// This may involve code generation.
>    virtual uint64_t getFunctionAddress(const std::string &Name) {
> -    // Default implementation for JIT and interpreter.  MCJIT will
> override this.
> -    // JIT and interpreter clients should use getPointerToFunction
> instead.
> +    // Default implementation for the interpreter.  MCJIT will override
> this.
> +    // Interpreter clients should use getPointerToFunction instead.
>      return 0;
>    }
>
> -  // The JIT overrides a version that actually does this.
> -  virtual void runJITOnFunction(Function *, MachineCodeInfo * = nullptr)
> { }
> -
>    /// getGlobalValueAtAddress - Return the LLVM global value object that
> starts
>    /// at the specified address.
>    ///
> @@ -391,7 +382,7 @@ public:
>    virtual void UnregisterJITEventListener(JITEventListener *) {}
>
>    /// Sets the pre-compiled object cache.  The ownership of the
> ObjectCache is
> -  /// not changed.  Supported by MCJIT but not JIT.
> +  /// not changed.  Supported by MCJIT but not the interpreter.
>    virtual void setObjectCache(ObjectCache *) {
>      llvm_unreachable("No support for an object cache");
>    }
> @@ -433,11 +424,6 @@ public:
>    bool isCompilingLazily() const {
>      return CompilingLazily;
>    }
> -  // Deprecated in favor of isCompilingLazily (to reduce
> double-negatives).
> -  // Remove this in LLVM 2.8.
> -  bool isLazyCompilationDisabled() const {
> -    return !CompilingLazily;
> -  }
>
>    /// DisableGVCompilation - If called, the JIT will abort if it's asked
> to
>    /// allocate space and populate a GlobalVariable that is not internal to
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140904/43704167/attachment.html>


More information about the llvm-commits mailing list