Make ExecutionEngine owning a DataLayout
authorMehdi Amini <mehdi.amini@apple.com>
Thu, 16 Jul 2015 06:17:14 +0000 (06:17 +0000)
committerMehdi Amini <mehdi.amini@apple.com>
Thu, 16 Jul 2015 06:17:14 +0000 (06:17 +0000)
commitf2643f41b42075a11276d602363496985790641d
tree76b910f3f652d913e5b7e8149c66ed580c8bf401
parentbd7287ebe5d13183fb274057727e5380c1c1bd4f
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>
llvm-svn: 242387
llvm/include/llvm/ExecutionEngine/ExecutionEngine.h
llvm/lib/ExecutionEngine/ExecutionEngine.cpp
llvm/lib/ExecutionEngine/ExecutionEngineBindings.cpp
llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
llvm/lib/ExecutionEngine/Interpreter/Interpreter.cpp
llvm/lib/ExecutionEngine/Interpreter/Interpreter.h
llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp
llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.h