]> granicus.if.org Git - llvm/commit
[DAGCombine] (x - C) - y -> (x - y) - C fold. Try 3
authorRoman Lebedev <lebedev.ri@gmail.com>
Thu, 30 May 2019 20:37:39 +0000 (20:37 +0000)
committerRoman Lebedev <lebedev.ri@gmail.com>
Thu, 30 May 2019 20:37:39 +0000 (20:37 +0000)
commit438582d3483adf1da04dd0b5c8f1c7344d4d7835
tree3103704522d093b4c2653de8235e924c902aeee3
parent97a393580c4ad72d1d505f24866c66ced7cf6634
[DAGCombine] (x - C) - y  ->  (x - y) - C  fold. Try 3

Summary:
Again only vectors affected. Frustrating. Let me take a look into that..

https://rise4fun.com/Alive/AAq

This is a recommit, originally committed in rL361852, but reverted
to investigate test-suite compile-time hangs, and then reverted in
rL362109 to fix missing constant folds that were causing
endless combine loops.

Reviewers: RKSimon, craig.topper, spatel

Reviewed By: RKSimon

Subscribers: javed.absar, JDevlieghere, llvm-commits

Tags: #llvm

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@362145 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
test/CodeGen/AArch64/sink-addsub-of-const.ll
test/CodeGen/X86/sink-addsub-of-const.ll