1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 12:02:58 +02:00
llvm-mirror/include/llvm/Transforms/Utils
Craig Topper f902ca84e9 Recommit r310869, "[InstSimplify][InstCombine] Modify the interface of decomposeBitTestICmp and use it in the InstSimplify"
This recommits r310869, with the moved files and no extra changes.

Original commit message:

This addresses a fixme in InstSimplify about using decomposeBitTest. This also fixes InstSimplify to handle ugt and ult compares too.

I've modified the interface a little to return only the APInt version of the mask that InstSimplify needs. InstCombine now has a small wrapper routine to create a Constant out of it. I've also dropped the returning of 0 since InstSimplify doesn't need that. So InstCombine creates a zero constant itself.

I also had to make decomposeBitTest support vectors since InstSimplify needs that.

As InstSimplify can't use something from the Transforms library, I've moved the CmpInstAnalysis code to the Analysis library.

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

llvm-svn: 310889
2017-08-14 21:39:51 +00:00
..
AddDiscriminators.h
ASanStackFrameLayout.h
BasicBlockUtils.h [Transforms/Utils] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-14 00:32:38 +00:00
BreakCriticalEdges.h
BuildLibCalls.h Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
BypassSlowDivision.h
Cloning.h Reapply "[Cloning] Take another pass at properly cloning debug info" 2017-06-01 23:02:12 +00:00
CodeExtractor.h [PartialInlining] Support shrinkwrap life_range markers 2017-06-11 20:46:05 +00:00
CtorUtils.h
EscapeEnumerator.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
Evaluator.h
FunctionComparator.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
FunctionImportUtils.h FunctionImport: Use IRMover directly. 2017-02-03 16:56:27 +00:00
GlobalStatus.h Fix modules buildbots broken in r291983. 2017-01-14 01:07:05 +00:00
ImportedFunctionsInliningStatistics.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
IntegerDivision.h
LCSSA.h
LibCallsShrinkWrap.h
Local.h All libcalls should be considered to be GC-leaf functions. 2017-07-27 16:49:39 +00:00
LoopSimplify.h Revert @llvm.assume with operator bundles (r289755-r289757) 2016-12-19 08:22:17 +00:00
LoopUtils.h [LoopUtils] Add an extra parameter OpValue to propagateIRFlags function, 2017-07-19 10:02:07 +00:00
LoopVersioning.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
LowerInvoke.h
LowerMemIntrinsics.h Extend memcpy expansion in Transform/Utils to handle wider operand types. 2017-07-07 02:00:06 +00:00
Mem2Reg.h Add EOL at EOF to appease source utils like unifdef 2017-06-12 20:08:55 +00:00
ModuleUtils.h [asan] Fix dead stripping of globals on Linux. 2017-04-27 20:27:27 +00:00
NameAnonGlobals.h [Transforms/Utils] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-14 00:32:38 +00:00
OrderedInstructions.h [OrderedInst] Add const to constant parameter. NFCI 2017-06-29 18:04:31 +00:00
PredicateInfo.h Remove inline keyword from inline classof methods 2017-06-29 19:35:17 +00:00
PromoteMemToReg.h [Mem2Reg] Remove AliasSetTracker updating logic from the pass. 2017-04-09 20:47:14 +00:00
SanitizerStats.h
SimplifyIndVar.h Rename WeakVH to WeakTrackingVH; NFC 2017-05-01 17:07:49 +00:00
SimplifyInstructions.h
SimplifyLibCalls.h Add strictfp attribute to prevent unwanted optimizations of libm calls 2017-08-14 21:15:13 +00:00
SplitModule.h
SSAUpdater.h [Target, Transforms] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-18 00:57:48 +00:00
SSAUpdaterImpl.h Remove unneeded use of #undef DEBUG_TYPE. NFC 2017-07-12 20:49:21 +00:00
SymbolRewriter.h [Transforms/Utils] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-14 00:32:38 +00:00
UnifyFunctionExitNodes.h [Transforms/Utils] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-14 00:32:38 +00:00
UnrollLoop.h [LoopUnroll] Enable option to peel remainder loop 2017-08-14 09:25:26 +00:00
ValueMapper.h fix trivial typos, NFC 2017-07-01 07:12:15 +00:00
VNCoercion.h Templatize parts of VNCoercion, and add constant-only versions of the functions to be used in NewGVN. 2017-03-20 16:08:29 +00:00