1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 12:33:33 +02:00
llvm-mirror/lib/Transforms/Utils
Sanjay Patel 138d4e067f transform fmin/fmax calls when possible (PR24314)
If we can ignore NaNs, fmin/fmax libcalls can become compare and select
(this is what we turn std::min / std::max into).

This IR should then be optimized in the backend to whatever is best for
any given target. Eg, x86 can use minss/maxss instructions.

This should solve PR24314:
https://llvm.org/bugs/show_bug.cgi?id=24314

Differential Revision: http://reviews.llvm.org/D11866

llvm-svn: 245187
2015-08-16 20:18:19 +00:00
..
AddDiscriminators.cpp
ASanStackFrameLayout.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
BasicBlockUtils.cpp Convert a bunch of loops to foreach. NFC. 2015-08-06 20:22:46 +00:00
BreakCriticalEdges.cpp Drive-by fixes for LandingPad -> EHPad 2015-08-04 08:21:40 +00:00
BuildLibCalls.cpp
BypassSlowDivision.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
CloneFunction.cpp Fix some comment typos. 2015-08-08 18:27:36 +00:00
CloneModule.cpp [Cloning] Teach CloneModule about personality functions 2015-06-30 22:14:01 +00:00
CMakeLists.txt [LoopDist/LoopVer] Move LoopVersioning to a new module, NFC 2015-07-10 18:55:13 +00:00
CmpInstAnalysis.cpp
CodeExtractor.cpp [IR] Give catchret an optional 'return value' operand 2015-08-15 02:46:08 +00:00
CtorUtils.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DemoteRegToStack.cpp [WinEHPrepare] Add rudimentary support for the new EH instructions 2015-08-11 01:15:26 +00:00
FlattenCFG.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
GlobalStatus.cpp
InlineFunction.cpp [IR] Add token types 2015-08-14 05:09:07 +00:00
InstructionNamer.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
IntegerDivision.cpp
LCSSA.cpp [IR] Give catchret an optional 'return value' operand 2015-08-15 02:46:08 +00:00
LLVMBuild.txt
Local.cpp [ConstantFoldTerminator] Preserve make.implicit metadata when converting SwitchInst to BranchInst 2015-08-07 19:30:12 +00:00
LoopSimplify.cpp Drive-by fixes for LandingPad -> EHPad 2015-08-04 08:21:40 +00:00
LoopUnroll.cpp [PM/AA] Remove all of the dead AliasAnalysis pointers being threaded 2015-07-22 09:52:54 +00:00
LoopUnrollRuntime.cpp [PM/AA] Remove all of the dead AliasAnalysis pointers being threaded 2015-07-22 09:52:54 +00:00
LoopUtils.cpp Late evaluation of the fast-math vectorization requirement. 2015-08-10 19:51:46 +00:00
LoopVersioning.cpp [LVer] Remove unused Pass parameter from versionLoop, NFC 2015-08-14 06:30:26 +00:00
LowerInvoke.cpp
LowerSwitch.cpp [LowerSwitch] Skip dead blocks for processSwitchInst() 2015-08-11 20:16:17 +00:00
Makefile
Mem2Reg.cpp
MetaRenamer.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
ModuleUtils.cpp [asan] Rename the ABI versioning symbol to '__asan_version_mismatch_check' instead of abusing '__asan_init' 2015-07-23 10:54:06 +00:00
PromoteMemoryToRegister.cpp Fix mem2reg to correctly handle allocas only used in a single block 2015-07-22 10:29:29 +00:00
SimplifyCFG.cpp Convert a bunch of loops to foreach. NFC. 2015-08-06 20:22:46 +00:00
SimplifyIndVar.cpp Fix some comment typos. 2015-08-08 18:27:36 +00:00
SimplifyInstructions.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
SimplifyLibCalls.cpp transform fmin/fmax calls when possible (PR24314) 2015-08-16 20:18:19 +00:00
SSAUpdater.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
SymbolRewriter.cpp Remove unnecessary includes 2015-08-08 00:41:53 +00:00
UnifyFunctionExitNodes.cpp
Utils.cpp
ValueMapper.cpp ValueMapper: Resolve uniquing cycles more aggressively 2015-08-07 00:44:55 +00:00