llvm-project/llvm/lib
Sanjay Patel 30ef70b090 [InstCombine] fold X urem C -> X < C ? X : X - C when C is big (PR28672)
We already have the udiv variant of this transform, so I think this is ok for 
InstCombine too even though there is an increase in IR instructions. As the 
tests and TODO comments show, the transform can lead to follow-on combines.

This should fix: https://llvm.org/bugs/show_bug.cgi?id=28672

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

llvm-svn: 282209
2016-09-22 22:36:26 +00:00
..
Analysis [LV] When reporting about a specific instruction without debug location use loop's 2016-09-21 03:14:20 +00:00
AsmParser [AsmParser] Remove unused partial template specialization. 2016-09-22 22:02:59 +00:00
Bitcode [ThinLTO] Always emit a summary when compiling in ThinLTO mode 2016-09-20 23:07:17 +00:00
CodeGen MachineScheduler: Slightly simplify release node 2016-09-22 21:39:56 +00:00
DebugInfo [pdb] Write the IPI stream. 2016-09-15 18:22:31 +00:00
Demangle Avoid using alignas and constexpr. 2016-09-06 20:36:24 +00:00
ExecutionEngine [MCJIT] Fix some inconsistent handling of name mangling inside MCJIT. 2016-09-12 17:19:24 +00:00
Fuzzer [libFuzzer] add 'features' to the corpus elements, allow mutations with Size > MaxSize, fix sha1 in corpus stats; various refactorings 2016-09-22 01:34:58 +00:00
IR [Profile] code refactoring: make getStep a method in base class 2016-09-20 19:07:22 +00:00
IRReader
LTO [ThinLTO] Emit files for distributed builds for all modules 2016-09-21 19:12:05 +00:00
LibDriver Object: Replace NewArchiveIterator with a simpler NewArchiveMember class. NFCI. 2016-06-29 22:27:42 +00:00
LineEditor Fix Clang-tidy modernize-deprecated-headers warnings in some files; other minor fixes. 2016-03-28 17:40:08 +00:00
Linker DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
MC Defer asm errors to post-statement failure 2016-09-16 18:30:20 +00:00
Object Next set of additional error checks for invalid Mach-O files for bad LC_UUID 2016-09-21 20:03:09 +00:00
ObjectYAML [macho2yaml] Don't write empty linkedit data 2016-08-17 21:46:04 +00:00
Option Replace "fallthrough" comments with LLVM_FALLTHROUGH 2016-08-17 05:10:15 +00:00
Passes Fix test after renaming -name-anon-functions pass to -name-anon-globals 2016-09-16 17:18:16 +00:00
ProfileData [Coverage] Make sorting criteria for CounterMappingRegions local. 2016-08-31 07:01:17 +00:00
Support Speculative fix for build failures due to consumeInteger. 2016-09-22 15:55:05 +00:00
TableGen Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes. 2016-08-23 17:14:32 +00:00
Target [RDF] Add initial support for lane masks in the DFG 2016-09-22 21:01:24 +00:00
Transforms [InstCombine] fold X urem C -> X < C ? X : X - C when C is big (PR28672) 2016-09-22 22:36:26 +00:00
CMakeLists.txt Try to fix a circular dependency in the modules build. 2016-09-06 20:16:19 +00:00
LLVMBuild.txt Add an c++ itanium demangler to llvm. 2016-09-06 19:16:48 +00:00