llvm-project/llvm/lib/CodeGen/SelectionDAG
Amaury Sechet 9c5d1e966b [DAGCombine] Refactor common addcarry pattern.
Summary: This pattern is no very useful per se, but it exposes optimization for toehr patterns that wouldn't kick in otherwize. It's very common and worth optimizing for.

Reviewers: jyknight, nemanjai, mkuper, spatel, RKSimon, zvi, bkramer

Subscribers: llvm-commits

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

llvm-svn: 304402
2017-06-01 10:48:04 +00:00
..
CMakeLists.txt [CMake] NFC. Updating CMake dependency specifications 2016-11-17 04:36:50 +00:00
DAGCombiner.cpp [DAGCombine] Refactor common addcarry pattern. 2017-06-01 10:48:04 +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
LLVMBuild.txt
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
ResourcePriorityQueue.cpp Refactoring with range-based for, NFC 2017-05-04 13:35:17 +00:00
SDNodeDbgValue.h Apply clang-tidy's misc-move-constructor-init throughout LLVM. 2016-05-27 14:27:24 +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
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
SelectionDAGTargetInfo.cpp
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