Go to file
Alexandros Lamprineas e15c982f6d [SelectionDAG] swap select_cc operands to enable folding
The DAGCombiner tries to SimplifySelectCC as follows:

  select_cc(x, y, 16, 0, cc) -> shl(zext(set_cc(x, y, cc)), 4)

It can't cope with the situation of reordered operands:

  select_cc(x, y, 0, 16, cc)

In that case we just need to swap the operands and invert the Condition Code:

  select_cc(x, y, 16, 0, ~cc)

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

llvm-svn: 346484
2018-11-09 11:09:40 +00:00
clang [PowerPC] [Clang] [AltiVec] The second parameter of vec_sr function should be modulo the number of bits in the element 2018-11-09 03:35:32 +00:00
clang-tools-extra Remove unused c'tor. 2018-11-09 02:03:24 +00:00
compiler-rt [XRay] Add a test for function id encoding/decoding (NFC) 2018-11-09 07:43:30 +00:00
debuginfo-tests Set config.lit_tools_dir, which is needed by lit.llvm.initialize. 2018-11-06 21:54:27 +00:00
libclc Remove redundant OVERRRIDES file 2018-11-04 00:54:46 +00:00
libcxx Attempt to enable -Wconversion 2018-11-08 23:57:32 +00:00
libcxxabi Use C++11 fallthrough attribute syntax when available and add a break 2018-11-01 18:24:03 +00:00
libunwind [CMake] Link to compiler-rt if LIBUNWIND_USE_COMPILER_RT is ON. 2018-10-08 18:35:00 +00:00
lld Fix -Wextra-qualification warning 2018-11-08 18:53:56 +00:00
lldb [lldb] Fix signature in test to match rL346453 2018-11-09 09:00:12 +00:00
llgo Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
llvm [SelectionDAG] swap select_cc operands to enable folding 2018-11-09 11:09:40 +00:00
openmp [OPENMP]Make lambda mapping follow reqs for PTR_AND_OBJ mapping. 2018-11-08 15:47:30 +00:00
parallel-libs Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
polly [CMake] Fix generation of exported targets in build directory 2018-11-06 15:18:17 +00:00
README.md Update the project name in README.md 2018-10-19 00:03:01 +00:00

README.md

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.