Make ExecutionEngine owning a DataLayout
authorMehdi Amini <mehdi.amini@apple.com>
Thu, 16 Jul 2015 16:34:23 +0000 (16:34 +0000)
committerMehdi Amini <mehdi.amini@apple.com>
Thu, 16 Jul 2015 16:34:23 +0000 (16:34 +0000)
commite02fce0ac900fb1e5fd8f3c437bee3e8a9259e29
tree566aba2a33499bb1030af16b4dbaf7bf39de7ccc
parent9e05109e1155d36becad6022cfced80eedf70323
Make ExecutionEngine owning a DataLayout

Summary:
This change is part of a series of commits dedicated to have a single
DataLayout during compilation by using always the one owned by the
module.

The ExecutionEngine will act as an exception and will be unsafe to
be reused across context. We don't enforce this rule but undefined
behavior can occurs if the user tries to do it.

Reviewers: lhames

Subscribers: echristo, llvm-commits, rafael, yaron.keren

Differential Revision: http://reviews.llvm.org/D11110

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@242414 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/ExecutionEngine/ExecutionEngine.h
lib/ExecutionEngine/ExecutionEngine.cpp
lib/ExecutionEngine/ExecutionEngineBindings.cpp
lib/ExecutionEngine/Interpreter/Execution.cpp
lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
lib/ExecutionEngine/Interpreter/Interpreter.cpp
lib/ExecutionEngine/Interpreter/Interpreter.h
lib/ExecutionEngine/MCJIT/MCJIT.cpp
lib/ExecutionEngine/Orc/OrcMCJITReplacement.h