[llvm-dev] Question regarding X86::getCondFromBranch()

S. Bharadwaj Yadavalli via llvm-dev llvm-dev at lists.llvm.org
Thu Apr 11 09:46:42 PDT 2019


Hi,

I notice that the following recent addition

X86::CondCode X86::getCondFromBranch(const MachineInstr &MI) {
  switch (MI.getOpcode()) {
  default: return X86::COND_INVALID;
  case X86::JCC_1:
    return static_cast<X86::CondCode>(
        MI.getOperand(MI.getDesc().getNumOperands() - 1).getImm());
  }
}

returns an invalid condition for JCC_2 and JCC_4 conditional opcodes.

What is the suggested way to figure out the condition code for JCC_2 and JCC_4?

Should I just roll one up for myself to handle such opcodes based on
the above? Am I missing something conceptually?

Thanks,

Bharadwaj


More information about the llvm-dev mailing list