[llvm] [TableGen] Implement getOperandIdxName (PR #154944)

Robert Imschweiler via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 25 05:32:32 PDT 2025


================
@@ -320,3 +320,23 @@ TEST(AMDGPU, TestReverseComposeSubRegIndices) {
     }
   }
 }
+
+TEST(AMDGPU, TestGetNamedOperandIdx) {
+  std::unique_ptr<const GCNTargetMachine> TM =
+      createAMDGPUTargetMachine("amdgcn-amd-", "gfx900", "");
+  if (!TM)
+    return;
+  const MCInstrInfo *MCII = TM->getMCInstrInfo();
+
+  for (unsigned Opcode = 0, E = MCII->getNumOpcodes(); Opcode != E; ++Opcode) {
+    const MCInstrDesc &Desc = MCII->get(Opcode);
+    for (unsigned Idx = 0; Idx < Desc.getNumOperands(); ++Idx) {
+      AMDGPU::OpName OpName = AMDGPU::getOperandIdxName(Opcode, Idx);
+      if (OpName == AMDGPU::OpName::NUM_OPERAND_NAMES)
+        continue;
+      int16_t RetrievedIdx = AMDGPU::getNamedOperandIdx(Opcode, OpName);
+      EXPECT_EQ(Idx, RetrievedIdx)
----------------
ro-i wrote:

https://github.com/llvm/llvm-project/pull/155235

https://github.com/llvm/llvm-project/pull/154944


More information about the llvm-commits mailing list