LLVM backend for 6502
Go to file
Matthias Braun ff881427ec TargetRegisterInfo: Make the concept of imprecise lane masks explicit
LaneMasks as given by getSubRegIndexLaneMask() have a limited number of
of bits, so for targets with more than 31 disjunct subregister there may
be cases where:

   getSubReg(Reg,A) does not overlap getSubReg(Reg,B)

but we still have

   (getSubRegIndexLaneMask(A) & getSubRegIndexLaneMask(B)) != 0.

I had hoped to keep this an implementation detail of the tablegen but as
my next commit shows we can avoid unnecessary imp-defs operands if we
know that the lane masks in use are precise.

This is in preparation to http://reviews.llvm.org/D10470.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239837 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-16 18:22:26 +00:00
autoconf configure: Remove non-portable fall-through operator: ;& 2015-06-13 03:46:48 +00:00
bindings Add safestack attribute to LLVMAttribute enum and Go bindings. Correct 2015-06-15 22:16:51 +00:00
cmake Repair cmake libatomic check. 2015-06-16 14:00:01 +00:00
docs Protection against stack-based memory corruption errors using SafeStack 2015-06-15 21:07:11 +00:00
examples BrainF.cpp: Update CreateCall() according to r237624. 2015-05-19 06:50:19 +00:00
include TargetRegisterInfo: Make the concept of imprecise lane masks explicit 2015-06-16 18:22:26 +00:00
lib TargetRegisterInfo: Make the concept of imprecise lane masks explicit 2015-06-16 18:22:26 +00:00
projects build: make libunwind a proper project 2015-04-25 01:47:39 +00:00
resources In MSVC builds embed a VERSIONINFO resource in our exe and DLL files. 2015-06-12 15:58:29 +00:00
test Have MachOObjectFile::isValidArch() accept armv7 2015-06-16 17:37:03 +00:00
tools Replace string GNU Triples with llvm::Triple in TargetMachine::getTargetTriple(). NFC. 2015-06-16 13:15:50 +00:00
unittests llvm/unittests/Support/Path.cpp: Use <windows.h> instead of <Windows.h>. 2015-06-16 06:46:16 +00:00
utils [CodeGen] Introduce a FAULTING_LOAD_OP pseudo-op. 2015-06-15 18:44:08 +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 R600 -> AMDGPU rename 2015-06-13 03:28:10 +00:00
CODE_OWNERS.TXT Added Andrey Churbanov as the owner of the OpenMP runtime library code 2015-05-05 20:17:53 +00:00
configure configure: Remove non-portable fall-through operator: ;& 2015-06-13 03:46:48 +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 Deprecate in-source autotools builds 2015-05-04 02:04:54 +00:00
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.