Go to file
Quentin Colombet e77e5f44b8 [GlobalISel][Utils] Add a getConstantVRegVal variant that looks through instrs
getConstantVRegVal used to only look for G_CONSTANT when looking at
unboxing the value of a vreg. However, constants are sometimes not
directly used and are hidden behind trunc, s|zext or copy chain of
computation.

In particular this may be introduced by the legalization process that
doesn't want to simplify these patterns because it can lead to infine
loop when legalizing a constant.

To circumvent that problem, add a new variant of getConstantVRegVal,
named getConstantVRegValWithLookThrough, that allow to look through
extensions.

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

llvm-svn: 356116
2019-03-14 01:37:13 +00:00
clang Fix invocation of Gold plugin with LTO after r355331 2019-03-13 23:54:52 +00:00
clang-tools-extra [clangd] Fix a typo in doc. 2019-03-13 15:22:31 +00:00
compiler-rt AddressSanitizer: 64-bit SPARC/Linux port 2019-03-12 21:02:24 +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 sincos: Simplify declaration headers. 2019-03-13 07:13:34 +00:00
libcxx [libc++] Enable deprecation warnings by default 2019-03-12 20:10:06 +00:00
libcxxabi Revert "[runtimes] Move libunwind, libc++abi and libc++ to lib/ and include/" 2019-03-08 20:33:55 +00:00
libunwind Revert "[runtimes] Move libunwind, libc++abi and libc++ to lib/ and include/" 2019-03-08 20:33:55 +00:00
lld [WebAssembly] Improve support for "needed" list in dylink section 2019-03-13 21:29:20 +00:00
lldb Make sure that a sanitizer LLDB's environment doesn't get passed on 2019-03-14 00:46:15 +00:00
llgo Adjust documentation for git migration. 2019-01-29 16:37:27 +00:00
llvm [GlobalISel][Utils] Add a getConstantVRegVal variant that looks through instrs 2019-03-14 01:37:13 +00:00
openmp [OpenMP][stats] Update stats gathering macros 2019-03-08 21:23:34 +00:00
parallel-libs Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
polly [opaque pointer types] Update calls to CreateCall to pass the function 2019-02-08 19:30:46 +00:00
pstl [pstl] Deprecate non-CMake based build 2019-03-12 13:54:37 +00:00
.arcconfig Update monorepo .arcconfig with new project callsign. 2019-01-31 14:34:59 +00:00
.clang-format Add .clang-tidy and .clang-format files to the toplevel of the 2019-01-29 16:43:16 +00:00
.clang-tidy Disable tidy checks with too many hits 2019-02-01 11:20:13 +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.