1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 19:42:54 +02:00
llvm-mirror/lib/CodeGen/SelectionDAG
Matthias Braun 04b9a1e33f DAGCombiner: Improve DAGCombiner select normalization
The current code normalizes select(C0, x, select(C1, x, y)) towards
select(C0|C1, x, y) if the targets prefers that form. This patch adds an
additional rule that if the select(C1, x, y) part already exists in the
function then we want to normalize into the other direction because the
effects of reusing the existing value are bigger than transforming into
the target preferred form.

This addresses regressions following r238793, see also:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20150727/290272.html

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

llvm-svn: 245350
2015-08-18 20:48:36 +00:00
..
CMakeLists.txt
DAGCombiner.cpp DAGCombiner: Improve DAGCombiner select normalization 2015-08-18 20:48:36 +00:00
FastISel.cpp StackMap: FastISel: Add an appropriate number of immediate operands to the 2015-08-10 21:27:03 +00:00
FunctionLoweringInfo.cpp [WinEH] Calculate state numbers for the new EH representation 2015-08-18 19:07:12 +00:00
InstrEmitter.cpp Redirect DataLayout from TargetMachine to Module in SelectionDAG 2015-07-07 19:07:19 +00:00
InstrEmitter.h [SDAG] Give InstrEmitter hidden visibility 2015-07-01 14:55:10 +00:00
LegalizeDAG.cpp [CodeGen] Mark the promoted FCOPYSIGN result FP_ROUND as TRUNCating. 2015-08-13 01:32:30 +00:00
LegalizeFloatTypes.cpp Make TargetLowering::getShiftAmountTy() taking DataLayout as an argument 2015-07-09 02:09:20 +00:00
LegalizeIntegerTypes.cpp PseudoSourceValue: Replace global manager with a manager in a machine function. 2015-08-11 23:09:45 +00:00
LegalizeTypes.cpp Use more foreach loops in SelectionDAG. NFC 2015-07-14 23:43:29 +00:00
LegalizeTypes.h [CodeGen] Fix FCOPYSIGN legalization to account for mismatched types. 2015-08-04 00:32:55 +00:00
LegalizeTypesGeneric.cpp PseudoSourceValue: Replace global manager with a manager in a machine function. 2015-08-11 23:09:45 +00:00
LegalizeVectorOps.cpp Add new ISD nodes: ISD::FMINNAN and ISD::FMAXNAN 2015-08-11 09:13:05 +00:00
LegalizeVectorTypes.cpp Add new ISD nodes: ISD::FMINNAN and ISD::FMAXNAN 2015-08-11 09:13:05 +00:00
LLVMBuild.txt
Makefile
ResourcePriorityQueue.cpp Fix some comment typos. 2015-08-08 18:27:36 +00:00
ScheduleDAGFast.cpp Add allnodes() iterator range to SelectionDAG. NFC. 2015-07-14 22:10:54 +00:00
ScheduleDAGRRList.cpp Convert a bunch of loops to foreach. NFC. 2015-06-26 19:18:49 +00:00
ScheduleDAGSDNodes.cpp Add allnodes() iterator range to SelectionDAG. NFC. 2015-07-14 22:10:54 +00:00
ScheduleDAGSDNodes.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
ScheduleDAGVLIW.cpp Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
SDNodeDbgValue.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
SelectionDAG.cpp [CodeGen] Assert on getNode(FP_EXTEND) with a smaller dst type. 2015-08-13 01:10:29 +00:00
SelectionDAGBuilder.cpp Generate FMINNAN/FMINNUM/FMAXNAN/FMAXNUM from SDAGBuilder. 2015-08-17 07:13:10 +00:00
SelectionDAGBuilder.h New EH representation for MSVC compatibility 2015-07-31 17:58:14 +00:00
SelectionDAGDumper.cpp NFC SelectionDAGDumper: fix typo 2015-08-11 21:10:07 +00:00
SelectionDAGISel.cpp Move the Target way of overriding DAG Scheduler to a target hook 2015-07-28 06:18:04 +00:00
SelectionDAGPrinter.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
StatepointLowering.cpp PseudoSourceValue: Replace global manager with a manager in a machine function. 2015-08-11 23:09:45 +00:00
StatepointLowering.h [StatepointLowering] Support of the gc.relocates for invoke statepoints. 2015-05-20 11:37:25 +00:00
TargetLowering.cpp Implement target independent TLS compatible with glibc's emutls.c. 2015-07-28 16:24:05 +00:00
TargetSelectionDAGInfo.cpp Remove getDataLayout() from TargetSelectionDAGInfo (had no users) 2015-07-09 02:10:08 +00:00