From: Craig Topper Date: Sat, 18 Feb 2017 22:53:38 +0000 (+0000) Subject: [TableGen] Make sure EnforceSameSize populates the type sets if necessary. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8f60fb0d6f6554db1c2c9542d179a34d1c682f3b;p=llvm [TableGen] Make sure EnforceSameSize populates the type sets if necessary. This was found by another commit I'm working on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295578 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/utils/TableGen/CodeGenDAGPatterns.cpp b/utils/TableGen/CodeGenDAGPatterns.cpp index 4eec2e6aa3f..22c3d490c5a 100644 --- a/utils/TableGen/CodeGenDAGPatterns.cpp +++ b/utils/TableGen/CodeGenDAGPatterns.cpp @@ -644,6 +644,12 @@ bool EEVT::TypeSet::EnforceSameSize(EEVT::TypeSet &VTOperand, bool MadeChange = false; + if (isCompletelyUnknown()) + MadeChange = FillWithPossibleTypes(TP); + + if (VTOperand.isCompletelyUnknown()) + MadeChange = VTOperand.FillWithPossibleTypes(TP); + // If we know one of the types, it forces the other type agree. if (isConcrete()) { MVT IVT = getConcrete();