@@ -217,24 +217,28 @@ LegalizeActionStep LegalizeRuleSet::apply(const LegalityQuery &Query) const {
217217bool LegalizeRuleSet::verifyTypeIdxsCoverage (unsigned NumTypeIdxs) const {
218218#ifndef NDEBUG
219219 if (Rules.empty ()) {
220- if (VerboseVerifyLegalizerInfo)
221- LLVM_DEBUG (
222- dbgs () << " .. type index coverage check SKIPPED: no rules defined\n " );
220+ if (VerboseVerifyLegalizerInfo) {
221+ LLVM_DEBUG (dbgs () << " .. type index coverage check SKIPPED: "
222+ << " no rules defined\n " );
223+ }
223224 return true ;
224225 }
225226 const int64_t FirstUncovered = TypeIdxsCovered.find_first_unset ();
226227 if (FirstUncovered < 0 ) {
227- if (VerboseVerifyLegalizerInfo)
228+ if (VerboseVerifyLegalizerInfo) {
228229 LLVM_DEBUG (dbgs () << " .. type index coverage check SKIPPED:"
229230 " user-defined predicate detected\n " );
231+ }
230232 return true ;
231233 }
232234 const bool AllCovered = (FirstUncovered >= NumTypeIdxs);
233- if (NumTypeIdxs > 0 )
234- if (VerboseVerifyLegalizerInfo)
235+ if (NumTypeIdxs > 0 ) {
236+ if (VerboseVerifyLegalizerInfo) {
235237 LLVM_DEBUG (dbgs () << " .. the first uncovered type index: "
236238 << FirstUncovered << " , "
237239 << (AllCovered ? " OK" : " FAIL" ) << " \n " );
240+ }
241+ }
238242 return AllCovered;
239243#else
240244 return true ;
@@ -244,22 +248,25 @@ bool LegalizeRuleSet::verifyTypeIdxsCoverage(unsigned NumTypeIdxs) const {
244248bool LegalizeRuleSet::verifyImmIdxsCoverage (unsigned NumImmIdxs) const {
245249#ifndef NDEBUG
246250 if (Rules.empty ()) {
247- if (VerboseVerifyLegalizerInfo)
248- LLVM_DEBUG (
249- dbgs () << " .. imm index coverage check SKIPPED: no rules defined\n " );
251+ if (VerboseVerifyLegalizerInfo) {
252+ LLVM_DEBUG (dbgs () << " .. imm index coverage check SKIPPED: "
253+ << " no rules defined\n " );
254+ }
250255 return true ;
251256 }
252257 const int64_t FirstUncovered = ImmIdxsCovered.find_first_unset ();
253258 if (FirstUncovered < 0 ) {
254- if (VerboseVerifyLegalizerInfo)
259+ if (VerboseVerifyLegalizerInfo) {
255260 LLVM_DEBUG (dbgs () << " .. imm index coverage check SKIPPED:"
256261 " user-defined predicate detected\n " );
262+ }
257263 return true ;
258264 }
259265 const bool AllCovered = (FirstUncovered >= NumImmIdxs);
260- if (VerboseVerifyLegalizerInfo)
266+ if (VerboseVerifyLegalizerInfo) {
261267 LLVM_DEBUG (dbgs () << " .. the first uncovered imm index: " << FirstUncovered
262268 << " , " << (AllCovered ? " OK" : " FAIL" ) << " \n " );
269+ }
263270 return AllCovered;
264271#else
265272 return true ;
@@ -287,9 +294,10 @@ unsigned LegalizerInfo::getOpcodeIdxForOpcode(unsigned Opcode) const {
287294unsigned LegalizerInfo::getActionDefinitionsIdx (unsigned Opcode) const {
288295 unsigned OpcodeIdx = getOpcodeIdxForOpcode (Opcode);
289296 if (unsigned Alias = RulesForOpcode[OpcodeIdx].getAlias ()) {
290- if (VerboseVerifyLegalizerInfo)
297+ if (VerboseVerifyLegalizerInfo) {
291298 LLVM_DEBUG (dbgs () << " .. opcode " << Opcode << " is aliased to " << Alias
292299 << " \n " );
300+ }
293301 OpcodeIdx = getOpcodeIdxForOpcode (Alias);
294302 assert (RulesForOpcode[OpcodeIdx].getAlias () == 0 && " Cannot chain aliases" );
295303 }
@@ -410,12 +418,13 @@ void LegalizerInfo::verify(const MCInstrInfo &MII) const {
410418 ? std::max (OpInfo.getGenericImmIndex () + 1U , Acc)
411419 : Acc;
412420 });
413- if (VerboseVerifyLegalizerInfo)
421+ if (VerboseVerifyLegalizerInfo) {
414422 LLVM_DEBUG (dbgs () << MII.getName (Opcode) << " (opcode " << Opcode
415423 << " ): " << NumTypeIdxs << " type ind"
416424 << (NumTypeIdxs == 1 ? " ex" : " ices" ) << " , "
417425 << NumImmIdxs << " imm ind"
418426 << (NumImmIdxs == 1 ? " ex" : " ices" ) << " \n " );
427+ }
419428 const LegalizeRuleSet &RuleSet = getActionDefinitions (Opcode);
420429 if (!RuleSet.verifyTypeIdxsCoverage (NumTypeIdxs))
421430 FailedOpcodes.push_back (Opcode);
@@ -428,8 +437,9 @@ void LegalizerInfo::verify(const MCInstrInfo &MII) const {
428437 errs () << " " << MII.getName (Opcode);
429438 errs () << " \n " ;
430439
431- report_fatal_error (" ill-defined LegalizerInfo"
432- " , try -debug-only=legalizer-info for details" );
440+ report_fatal_error (" ill-defined LegalizerInfo, try "
441+ " -debug-only=legalizer-info and "
442+ " -verbose-gisel-verify-legalizer-info for details" );
433443 }
434444#endif
435445}
0 commit comments