aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2008-09-08 01:56:32 +0000
committerBill Wendling <isanbard@gmail.com>2008-09-08 01:56:32 +0000
commit9a0d1ba0510ef68f35c21a43861dad957759d86f (patch)
treed5dd39275a748bb3a3e3f36448ee5a344f8cb676
parentca460d5a39e09836e279405b85e2390fa7e7d859 (diff)
downloadexternal_llvm-9a0d1ba0510ef68f35c21a43861dad957759d86f.zip
external_llvm-9a0d1ba0510ef68f35c21a43861dad957759d86f.tar.gz
external_llvm-9a0d1ba0510ef68f35c21a43861dad957759d86f.tar.bz2
Revert my previous change -- the subtraction of two constants was a no-op
before. This is taken care of in the selection DAG pass. In my opinion, this should be in one place or the other. I.e., it should probably be removed from the DAG combiner (along with the other arithmetic transformations on constants that are essentially no-ops). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55889 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/CodeGen/SelectionDAG/DAGCombiner.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
index 4e49847..2d400bd 100644
--- a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+++ b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
@@ -1111,7 +1111,7 @@ SDValue DAGCombiner::visitSUB(SDNode *N) {
return DAG.getConstant(0, N->getValueType(0));
// fold (sub c1, c2) -> c1-c2
if (N0C && N1C)
- return DAG.getConstant(N0C->getAPIntValue() - N1C->getAPIntValue(), VT);
+ return DAG.getNode(ISD::SUB, VT, N0, N1);
// fold (sub x, c) -> (add x, -c)
if (N1C)
return DAG.getNode(ISD::ADD, VT, N0,