Go to file
Roman Lebedev 847938925b [NFC][InstSimplify] Add tests for shl nuw C, %x -> C fold.
%r = shl nuw i8 C, %x

As per langref: If the nuw keyword is present, then the shift produces
                a poison value if it shifts out any non-zero bits.
Thus, if the sign bit is set on C, then %x can only be 0,
which means that %r can only be C.

https://rise4fun.com/Alive/WMk
Was mentioned in D47428 review.

llvm-svn: 334200
2018-06-07 14:18:38 +00:00
clang [clang-format] Consider tok::hashhash in python-style comments 2018-06-07 09:46:24 +00:00
clang-tools-extra [clangd] Code completion: drop explicit injected names/operators, ignore Sema priority 2018-06-07 12:49:17 +00:00
compiler-rt Disable recursive interceptors in signal(3)/MSan 2018-06-07 07:55:20 +00:00
debuginfo-tests [Darwin] Specify DWARF 2/4 when running apple accelerator tests. 2018-02-26 20:56:45 +00:00
libclc Add initial support for half precision builtins 2018-05-17 22:55:30 +00:00
libcxx Remove unused code from __functional_base. NFC. 2018-06-06 06:42:27 +00:00
libcxxabi private_typeinfo: limit is_dst_type_derived_from_static_type optimization 2018-05-18 20:51:38 +00:00
libunwind [OR1K] Add the EPCR special-purpose register to register state. 2018-05-16 19:09:48 +00:00
lld [WebAssembly] Add --export-all flag 2018-06-07 01:27:07 +00:00
lldb DIERef: move trivial constructors into the header 2018-06-07 14:03:30 +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 [NFC][InstSimplify] Add tests for shl nuw C, %x -> C fold. 2018-06-07 14:18:38 +00:00
openmp [OMPT] Rename ompt_wait_id to omp_wait_id 2018-05-28 08:16:08 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly Run clang-format 2018-06-07 08:32:13 +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.