summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorFlorian Hahn <florian.hahn@arm.com>2017-01-01 13:58:27 +0000
committerFlorian Hahn <florian.hahn@arm.com>2017-01-01 13:58:27 +0000
commitf872d230ad35c2fead29a89989f1b22201361e5f (patch)
treeb6529c3529cef99ea026b2cd18fdf5a15aee2b01 /llvm/lib/CodeGen
parent74af88e63d38a324fce5b3e0e20e3d9980466046 (diff)
downloadbcm5719-llvm-f872d230ad35c2fead29a89989f1b22201361e5f.tar.gz
bcm5719-llvm-f872d230ad35c2fead29a89989f1b22201361e5f.zip
[selectiondag] Check PromotedFloats map during expansive checks.
Summary: `PromotedFloats` needs to be checked in `DAGTypeLegalizer::PerformExpensiveChecks`. This patch fixes a few type legalization failures with expansive checks for ARM fp16 tests. Reviewers: baldrick, bogner, arsenm Subscribers: arsenm, aemerson, llvm-commits Differential Revision: https://reviews.llvm.org/D28187 llvm-svn: 290796
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp b/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
index 84703425428..693f5e2120a 100644
--- a/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
@@ -117,6 +117,8 @@ void DAGTypeLegalizer::PerformExpensiveChecks() {
Mapped |= 64;
if (WidenedVectors.find(Res) != WidenedVectors.end())
Mapped |= 128;
+ if (PromotedFloats.find(Res) != PromotedFloats.end())
+ Mapped |= 256;
if (Node.getNodeId() != Processed) {
// Since we allow ReplacedValues to map deleted nodes, it may map nodes
@@ -159,6 +161,8 @@ void DAGTypeLegalizer::PerformExpensiveChecks() {
dbgs() << " SplitVectors";
if (Mapped & 128)
dbgs() << " WidenedVectors";
+ if (Mapped & 256)
+ dbgs() << " PromotedFloats";
dbgs() << "\n";
llvm_unreachable(nullptr);
}
OpenPOWER on IntegriCloud