llvm/lib
Roman Lebedev b93a52f5fe [InstCombine] conditional sign-extend of high-bit-extract: 'or' pattern.
In this pattern, all the "magic" bits that we'd `add` are all
high sign bits, and in the value we'd be adding to they are all unset,
not unexpectedly, so we can have an `or` there:
https://rise4fun.com/Alive/ups

It is possible that `haveNoCommonBitsSet()` should be taught about this
pattern so that we never have an `add` variant, but the reasoning would
need to be recursive (because of that `select`), so i'm not really sure
that would be worth it just yet.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@375378 91177308-0d34-0410-b5e6-96231b3b80d8
2019-10-20 20:52:06 +00:00
..
Analysis [SCEV] Simplify umin/max of zext and sext of the same value 2019-10-19 17:23:02 +00:00
AsmParser [Alignment][NFC] Remove dependency on GlobalObject::setAlignment(unsigned) 2019-10-15 11:24:36 +00:00
BinaryFormat [DebugInfo] Add a DW_OP_LLVM_entry_value operation 2019-10-15 11:31:21 +00:00
Bitcode [Alignment][NFC] Remove dependency on GlobalObject::setAlignment(unsigned) 2019-10-15 11:24:36 +00:00
Bitstream [Bitcode] Move Bitstream to a separate library 2019-07-03 22:40:07 +00:00
CodeGen Reverted r375254 as it has broken some build bots for a long time. 2019-10-20 20:39:33 +00:00
DebugInfo Fix minor warning in DWARFVerifier. 2019-10-20 07:55:50 +00:00
Demangle [Demangle] Add a few more options to the microsoft demangler 2019-10-15 08:29:56 +00:00
ExecutionEngine Move endian constant from Host.h to SwapByteOrder.h, prune include 2019-10-19 00:48:11 +00:00
Fuzzer
FuzzMutate [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
IR [ConstantRange] makeGuaranteedNoWrapRegion(): shl support 2019-10-20 19:36:55 +00:00
IRReader
LineEditor
Linker [Alignment][NFC] Remove dependency on GlobalObject::setAlignment(unsigned) 2019-10-15 11:24:36 +00:00
LTO [ThinLTOCodeGenerator] Add support for index-based WPD 2019-10-18 10:54:14 +00:00
MC Avoid including CodeView/SymbolRecord.h from MCStreamer.h 2019-10-19 01:44:09 +00:00
MCA [MCA][LSUnit] Track loads and stores until retirement. 2019-10-08 10:46:01 +00:00
Object [WebAssembly] Allow multivalue signatures in object files 2019-10-18 20:27:30 +00:00
ObjectYAML [yaml2obj][obj2yaml] - Do not create a symbol table by default. 2019-10-20 14:47:17 +00:00
Option [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
Passes In the new pass manager use PTO.LoopUnrolling to determine when and how 2019-10-14 22:56:07 +00:00
ProfileData [SampleFDO] Add profile remapping support for profile on-demand loading used 2019-10-18 22:35:20 +00:00
Remarks [Remarks] Add support for prepending a path to external files 2019-10-16 15:40:59 +00:00
Support Move endian constant from Host.h to SwapByteOrder.h, prune include 2019-10-19 00:48:11 +00:00
TableGen [gicombiner] Hoist pure C++ combine into the tablegen definition 2019-10-16 23:53:35 +00:00
Target Fix buildbot error in SIRegisterInfo.cpp. 2019-10-20 20:01:16 +00:00
Testing
TextAPI Reland "[TextAPI] Introduce TBDv4" 2019-10-10 04:24:44 +00:00
ToolDrivers [llvm-lib] Detect duplicate input files 2019-10-02 06:41:52 +00:00
Transforms [InstCombine] conditional sign-extend of high-bit-extract: 'or' pattern. 2019-10-20 20:52:06 +00:00
WindowsManifest Fight a bit against global initializers. NFC. 2019-08-22 19:43:27 +00:00
XRay [XRay] Silence static analyzer dyn_cast<BufferExtents> null dereference warning. NFCI. 2019-09-22 18:47:00 +00:00
CMakeLists.txt Fix build errors LLVM tests are disabled. 2019-07-11 22:08:35 +00:00
LLVMBuild.txt [Bitcode] Move Bitstream to a separate library 2019-07-03 22:40:07 +00:00