LLVM backend for 6502
Go to file
Danil Malyshev 0e4fa5ff36 Re-factored RuntimeDyLd:
1. The main works will made in the RuntimeDyLdImpl with uses the ObjectFile class. RuntimeDyLdMachO and RuntimeDyLdELF now only parses relocations and resolve it. This is allows to make improvements of the RuntimeDyLd more easily. In addition the support for COFF can be easily added.

2. Added ARM relocations to RuntimeDyLdELF.

3. Added support for stub functions for the ARM, allowing to do a long branch.

4. Added support for external functions that are not loaded from the object files, but can be loaded from external libraries. Now MCJIT can correctly execute the code containing the printf, putc, and etc.

5. The sections emitted instead functions, thanks Jim Grosbach. MemoryManager.startFunctionBody() and MemoryManager.endFunctionBody() have been removed.
6. MCJITMemoryManager.allocateDataSection() and MCJITMemoryManager. allocateCodeSection() used JMM->allocateSpace() instead of JMM->allocateCodeSection() and JMM->allocateDataSection(), because I got an error: "Cannot allocate an allocated block!" with object file contains more than one code or data sections.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153754 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-30 16:45:19 +00:00
autoconf Add InitializeNativeTargetDisassembler function. 2012-03-26 21:56:56 +00:00
bindings [python] Add negative MemoryBuffer testcase 2012-03-22 11:23:52 +00:00
cmake Add InitializeNativeTargetDisassembler function. 2012-03-26 21:56:56 +00:00
docs Drop O4 from the llc manpage, it was removed in r70445. 2012-03-29 20:40:18 +00:00
examples Switch to a more idiomatic way of silencing unused variable warnings in 2012-02-20 00:02:49 +00:00
include Re-factored RuntimeDyLd: 2012-03-30 16:45:19 +00:00
lib Re-factored RuntimeDyLd: 2012-03-30 16:45:19 +00:00
projects Add InitializeNativeTargetDisassembler function. 2012-03-26 21:56:56 +00:00
runtime Use the correct filename for the error message. 2012-03-28 02:39:06 +00:00
test ARM assembly parsing needs to be paranoid about negative immediates. 2012-03-30 16:31:31 +00:00
tools Re-factored RuntimeDyLd: 2012-03-30 16:45:19 +00:00
unittests Fix missed files in JIT unittests Makefile 2012-03-29 18:53:15 +00:00
utils Add more constness to CodeGenRegisters. 2012-03-29 18:03:59 +00:00
.gitignore
CMakeLists.txt Remove the C backend. 2012-03-23 05:50:46 +00:00
configure Add InitializeNativeTargetDisassembler function. 2012-03-26 21:56:56 +00:00
CREDITS.TXT sort by alpha. 2012-03-12 21:12:59 +00:00
LICENSE.TXT Happy new year 2012! 2012-01-01 08:16:56 +00:00
llvm.spec.in Tidy up. s/Low Level Virtual Machine/LLVM/. 2012-01-25 22:00:23 +00:00
LLVMBuild.txt LLVMBuild: Introduce a common section which currently has a list of the 2011-12-12 22:45:54 +00:00
Makefile Makefile: add missing files to FilesToConfig 2012-01-17 02:56:49 +00:00
Makefile.common
Makefile.config.in Add profiling support for Intel Parallel Amplifier XE (VTune) for JITted code in LLVM. 2012-03-13 08:33:15 +00:00
Makefile.rules Use a posix compliant regexp in export file construction. 2012-03-12 20:58:14 +00:00
README.txt test commit 2012-03-20 13:12:38 +00:00

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

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, 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 HTML documentation provided in docs/index.html for further
assistance with LLVM.

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