llvm-project/llvm
Sam Parker 9bf658d5fe [ARM] Avoid using ARM instructions in Thumb mode
The Requires class overrides the target requirements of an instruction,
rather than adding to them, so all ARM instructions need to include the
IsARM predicate when they have overwitten requirements.

This caused the swp and swpb instructions to be allowed in thumb mode
assembly, and the ARM encoding of CDP to be selected in codegen (which
is different for conditional instructions).

Differential Revision: https://reviews.llvm.org/D29283

llvm-svn: 293634
2017-01-31 14:35:01 +00:00
..
bindings Fix go bindings after r289702 (hopefully, don't really know how to build 2016-12-15 06:54:29 +00:00
cmake Remove LLVM_CONFIG from config headers 2017-01-31 00:34:23 +00:00
docs [LanRef] Fix typo in getelementptr example. 2017-01-30 07:38:58 +00:00
examples Use print() instead of dump() in code 2017-01-28 02:47:46 +00:00
include [ARM] Avoid using ARM instructions in Thumb mode 2017-01-31 14:35:01 +00:00
lib [ARM] Avoid using ARM instructions in Thumb mode 2017-01-31 14:35:01 +00:00
projects
resources
runtimes [CMake] Handle common options for runtimes build 2017-01-10 19:47:05 +00:00
test [ARM] Avoid using ARM instructions in Thumb mode 2017-01-31 14:35:01 +00:00
tools Fix llvm-readobj build error after r293569 2017-01-30 23:58:51 +00:00
unittests Revert "[MemorySSA] Revert r293361 and r293363, as the tests fail under asan." 2017-01-30 11:35:39 +00:00
utils TableGen: use fully qualified name for StringLiteral 2017-01-31 00:45:01 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore [AVR] Add the integrated testing tool to the .gitignore 2016-12-14 11:47:14 +00:00
CMakeLists.txt This addresses LLDB bug 31699, which was caused by LLVM using static linking on Windows. 2017-01-28 07:39:52 +00:00
CODE_OWNERS.TXT
CREDITS.TXT Revert revision 289721. 2016-12-14 21:58:42 +00:00
LICENSE.TXT Bump year to 2017 in LICENSE.txt 2017-01-12 18:02:42 +00:00
LLVMBuild.txt
README.txt Test commit. 2017-01-27 23:59:26 +00:00
RELEASE_TESTERS.TXT Update the release tester for MIPS. NFC. 2017-01-17 11:00:28 +00:00
configure
llvm.spec.in

README.txt

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 are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.