llvm-project/llvm
Alex Bradbury 65385167fb [RISCV] Implement lowering of ISD::SELECT
Although ISD::SELECT_CC is a more natural match for RISCVISD::SELECT_CC (and
ultimately the integer RISC-V conditional branch instructions), we choose to
expand ISD::SELECT_CC and lower ISD::SELECT. The appropriate compare+branch
will be created in the case where an ISD::SELECT condition value is created by
an ISD::SETCC node, which operates on XLen types. Other datatypes such as
floating point don't have conditional branch instructions, and lowering
ISD::SELECT allows more flexibility for handling these cases.

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

llvm-svn: 318735
2017-11-21 07:51:32 +00:00
..
bindings Update go bindings to use new functions from rL317135. 2017-11-02 10:22:26 +00:00
cmake [CMake] Allow for Solaris ld -V output on stdout 2017-11-17 17:12:14 +00:00
docs [LV] Model masking in VPlan, introducing VPInstructions 2017-11-20 12:01:47 +00:00
examples
include XRayRecord.h: Add missing #include 2017-11-21 00:23:19 +00:00
lib [RISCV] Implement lowering of ISD::SELECT 2017-11-21 07:51:32 +00:00
projects Re-revert "Refactor debuginfo-tests." 2017-11-21 01:20:28 +00:00
resources
runtimes [CMake][runtimes] Don't passthrough prefixes for non-default targets 2017-11-17 23:51:53 +00:00
test [RISCV] Implement lowering of ISD::SELECT 2017-11-21 07:51:32 +00:00
tools xray-record-yaml.h: Remove unused file 2017-11-21 00:33:17 +00:00
unittests Add ADL support to range based <algorithm> extensions 2017-11-20 22:12:55 +00:00
utils Re-revert "Refactor debuginfo-tests." 2017-11-21 01:20:28 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes [MC] Fix regression tests on Windows when git “core.autocrlf” is set to true. 2017-11-17 21:59:43 +00:00
.gitignore
CMakeLists.txt Re-revert "Refactor debuginfo-tests." 2017-11-21 01:20:28 +00:00
CODE_OWNERS.TXT Update my email addresses, NFC. 2017-10-26 10:16:54 +00:00
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT Update my email addresses, NFC. 2017-10-26 10:16:54 +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.