LLVM backend for 6502
Go to file
Lang Hames 83b5f345b2 [ExecutionEngine] Fix MCJIT::addGlobalMapping.
This patch fixes MCJIT::addGlobalMapping by changing the implementation of the
ExecutionEngineState class. The new implementation maintains a bidirectional
mapping between symbol names (std::strings) and addresses (uint64_ts), rather
than a mapping between Value*s and void*s.

This has fix has been made for backwards compatibility, however the strongly
preferred way to resolve unknown symbols is by writing a custom
RuntimeDyld::SymbolResolver (formerly RTDyldMemoryManager) and overriding the
findSymbol method. The addGlobalMapping method is a hangover from the legacy JIT
(which has was removed in 3.6), and may be deprecated in a future release as
part of a clean-up of the ExecutionEngine interface.

Patch by Murat Bolat. Thanks Murat!



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@233747 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-31 20:31:14 +00:00
autoconf [ADT][CMake][AutoConf] Fail-fast iterators for DenseMap 2015-03-26 19:25:01 +00:00
bindings Go bindings: use MDNode::replaceAllUsesWith instead of MDTuple::replaceAllUsesWith. 2015-03-05 22:55:38 +00:00
cmake [CMake] Removing duplicates from the list of test suites to generate targets for. 2015-03-27 21:45:49 +00:00
docs [docs] add cross-reference 2015-03-31 15:07:53 +00:00
examples Rework r233647, "llvm/examples: Suppress building a few JIT examples." 2015-03-31 16:41:25 +00:00
include [ExecutionEngine] Fix MCJIT::addGlobalMapping. 2015-03-31 20:31:14 +00:00
lib [ExecutionEngine] Fix MCJIT::addGlobalMapping. 2015-03-31 20:31:14 +00:00
projects
test [X86, AVX] fix zero-extending integer operand load patterns to use integer instructions 2015-03-31 18:43:43 +00:00
tools Make llc use getHostCPUFeatures when 'native' is specified for cpu. 2015-03-31 05:52:57 +00:00
unittests [ExecutionEngine] Fix MCJIT::addGlobalMapping. 2015-03-31 20:31:14 +00:00
utils RegAllocGreedy: Allow target to specify register class ordering. 2015-03-31 19:57:53 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore Ignore compile_commands.json only at the root of the tree. 2015-03-26 18:55:42 +00:00
CMakeLists.txt CMake: enable installing utils 2015-03-27 16:53:06 +00:00
CODE_OWNERS.TXT Tom is also responsible for the 3.6 branch. 2015-03-16 18:15:27 +00:00
configure [ADT][CMake][AutoConf] Fail-fast iterators for DenseMap 2015-03-26 19:25:01 +00:00
CREDITS.TXT
LICENSE.TXT Update for a new year. 2015-03-12 01:25:29 +00:00
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in
Makefile.rules
README.txt Revert test commit at revision 233535. 2015-03-30 12:39:03 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.