[llvm-objdump] Decrease instruction indentation for non-x86
authorFangrui Song <maskray@google.com>
Thu, 11 Jun 2020 16:05:59 +0000 (09:05 -0700)
committerFangrui Song <maskray@google.com>
Thu, 11 Jun 2020 16:10:50 +0000 (09:10 -0700)
commit5ee571735ddf1f81db3df5d7328c86432209e3b4
treea72f05bd6df7120d77a0961d0c52c5febea81275
parentfac7259c81671c37140374f3e6ec1fc7472c677c
[llvm-objdump] Decrease instruction indentation for non-x86

Place the instruction at the 24th column (0-based indexing), matching
GNU objdump ARM/AArch64/powerpc/etc when the address is low.

This is beneficial for non-x86 targets which have short instruction
lengths.

```
// GNU objdump AArch64
   0:   91001062        add     x2, x3, #0x4
  400078:       91001062        add     x2, x3, #0x4
// llvm-objdump, with this patch
       0: 62 10 00 91   add     x2, x3, #4
  400078: 62 10 00 91   add     x2, x3, #4
// llvm-objdump, if we change to print a word instead of bytes in the future
       0: 91001062      add     x2, x3, #4
  400078: 91001062      add     x2, x3, #4

// GNU objdump Thumb
   0:   bf00            nop

// GNU objdump Power ISA 3.1 64-bit instruction
// 0:   00 00 10 04     plwa    r3,0
// 4:   00 00 60 a4
```

Reviewed By: jhenderson

Differential Revision: https://reviews.llvm.org/D81590
llvm/test/tools/llvm-objdump/ELF/AArch64/disassemble-align.s [new file with mode: 0644]
llvm/tools/llvm-objdump/llvm-objdump.cpp