forked from OSchip/llvm-project
87de9a0786
``` // llvm-objdump -d output (before) 400000: e8 0b 00 00 00 callq 11 400005: e8 0b 00 00 00 callq 11 // llvm-objdump -d output (after) 400000: e8 0b 00 00 00 callq 0x400010 400005: e8 0b 00 00 00 callq 0x400015 // GNU objdump -d. The lack of 0x is not ideal because the result cannot be re-assembled 400000: e8 0b 00 00 00 callq 400010 400005: e8 0b 00 00 00 callq 400015 ``` In llvm-objdump, we pass the address of the next MCInst. Ideally we should just thread the address of the current address, unfortunately we cannot call X86MCCodeEmitter::encodeInstruction (X86MCCodeEmitter requires MCInstrInfo and MCContext) to get the length of the MCInst. MCInstPrinter::printInst has other callers (e.g llvm-mc -filetype=asm, llvm-mca) which set Address to 0. They leave MCInstPrinter::PrintBranchImmAsAddress as false and this change is a no-op for them. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D76580 |
||
---|---|---|
.. | ||
align-mode-argument-error.s | ||
asm-printing-bundle-directives.s | ||
autogen-inst-offset-align-to-end.s | ||
autogen-inst-offset-padding.s | ||
bundle-group-too-large-error.s | ||
bundle-lock-option-error.s | ||
bundle-subtarget-change-error.s | ||
different-sections.s | ||
labeloffset.s | ||
lit.local.cfg | ||
lock-without-bundle-mode-error.s | ||
long-nop-pad.s | ||
misaligned-bundle-group.s | ||
misaligned-bundle.s | ||
nesting.s | ||
pad-align-to-bundle-end.s | ||
pad-bundle-groups.s | ||
relax-at-bundle-end.s | ||
relax-in-bundle-group.s | ||
rodata-section.s | ||
section-alignment.s | ||
single-inst-bundling.s | ||
switch-section-locked-error.s | ||
unlock-without-lock-error.s |