llvm-project/llvm/lib
Sanjoy Das e0e5795f6b [InstCombine] Allow InstCombine to merge adjacent guards
Summary:
If there are two adjacent guards with different conditions, we can
remove one of them and include its condition into the condition of
another one. This patch allows InstCombine to merge them by the
following pattern:

    guard(a); guard(b) -> guard(a & b).

Reviewers: reames, apilipenko, igor-laevsky, anna, sanjoy

Reviewed By: sanjoy

Subscribers: llvm-commits

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

llvm-svn: 293778
2017-02-01 16:34:55 +00:00
..
Analysis [ValueTracking] avoid crashing from bad assumptions (PR31809) 2017-02-01 15:41:32 +00:00
AsmParser ASMParser: use range-based for loops (NFC) 2016-12-27 18:35:22 +00:00
Bitcode Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
CodeGen [ImplicitNullCheck] Extend canReorder scope 2017-02-01 16:04:21 +00:00
DebugInfo Add a verbose/human readable mode to llvm-symbolizer to investigate discriminators and other line table/backtrace features 2017-01-31 22:19:38 +00:00
Demangle Add support for demangling C++11 thread_local variables. 2017-01-31 15:56:36 +00:00
ExecutionEngine RuntimeDyldELF: Don't abort on R_X86_64_NONE, it's a no-oop. 2017-01-28 18:39:01 +00:00
Fuzzer [libFuzzer] increase the default size for shmem 2017-02-01 00:07:47 +00:00
IR Include LLVMDumpValue in release builds. 2017-01-30 05:40:52 +00:00
IRReader Timer: Track name and description. 2016-11-18 19:43:18 +00:00
LTO [LTO] Teach lib/LTO about the new pass manager. 2017-01-24 00:58:24 +00:00
LibDriver LibDriver: Allow resource files to be archive members. 2016-12-15 19:37:46 +00:00
LineEditor
Linker [ThinLTO] Import only necessary DICompileUnit fields 2016-12-12 16:09:30 +00:00
MC MCMacho: Allow __thread_ptr section after dwarf sections 2017-02-01 01:31:36 +00:00
Object [WebAssembly] Add wasm support for llvm-readobj 2017-01-30 23:30:52 +00:00
ObjectYAML Make this file clang-format friendly and clang-format it. 2017-01-31 21:11:12 +00:00
Option Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
Passes [PM] Port LoopLoadElimination to the new pass manager and wire it into 2017-01-27 01:32:26 +00:00
ProfileData Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
Support [Support] Add newline when dumping an APInt. 2017-01-31 21:26:18 +00:00
TableGen Use print() instead of dump() in code 2017-01-28 02:47:46 +00:00
Target [X86][SSE] Remove unused argument. NFCI. 2017-02-01 16:34:50 +00:00
Transforms [InstCombine] Allow InstCombine to merge adjacent guards 2017-02-01 16:34:55 +00:00
XRay [XRay] Define the InstrumentationMap type 2017-02-01 00:05:29 +00:00
CMakeLists.txt [XRay] Define the library for XRay trace logs 2017-01-11 06:39:09 +00:00
LLVMBuild.txt Add an c++ itanium demangler to llvm. 2016-09-06 19:16:48 +00:00