Go to file
Nikita Popov 65038515ee [InstCombine] Relax cttz/ctlz with select on zero
The cttz/ctlz intrinsics have a parameter specifying whether the
result is undefined for zero. cttz(x, false) can be relaxed to
cttz(x, true) if x is known non-zero, and in fact such an optimization
is already performed. However, this currently doesn't work if x is
non-zero as a result of a select rather than an explicit branch.
This patch adds handling for this case, thus allowing
x != 0 ? cttz(x, false) : y to simplify to x != 0 ? cttz(x, true) : y.

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

llvm-svn: 350463
2019-01-05 09:48:16 +00:00
clang [CMake][Fuchsia] Enable experimental new pass manager by default 2019-01-05 07:57:53 +00:00
clang-tools-extra [clangd] Fix detecting atomics in stand-alone builds 2019-01-03 16:43:27 +00:00
compiler-rt Revert "Revert "Switch Android from TLS_SLOT_TSAN(8) to TLS_SLOT_SANITIZER(6)"" 2019-01-05 00:45:14 +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 travis: Add cmake build 2018-11-27 16:07:21 +00:00
libcxx De-tab a couple tests. NFC 2019-01-03 17:18:40 +00:00
libcxxabi [libcxx] Remove bad_array_length 2018-11-29 19:44:57 +00:00
libunwind [SEH] Add initial support for AArch64 2018-12-18 20:05:59 +00:00
lld [LLD][COFF] PDB: Parallel sort publics 2019-01-05 01:16:24 +00:00
lldb [Driver] Some more cleanup. NFC 2019-01-05 00:01:04 +00:00
llgo
llvm [InstCombine] Relax cttz/ctlz with select on zero 2019-01-05 09:48:16 +00:00
openmp [OPENMP][NVPTX]General formatting/code improvement, NFC. 2019-01-04 20:16:54 +00:00
parallel-libs
polly [CMake] Fix generation of exported targets in build directory 2018-11-06 15:18:17 +00:00
pstl [pstl] Initial integration with LLVM's CMake 2018-12-21 15:59:04 +00:00
README.md

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.