diff options
author | Craig Topper <craig.topper@gmail.com> | 2015-11-24 08:20:45 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2015-11-24 08:20:45 +0000 |
commit | 16f1cbd1e485723195b3105d6691a7a140686dd0 (patch) | |
tree | af3d5a00bdc4c74122eb67375244017004f1b91d /llvm/utils/TableGen/CodeGenDAGPatterns.cpp | |
parent | dbfcc10e444e9ff82911807578d291b6b9fee2bc (diff) | |
download | bcm5719-llvm-16f1cbd1e485723195b3105d6691a7a140686dd0.tar.gz bcm5719-llvm-16f1cbd1e485723195b3105d6691a7a140686dd0.zip |
[TableGen] Use the other version of EnforceVectorEltTypeIs inside the TypeSet version of EnforceVectorEltTypeIs to reduce duplicated code. NFC
llvm-svn: 253963
Diffstat (limited to 'llvm/utils/TableGen/CodeGenDAGPatterns.cpp')
-rw-r--r-- | llvm/utils/TableGen/CodeGenDAGPatterns.cpp | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/llvm/utils/TableGen/CodeGenDAGPatterns.cpp b/llvm/utils/TableGen/CodeGenDAGPatterns.cpp index b28164f9d04..39dab488f45 100644 --- a/llvm/utils/TableGen/CodeGenDAGPatterns.cpp +++ b/llvm/utils/TableGen/CodeGenDAGPatterns.cpp @@ -491,22 +491,8 @@ bool EEVT::TypeSet::EnforceVectorEltTypeIs(EEVT::TypeSet &VTOperand, MVT::SimpleValueType VT = VTOperand.getConcrete(); - TypeSet InputSet(*this); + MadeChange |= EnforceVectorEltTypeIs(VT, TP); - // Filter out all the types which don't have the right element type. - for (unsigned i = 0; i != TypeVec.size(); ++i) { - assert(isVector(TypeVec[i]) && "EnforceVector didn't work"); - if (MVT(TypeVec[i]).getVectorElementType().SimpleTy != VT) { - TypeVec.erase(TypeVec.begin()+i--); - MadeChange = true; - } - } - - if (TypeVec.empty()) { // FIXME: Really want an SMLoc here! - TP.error("Type inference contradiction found, forcing '" + - InputSet.getName() + "' to have a vector element"); - return false; - } return MadeChange; } |