LLVM backend for 6502
Go to file
Jakob Stoklund Olesen fad649a5b1 Add higher-level API for dealing with bundled MachineInstrs.
This is still a work in progress. The purpose is to make bundling and
unbundling operations explicit, and to catch errors where bundles are
broken or created inadvertently.

The old IsInsideBundle flag is replaced by two MI flags: BundledPred
which has the same meaning as IsInsideBundle, and BundledSucc which is
set on instructions that are bundled with a successor. Having two flags
provdes redundancy to detect when a bundle is inadvertently torn by a
splice() or insert(), and it makes it possible to write bundle iterators
that don't need to peek at adjacent instructions.

The new flags can't be manipulated directly (once setIsInsideBundle is
gone). Instead there are MI functions to make and break bundle bonds.

The setIsInsideBundle function will be removed in a future commit. It
should be replaced by bundleWithPred().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169583 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-07 04:23:29 +00:00
autoconf
bindings [python] Add markup option to disassembler 2012-12-01 21:57:30 +00:00
cmake
docs Documentation: fix typos and formatting. 2012-12-06 21:12:35 +00:00
examples Sort the #include lines of the examples/... tree. 2012-12-04 10:16:57 +00:00
include Add higher-level API for dealing with bundled MachineInstrs. 2012-12-07 04:23:29 +00:00
lib Add higher-level API for dealing with bundled MachineInstrs. 2012-12-07 04:23:29 +00:00
projects Clean up the sample include orderings, not that it really matters... 2012-12-04 10:46:21 +00:00
runtime
test Add support to ValueTracking for determining that a pointer is non-null 2012-12-07 02:08:58 +00:00
tools Quick build fix for c++03 clang. This needs a proper solution. Note that these offsets are guaranteed to be correct by Endian.h. 2012-12-05 22:38:01 +00:00
unittests Do not run tests MappedMemoryTest.BasicWrite and MultipleWrite unless both 2012-12-05 22:43:07 +00:00
utils unittest/googletest/Makefile: Unbreak out-of-tree build. 2012-12-07 01:25:45 +00:00
.arcconfig
.gitignore
CMakeLists.txt
CODE_OWNERS.TXT Taking ownership of indvars/lsr. 2012-12-05 23:32:44 +00:00
configure
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common Makefile.common: Update a description, s/Source/SOURCES/ , according to MakefileGuide.html#control-variables . 2012-12-07 01:43:23 +00:00
Makefile.config.in
Makefile.rules
README.txt

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.