llvm/lib/CodeGen/SelectionDAG
Nirav Dave 35f98ce715 [ScheduleDAG] Deal with already scheduled loads in ScheduleDAG.
Summary:
If we attempt to unfold an SUnit in ScheduleDAG that results in
finding an already scheduled load, we must should abort the
unfold as it will not improve scheduling.

This fixes PR32610.

Reviewers: jmolloy, sunfish, bogner, spatel

Subscribers: llvm-commits, MatzeB

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@304321 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-31 18:43:17 +00:00
..
CMakeLists.txt [CMake] NFC. Updating CMake dependency specifications 2016-11-17 04:36:50 +00:00
DAGCombiner.cpp [DAG] Avoid use of stale store. 2017-05-31 13:36:17 +00:00
FastISel.cpp Re-land "Use the frame index side table for byval and inalloca arguments" 2017-05-09 16:02:20 +00:00
FunctionLoweringInfo.cpp Re-land "Use the frame index side table for byval and inalloca arguments" 2017-05-09 16:02:20 +00:00
InstrEmitter.cpp Move value type list from TargetRegisterClass to TargetRegisterInfo 2017-04-24 19:51:12 +00:00
InstrEmitter.h Pass DebugLoc and SDLoc by const ref. 2016-06-12 15:39:02 +00:00
LegalizeDAG.cpp [SelectionDAG] Remove special case for ISD::FPOWI from the strict FP intrinsic handling. 2017-05-30 17:12:18 +00:00
LegalizeFloatTypes.cpp Revert "[APInt] Fix a few places that use APInt::getRawData to operate within the normal API." 2017-04-23 12:15:30 +00:00
LegalizeIntegerTypes.cpp Do not legalize large add with addc/adde, introduce addcarry and do it with uaddo/addcarry 2017-04-30 19:24:09 +00:00
LegalizeTypes.cpp [MVT][SVE] Scalable vector MVTs (3/3) 2017-04-20 13:54:09 +00:00
LegalizeTypes.h Introduce experimental generic intrinsics for horizontal vector reductions. 2017-05-09 10:43:25 +00:00
LegalizeTypesGeneric.cpp [SelectionDAG] Use getBuildVector helper where possible. NFCI 2017-04-25 15:10:47 +00:00
LegalizeVectorOps.cpp DAG: Do not scalarize fsub if fneg is legal 2017-02-15 22:02:42 +00:00
LegalizeVectorTypes.cpp Introduce experimental generic intrinsics for horizontal vector reductions. 2017-05-09 10:43:25 +00:00
LLVMBuild.txt
ResourcePriorityQueue.cpp Refactoring with range-based for, NFC 2017-05-04 13:35:17 +00:00
ScheduleDAGFast.cpp Refactoring with range-based for, NFC 2017-05-04 13:35:17 +00:00
ScheduleDAGRRList.cpp [ScheduleDAG] Deal with already scheduled loads in ScheduleDAG. 2017-05-31 18:43:17 +00:00
ScheduleDAGSDNodes.cpp Remove redundant call to GluedNodes.back() [NFC] 2017-02-19 16:56:18 +00:00
ScheduleDAGSDNodes.h [Target] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-01-11 01:45:03 +00:00
ScheduleDAGVLIW.cpp
SDNodeDbgValue.h Apply clang-tidy's misc-move-constructor-init throughout LLVM. 2016-05-27 14:27:24 +00:00
SelectionDAG.cpp [ARM] Fix lowering of misaligned memcpy/memset 2017-05-26 13:59:12 +00:00
SelectionDAGBuilder.cpp Add constrained intrinsics for some libm-equivalent operations 2017-05-25 21:31:00 +00:00
SelectionDAGBuilder.h Add constrained intrinsics for some libm-equivalent operations 2017-05-25 21:31:00 +00:00
SelectionDAGDumper.cpp Introduce experimental generic intrinsics for horizontal vector reductions. 2017-05-09 10:43:25 +00:00
SelectionDAGISel.cpp Add constrained intrinsics for some libm-equivalent operations 2017-05-25 21:31:00 +00:00
SelectionDAGPrinter.cpp Make the SelectionDAG graph printer use SDNode::PersistentId labels. 2015-10-27 23:09:03 +00:00
SelectionDAGTargetInfo.cpp Rename TargetSelectionDAGInfo into SelectionDAGTargetInfo and move it to CodeGen/ 2016-01-27 16:32:26 +00:00
StatepointLowering.cpp [Statistics] Add a method to atomically update a statistic that contains a maximum 2017-05-18 00:51:39 +00:00
StatepointLowering.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
TargetLowering.cpp [KnownBits] Use !hasConflict() in asserts in place of Zero & One == 0 or similar. NFC 2017-05-23 07:18:37 +00:00