llvm-project/llvm
Mikhail Maltsev 806231ecc3 [ARM] Reject CSEL instructions with invalid operands
Summary:
According to the Armv8.1-M manual CSEL, CSINC, CSINV and CSNEG are
"constrained unpredictable" when SP is used as the source register Rn.

The assembler should diagnose this case.

Reviewers: momchil.velikov, dmgreen, ostannard, simon_tatham, t.p.northover

Reviewed By: ostannard

Subscribers: javed.absar, kristof.beyls, hiraditya, llvm-commits

Tags: #llvm

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

llvm-svn: 367433
2019-07-31 14:22:45 +00:00
..
benchmarks
bindings
cmake Re-disable C4324 MSVC warning that was enabled in D65458 / rL367383 2019-07-31 11:06:05 +00:00
docs [docs] Add cmake to Software requirements 2019-07-31 08:48:36 +00:00
examples [ORC] Add deprecation warnings to ORCv1 layers and utilities. 2019-07-17 16:40:52 +00:00
include [AArch64] Add support for Transactional Memory Extension (TME) 2019-07-31 12:52:17 +00:00
lib [ARM] Reject CSEL instructions with invalid operands 2019-07-31 14:22:45 +00:00
projects Revert "[libc++] Integrate the PSTL into libc++" 2019-07-19 18:52:46 +00:00
resources
runtimes
test [ARM] Reject CSEL instructions with invalid operands 2019-07-31 14:22:45 +00:00
tools [dsymutil] Pass LinkOptions by value instead of const ref. 2019-07-30 19:34:26 +00:00
unittests [AArch64] Add support for Transactional Memory Extension (TME) 2019-07-31 12:52:17 +00:00
utils gn build: Merge r367393 2019-07-31 12:19:28 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes
.gitignore
CMakeLists.txt Remove cmake checks for MSVC 1900 / VS 2013 2019-07-30 22:49:11 +00:00
CODE_OWNERS.TXT Update email address in CODE_OWNERS 2019-07-01 16:01:15 +00:00
CREDITS.TXT Update email address. 2019-07-17 07:02:02 +00:00
LICENSE.TXT
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT
configure
llvm.spec.in

README.txt

The LLVM Compiler Infrastructure
================================

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.