[llvm-dev] TargetRegisterInfo::getCommonSubClass bug, perhaps.

Nancy via llvm-dev llvm-dev at lists.llvm.org
Tue Aug 27 19:06:53 PDT 2019

> That doesn’t sound problematic. getCommonSubClass should have enough information to get the right register class from A and B.
> What is your description of ADDrr. It sounds to me that you allowed ADDrr destination to use SFGPR32 and that would be your problem.
> Cheers,
> -Quentin

I only allowed ADDrr use SGPR32 register class. Here's fragment of
llvm-tblgen -print-records infos.

def ADDrr {    // Instruction ABCInst ABCInstPErr
  string Namespace = "ABC";
  dag OutOperandList = (outs SGPR32:$vx);
  dag InOperandList = (ins SGPR32:$rs1, SGPR32:$rs2);
  string AsmString = "ADD.U32    $rs1, $rs2, $vx";

Best Regards,
Yu Rong Tan

More information about the llvm-dev mailing list