diff --git a/utils/TableGen/RegisterInfoEmitter.cpp b/utils/TableGen/RegisterInfoEmitter.cpp index 61d731ad73f..0e3645b1e55 100644 --- a/utils/TableGen/RegisterInfoEmitter.cpp +++ b/utils/TableGen/RegisterInfoEmitter.cpp @@ -450,8 +450,11 @@ void RegisterInfoEmitter::run(std::ostream &OS) { std::vector From = SubRegs[i]->getValueAsListOfDefs("From"); std::vector To = SubRegs[i]->getValueAsListOfDefs("To"); - assert((From.size() == To.size()) && - "SubRegSet has mismatched from/to size"); + if (From.size() != To.size()) { + cerr << "Error: register list and sub-register list not of equal length" + << " in SubRegSet\n"; + exit(1); + } // For each entry in from/to vectors, insert the to register at index for (unsigned ii = 0, ee = From.size(); ii != ee; ++ii)