The current body of the feature is empty. This patch produces the real info describing the given MC operand. Such extended debug logging realy helped when I was working with D41595.
Details
Diff Detail
Event Timeline
| lib/Target/X86/AsmParser/X86Operand.h | ||
|---|---|---|
| 114 | If possible, I'd make this a lambda function inside the print function below and hopefully remove the need for the union. | |
A couple of minors, but no more comments from me. @craig.topper ?
| lib/Target/X86/AsmParser/X86Operand.h | ||
|---|---|---|
| 101 | Capitalization: PrintImmValue | |
| 106 | Add an assert message | |
| lib/Target/X86/AsmParser/X86Operand.h | ||
|---|---|---|
| 106 | Maybe it's better something like (instead of assertion): if (const MCSymbolRefExpr &SRE = dyn_cast<MCSymbolRefExpr>(*Val)) {
const MCSymbol &Sym = SRE.getSymbol();
if (auto SymName = Sym.getName().data())
......to be sure it can't raise exception? | |
| lib/Target/X86/AsmParser/X86Operand.h | ||
|---|---|---|
| 40 | Why isn't this part of the RegOp struct? Though I suggested a way we can remove this entirely further down. | |
| 120 | It would print lower case instead of upper case, but I think you can use X86IntelInstPrinter::getRegisterName which is a static method and then you wouldn't have to pass MRI around. | |
Why isn't this part of the RegOp struct? Though I suggested a way we can remove this entirely further down.