summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2019-12-02 23:10:57 -0800
committerCraig Topper <craig.topper@gmail.com>2019-12-02 23:39:20 -0800
commit039664db87d255570854ade5241bf53b8ce3b5a9 (patch)
treeb78632a3b74a938ca53193d6010fbd540c3ae193
parentf92000187e149a51900c05056ed644f43603fb66 (diff)
downloadbcm5719-llvm-039664db87d255570854ade5241bf53b8ce3b5a9.tar.gz
bcm5719-llvm-039664db87d255570854ade5241bf53b8ce3b5a9.zip
[LegalizeDAG] Return true from ExpandNode for some nodes that don't have expand support.
These nodes have a FIXME that they only get here because a Custom handler returned SDValue() instead of the original Op. Even though we aren't expanding them, we should return true here to prevent ConvertNodeToLibcall from also trying to process them until the FIXME has been addressed. I'm hoping to add checking to ConvertNodeToLibcall to make sure we don't give it nodes it doesn't have support for.
-rw-r--r--llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
index eab72a22cdf..70cb20e48d2 100644
--- a/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
@@ -3720,7 +3720,9 @@ bool SelectionDAGLegalize::ExpandNode(SDNode *Node) {
case ISD::INTRINSIC_WO_CHAIN:
case ISD::INTRINSIC_VOID:
// FIXME: Custom lowering for these operations shouldn't return null!
- break;
+ // Return true so that we don't call ConvertNodeToLibcall which also won't
+ // do anything.
+ return true;
}
if (!TLI.isStrictFPEnabled() && Results.empty() && Node->isStrictFPOpcode()) {
OpenPOWER on IntegriCloud