================
@@ -801,9 +797,14 @@ void 
CompressInstEmitter::emitCompressInstEmitter(raw_ostream &OS,
               if (EType == EmitterType::CheckCompress)
                 CondStream << " && MI.getOperand(" << OpIdx
                            << ").getReg().isPhysical()";
-              CondStream << CondSep << TargetName << "MCRegisterClasses["
-                         << TargetName << "::" << ClassRec->getName()
-                         << "RegClassID].contains(MI.getOperand(" << OpIdx
+              CondStream << CondSep << TargetName << "MCRegisterClasses[";
+              if (ClassRec->isSubClassOf("RegClassByHwMode"))
+                CondStream << "STI.getInstrInfo().getOpRegClassID("
+                           << "MI.getDesc().operands()[" << OpIdx << "])";
+              else
+                CondStream << TargetName << "::" << ClassRec->getName()
+                           << "RegClassID";
----------------
arsenm wrote:

```suggestion
              if (ClassRec->isSubClassOf("RegClassByHwMode")) {
                CondStream << "STI.getInstrInfo().getOpRegClassID("
                           << "MI.getDesc().operands()[" << OpIdx << "])";
              } else {
                CondStream << TargetName << "::" << ClassRec->getName()
                           << "RegClassID";
              }                         
```

https://github.com/llvm/llvm-project/pull/171061
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to