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
Jatin Bhateja 02ddf011fb [DAGCombiner] Extending pattern detection for vector shuffle.
Summary:
If all the operands of a BUILD_VECTOR extract elements from same vector then split the
vector efficiently based on the maximum vector access index.

This will also fix PR 33784

Reviewers: zvi, delena, RKSimon, thakis

Reviewed By: RKSimon

Subscribers: chandlerc, eladcohen, llvm-commits

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

llvm-svn: 311833
2017-08-26 19:02:36 +00:00
..
CMakeLists.txt [DAG] Move BaseIndexOffset into separate Libarary. NFC. 2017-06-21 15:40:43 +00:00
DAGCombiner.cpp [DAGCombiner] Extending pattern detection for vector shuffle. 2017-08-26 19:02:36 +00:00
FastISel.cpp Use helper function instead of manually constructing DBG_VALUEs (NFC) 2017-08-01 22:37:35 +00:00
FunctionLoweringInfo.cpp ISel: Fix FastISel of swifterror values 2017-06-15 17:34:42 +00:00
InstrEmitter.cpp Remove the unused dbg.value offset from SelectionDAG (NFC) 2017-07-28 21:27:35 +00:00
InstrEmitter.h
LegalizeDAG.cpp Remove duplicate code 2017-08-24 17:02:38 +00:00
LegalizeFloatTypes.cpp [legalize-types] Clean up softening machinery. 2017-07-04 01:08:55 +00:00
LegalizeIntegerTypes.cpp Reland "[mips] Fix multiprecision arithmetic." 2017-07-13 11:28:05 +00:00
LegalizeTypes.cpp Retire the llvm.dbg.mir hack after r311594. 2017-08-23 22:02:36 +00:00
LegalizeTypes.h [SelectionDAG] Teach the vector-types operand scalarizer about SETCC 2017-08-17 08:06:36 +00:00
LegalizeTypesGeneric.cpp [legalize-types] Clean up softening machinery. 2017-07-04 01:08:55 +00:00
LegalizeVectorOps.cpp Added LLVM_FALLTHROUGH to address warning: this statement may fall through. NFC. 2017-06-03 05:11:14 +00:00
LegalizeVectorTypes.cpp [SelectionDAG] Teach the vector-types operand scalarizer about SETCC 2017-08-17 08:06:36 +00:00
LLVMBuild.txt
ResourcePriorityQueue.cpp Refactoring with range-based for, NFC 2017-05-04 13:35:17 +00:00
ScheduleDAGFast.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
ScheduleDAGRRList.cpp [ScheduleDAG] Don't schedule node with physical register interference 2017-08-01 00:28:40 +00:00
ScheduleDAGSDNodes.cpp Remove redundant call to GluedNodes.back() [NFC] 2017-02-19 16:56:18 +00:00
ScheduleDAGSDNodes.h
ScheduleDAGVLIW.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
SDNodeDbgValue.h [Debug info] Transfer DI to fragment expressions for split integer values. 2017-08-18 18:07:00 +00:00
SelectionDAG.cpp Add ‘llvm.experimental.constrained.fma‘ Intrinsic. 2017-08-24 04:18:24 +00:00
SelectionDAGAddressAnalysis.cpp [X86][DAG] Switch X86 Target to post-legalized store merge 2017-08-11 13:21:35 +00:00
SelectionDAGBuilder.cpp Add ‘llvm.experimental.constrained.fma‘ Intrinsic. 2017-08-24 04:18:24 +00:00
SelectionDAGBuilder.h Improve line debug info when translating a CaseBlock to SDNodes. 2017-08-17 16:57:13 +00:00
SelectionDAGDumper.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
SelectionDAGISel.cpp Move helper classes into anonymous namespaces. 2017-08-20 13:03:48 +00:00
SelectionDAGPrinter.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
SelectionDAGTargetInfo.cpp
StatepointLowering.cpp Reland "[SelectionDAG] Enable target specific vector scalarization of calls and returns" 2017-06-09 14:37:08 +00:00
StatepointLowering.h
TargetLowering.cpp [SelectionDAG] Use APInt::isSubsetOf. NFC 2017-06-16 23:19:14 +00:00