Go to file
Alexey Bataev 83c15b1363 [InstCombine] Fix PR35618: Instcombine hangs on single minmax load bitcast.
Summary:
If we have pattern `store (load(bitcast(select (cmp(V1, V2), &V1,
&V2)))), bitcast)`, but the load is used in other instructions, it leads
to looping in InstCombiner. Patch adds additional check that all users
of the load instructions are stores and then replaces all uses of load
instruction by the new one with new type.

Reviewers: RKSimon, spatel, majnemer

Subscribers: llvm-commits

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

llvm-svn: 320525
2017-12-12 20:28:46 +00:00
clang [OpenMP] Diagnose function name on the link clause 2017-12-12 20:08:12 +00:00
clang-tools-extra [clangd] (Attempt to) read clang-format file for document formatting 2017-12-12 20:25:06 +00:00
compiler-rt [msan] LIT: Add lld testing config 2017-12-12 19:17:52 +00:00
debuginfo-tests [debuginfo-tests] Support moving debuginfo-tests to llvm/projects 2017-12-12 16:54:20 +00:00
libclc configure.py: Add gfx900 (Vega, Raven) 2017-11-27 11:14:06 +00:00
libcxx [libcxx] P0604, invoke_result and is_invocable 2017-12-12 18:42:04 +00:00
libcxxabi [libcxxabi] Pass LIBCXXABI_SYSROOT and LIBCXXABI_GCC_TOOLCHAIN to lit 2017-12-12 01:20:37 +00:00
libunwind [libunwind] Create install-unwind-stripped target manually 2017-12-08 17:15:05 +00:00
lld Remove trailing whitespace. 2017-12-12 20:00:30 +00:00
lldb Add an #include to appease an older clang, NFC 2017-12-12 20:19:40 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm [InstCombine] Fix PR35618: Instcombine hangs on single minmax load bitcast. 2017-12-12 20:28:46 +00:00
openmp [CMake] Remove legacy LIBOMP_LIT_ARGS 2017-12-08 15:07:08 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly [ScopBuilder] Split statements on encountering store instructions. 2017-12-11 12:51:24 +00:00
README.md Add an svn project to contain the files that appear at the root of the 2017-10-19 21:09:49 +00:00

README.md

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.