diff options
author | Owen Anderson <resistor@mac.com> | 2014-01-20 18:41:34 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2014-01-20 18:41:34 +0000 |
commit | fb00d5bc7ccc49890c39a3896cbb0666f599211b (patch) | |
tree | ac0e3884782c5e0911f6372bf14a4501006f521c /llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | |
parent | b9023ed0f652083d5c466db3d34036280e4da572 (diff) | |
download | bcm5719-llvm-fb00d5bc7ccc49890c39a3896cbb0666f599211b.tar.gz bcm5719-llvm-fb00d5bc7ccc49890c39a3896cbb0666f599211b.zip |
Allow SMUL_LOHI and UMUL_LOHI to be narrow to MUL on targets where MUL is Custom rather than Legal. Even if the target is doing some kind of expansion for MUL, it's pretty much guaranteed to be more efficent than whatever it does for SMUL_LOHI or UMUL_LOHI!
llvm-svn: 199678
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp')
-rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index 0530dbc12b2..8205feafbdf 100644 --- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -2249,7 +2249,7 @@ SDValue DAGCombiner::SimplifyNodeWithTwoResults(SDNode *N, unsigned LoOp, bool HiExists = N->hasAnyUseOfValue(1); if (!HiExists && (!LegalOperations || - TLI.isOperationLegal(LoOp, N->getValueType(0)))) { + TLI.isOperationLegalOrCustom(LoOp, N->getValueType(0)))) { SDValue Res = DAG.getNode(LoOp, SDLoc(N), N->getValueType(0), N->op_begin(), N->getNumOperands()); return CombineTo(N, Res, Res); |