DesignAssembler

備忘録に近い

gobjdumpのメモ

サポートされてるアーキテクチャのところがカオス



gobjdump: unrecognized option `--show-raw-address'
使用法: gobjdump
オブジェクトファイル の情報を表示する
下記のスイッチの中で最低一つは指定しなければいけません:
-a, --archive-headers Display archive header information
-f, --file-headers Display the contents of the overall file header
-p, --private-headers Display object format specific file header contents
-P, --private=OPT,OPT... Display object format specific contents
-h, --[section-]headers Display the contents of the section headers
-x, --all-headers Display the contents of all headers
-d, --disassemble Display assembler contents of executable sections
-D, --disassemble-all Display assembler contents of all sections
-S, --source Intermix source code with disassembly
-s, --full-contents Display the full contents of all sections requested
-g, --debugging Display debug information in object file
-e, --debugging-tags Display debug information using ctags style
-G, --stabs Display (in raw form) any STABS info in the file
-W[lLiaprmfFsoRt] or
--dwarf[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,
=frames-interp,=str,=loc,=Ranges,=pubtypes,
=gdb_index,=trace_info,=trace_abbrev,=trace_aranges,
=addr,=cu_index]
Display DWARF info in the file
-t, --syms Display the contents of the symbol table(s)
-T, --dynamic-syms Display the contents of the dynamic symbol table
-r, --reloc Display the relocation entries in the file
-R, --dynamic-reloc Display the dynamic relocation entries in the file
@ Read options from
-v, --version Display this program's version number
-i, --info List object formats and architectures supported
-H, --help Display this information

以下のスイッチはオプションです:
-b, --target=BFDNAME ターゲットのオブジェクト形式を BFDNAME と指定する
-m, --architecture=MACHINE ターゲットのアーキテクチャを MACHINE と指定する
-j, --section=NAME セクション NAME に関する情報のみを表示する
-M, --disassembler-options=OPT 逆アセンブラにテキスト OPT を渡す
-EB --endian=big ビッグエンディアンと見なして逆アセンブルする
-EL --endian=little リトルエンディアンと見なして逆アセンブルする
--file-start-context Include context from start of file (with -S)
-I, --include=DIR ソースファイルの検索リストにディレクトリ DIR を加える
-l, --line-numbers 出力にファイル名と行番号を含める
-F, --file-offsets 情報を表示するときにファイルオフセットを含める
-C, --demangle[=STYLE] 名前変形 (mangle)/前処理されたシンボルをデコードする
STYLE はを指定する場合は `auto', `gnu',
`lucid', `arm', `hp', `edg', `gnu-v3', `java'
または `gnat'
-w, --wide 80列以上で出力を書式整形する
-z, --disassemble-zeroes 逆アセンブル時に 0 のみのブロックをスキップしない
--start-address=ADDR アドレスが ADDR 以上のデータのみ処理する
--stop-address=ADDR アドレスが ADDR 以下のデータのみ処理する
--prefix-addresses 逆アセンブル時に完全なアドレスを併せて表示する
--[no-]show-raw-insn シンボルを使用した逆アセンブル時に十六進数を併せて表示する
--insn-width=WIDTH -d を使用時に一行の幅を WIDTH で表示する
--adjust-vma=OFFSET すべてのセクションアドレスを表示する時に OFFSET を加える
--special-syms シンボルダンプ時に特殊シンボルを含める
--prefix=PREFIX -S を使用時に絶対パスに PREFIX を加える
--prefix-strip=LEVEL -S を使用時にディレクトリ名の先頭から LEVEL 階層分取り除く
--dwarf-depth=N Do not display DIEs at depth N or greater
--dwarf-start=N Display DIEs starting with N, at the same depth
or deeper
--dwarf-check Make additional dwarf internal consistency checks.

gobjdump: サポートされているターゲット: mach-o-x86-64 elf32-bigaarch64 elf32-littleaarch64 elf64-bigaarch64 elf64-littleaarch64 ecoff-littlealpha elf64-alpha elf64-alpha-freebsd nlm32-alpha vms-alpha vms-libtxt elf32-am33lin a.out-zero-big demo64 a.out.adobe elf32-bigarc elf32-littlearc a.out-arm-netbsd coff-arm-big coff-arm-little elf32-bigarm elf32-littlearm elf32-bigarm-symbian elf32-littlearm-symbian elf32-bigarm-vxworks elf32-littlearm-vxworks pe-arm-big pe-arm-little epoc-pe-arm-big epoc-pe-arm-little pe-arm-wince-big pe-arm-wince-little pei-arm-big pei-arm-little epoc-pei-arm-big epoc-pei-arm-little pei-arm-wince-big pei-arm-wince-little elf32-avr elf32-bfin elf32-bfinfdpic b.out.big b.out.little elf32-cr16 elf32-cr16c a.out-cris elf32-cris elf32-us-cris elf32-crx elf32-d10v elf32-d30v elf32-dlx elf32-big elf32-little elf64-big elf64-little elf32-epiphany elf32-fr30 elf32-frv elf32-frvfdpic coff-h8300 elf32-h8300 coff-h8500 elf32-hppa elf32-hppa-linux elf32-hppa-netbsd elf64-hppa elf64-hppa-linux som elf32-i370 a.out-i386 a.out-i386-bsd a.out-i386-freebsd a.out-i386-lynx a.out-i386-netbsd i386os9k coff-i386 coff-go32 coff-go32-exe coff-i386-lynx elf32-i386 elf32-i386-freebsd elf32-i386-nacl elf32-i386-sol2 elf32-i386-vxworks mach-o-i386 msdos nlm32-i386 pe-i386 pei-i386 coff-i860 elf32-i860 elf32-i860-little elf32-i960 elf32-ia64-hpux-big elf64-ia64-big elf64-ia64-little elf64-ia64-hpux-big elf64-ia64-vms pei-ia64 coff-Intel-big coff-Intel-little ieee elf32-ip2k elf32-iq2000 elf64-k1om elf64-k1om-freebsd elf64-l1om elf64-l1om-freebsd elf32-lm32 elf32-m32c elf32-m32r elf32-m32rle elf32-m32r-linux elf32-m32rle-linux elf32-m68hc11 elf32-m68hc12 a.out-hp300hpux a.out-m68k-netbsd a.out-newsos3 coff-m68k coff-m68k-sysv coff-m68k-un elf32-m68k versados a.out-m88k-mach3 a.out-m88k-openbsd coff-m88kbcs elf32-m88k mach-o-be mach-o-le mach-o-fat elf32-mcore-big elf32-mcore-little pe-mcore-big pe-mcore-little pei-mcore-big pei-mcore-little elf32-mep elf32-metag elf32-microblaze a.out-mips-little ecoff-bigmips ecoff-littlemips ecoff-biglittlemips elf32-bigmips elf32-littlemips elf32-nbigmips elf32-nlittlemips elf32-ntradbigmips elf32-ntradlittlemips elf32-ntradbigmips-freebsd elf32-ntradlittlemips-freebsd elf32-tradbigmips elf32-tradlittlemips elf32-tradbigmips-freebsd elf32-tradlittlemips-freebsd elf32-bigmips-vxworks elf32-littlemips-vxworks elf64-bigmips elf64-littlemips elf64-tradbigmips elf64-tradlittlemips elf64-tradbigmips-freebsd elf64-tradlittlemips-freebsd pe-mips pei-mips elf64-mmix mmo elf32-mn10200 elf32-mn10300 elf32-bigmoxie elf32-littlemoxie elf32-msp430 elf32-msp430 elf32-mt elf32-nds32be elf32-nds32le elf32-nds32be-linux elf32-nds32le-linux elf32-bignios2 elf32-littlenios2 a.out-pc532-mach a.out-ns32k-netbsd elf32-or1k a.out-pdp11 pef pef-xlib elf32-pj elf32-pjl plugin ppcboot elf32-powerpc elf32-powerpcle elf32-powerpc-freebsd elf32-powerpc-vxworks elf64-powerpc elf64-powerpcle elf64-powerpc-freebsd nlm32-powerpc pe-powerpc pe-powerpcle pei-powerpc pei-powerpcle elf32-rl78 aixcoff64-rs6000 aix5coff64-rs6000 aixcoff-rs6000 elf32-rx-be elf32-rx-be-ns elf32-rx-le elf32-s390 elf64-s390 elf32-bigscore elf32-littlescore elf32-sh64 elf32-sh64l elf32-sh64-linux elf32-sh64big-linux elf32-sh64-nbsd elf32-sh64l-nbsd elf64-sh64 elf64-sh64l elf64-sh64-linux elf64-sh64big-linux elf64-sh64-nbsd elf64-sh64l-nbsd coff-sh coff-shl coff-sh-small coff-shl-small elf32-sh elf32-shl elf32-shbig-fdpic elf32-sh-fdpic elf32-sh-linux elf32-shbig-linux elf32-sh-nbsd elf32-shl-nbsd elf32-shl-symbian elf32-sh-vxworks elf32-shl-vxworks pe-shl pei-shl a.out-sparc-little a.out-sparc-linux a.out-sparc-lynx a.out-sparc-netbsd a.out-sunos-big coff-sparc coff-sparc-lynx elf32-sparc elf32-sparc-sol2 elf32-sparc-vxworks elf64-sparc elf64-sparc-freebsd elf64-sparc-sol2 nlm32-sparc elf32-spu sym a.out-tic30 coff-tic30 coff0-beh-c54x coff0-c54x coff1-beh-c54x coff1-c54x coff2-beh-c54x coff2-c54x elf32-tic6x-be elf32-tic6x-le coff-tic80 elf32-tilegx-be elf32-tilegx-le elf64-tilegx-be elf64-tilegx-le elf32-tilepro elf32-v850-rh850 elf32-v850 a.out-vax1k-netbsd a.out-vax-bsd a.out-vax-netbsd elf32-vax coff-w65 coff-we32k coff-x86-64 elf32-x86-64 elf32-x86-64-nacl elf64-x86-64 elf64-x86-64-freebsd elf64-x86-64-nacl elf64-x86-64-sol2 pe-x86-64 pe-bigobj-x86-64 pei-x86-64 elf32-xc16x elf32-xgate elf32-xstormy16 elf32-xtensa-be elf32-xtensa-le coff-z80 coff-z8k srec symbolsrec verilog tekhex binary ihex
gobjdump: サポートされているアーキテクチャ: aarch64 aarch64:ilp32 alpha alpha:ev4 alpha:ev5 alpha:ev6 arc arc5 base arc6 arc7 arc8 arm armv2 armv2a armv3 armv3m armv4 armv4t armv5 armv5t armv5te xscale ep9312 iwmmxt iwmmxt2 avr avr:1 avr:2 avr:25 avr:3 avr:31 avr:35 avr:4 avr:5 avr:51 avr:6 avr:100 avr:101 avr:102 avr:103 avr:104 avr:105 avr:106 avr:107 bfin cr16 cr16c cris crisv32 cris:common_v10_v32 crx d10v d10v:ts2 d10v:ts3 d30v dlx epiphany32 epiphany16 fr30 frv tomcat simple fr550 fr500 fr450 fr400 fr300 h8300 h8300h h8300s h8300hn h8300sn h8300sx h8300sxn h8500 hppa1.1 hppa2.0w hppa2.0 hppa1.0 i370:common i370:360 i370:370 i386 i386:x86-64 i386:x64-32 i8086 i386:intel i386:x86-64:intel i386:x64-32:intel i386:nacl i386:x86-64:nacl i386:x64-32:nacl i860 i960:core i960:ka_sa i960:kb_sb i960:mc i960:xa i960:ca i960:jx i960:hx ia64-elf64 ia64-elf32 ip2022ext ip2022 iq2000 iq10 k1om k1om:intel l1om l1om:intel lm32 m16c m32c m32r m32rx m32r2 m68hc11 m68hc12 m68hc12 m9s12x m9s12xg m68k m68k:68000 m68k:68008 m68k:68010 m68k:68020 m68k:68030 m68k:68040 m68k:68060 m68k:cpu32 m68k:fido m68k:isa-a:nodiv m68k:isa-a m68k:isa-a:mac m68k:isa-a:emac m68k:isa-aplus m68k:isa-aplus:mac m68k:isa-aplus:emac m68k:isa-b:nousp m68k:isa-b:nousp:mac m68k:isa-b:nousp:emac m68k:isa-b m68k:isa-b:mac m68k:isa-b:emac m68k:isa-b:float m68k:isa-b:float:mac m68k:isa-b:float:emac m68k:isa-c m68k:isa-c:mac m68k:isa-c:emac m68k:isa-c:nodiv m68k:isa-c:nodiv:mac m68k:isa-c:nodiv:emac m68k:5200 m68k:5206e m68k:5307 m68k:5407 m68k:528x m68k:521x m68k:5249 m68k:547x m68k:548x m68k:cfv4e m88k:88100 MCore mep h1 c5 metag MicroBlaze mips mips:3000 mips:3900 mips:4000 mips:4010 mips:4100 mips:4111 mips:4120 mips:4300 mips:4400 mips:4600 mips:4650 mips:5000 mips:5400 mips:5500 mips:5900 mips:6000 mips:7000 mips:8000 mips:9000 mips:10000 mips:12000 mips:14000 mips:16000 mips:16 mips:mips5 mips:isa32 mips:isa32r2 mips:isa32r3 mips:isa32r5 mips:isa32r6 mips:isa64 mips:isa64r2 mips:isa64r3 mips:isa64r5 mips:isa64r6 mips:sb1 mips:loongson_2e mips:loongson_2f mips:loongson_3a mips:octeon mips:octeon+ mips:octeon2 mips:xlr mips:micromips mmix mn10200 mn10300 am33 am33-2 moxie msp:14 MSP430 MSP430x11x1 MSP430x12 MSP430x13 MSP430x14 MSP430x15 MSP430x16 MSP430x20 MSP430x21 MSP430x22 MSP430x23 MSP430x24 MSP430x26 MSP430x31 MSP430x32 MSP430x33 MSP430x41 MSP430x42 MSP430x43 MSP430x44 MSP430x46 MSP430x47 MSP430x54 MSP430X ms1 ms1-003 ms2 n1h n1h n1h_v2 n1h_v3 n1h_v3m nios2 ns32k:32032 ns32k:32532 or1k or1knd pdp11 powerpc:common powerpc:common64 powerpc:603 powerpc:EC603e powerpc:604 powerpc:403 powerpc:601 powerpc:620 powerpc:630 powerpc:a35 powerpc:rs64ii powerpc:rs64iii powerpc:7400 powerpc:e500 powerpc:e500mc powerpc:e500mc64 powerpc:MPC8XX powerpc:750 powerpc:titan powerpc:vle powerpc:e5500 powerpc:e6500 rs6000:6000 rs6000:rs1 rs6000:rsc rs6000:rs2 rl78 rx rx s390:31-bit s390:64-bit score7 score3 sh sh2 sh2e sh-dsp sh3 sh3-nommu sh3-dsp sh3e sh4 sh4a sh4al-dsp sh4-nofpu sh4-nommu-nofpu sh4a-nofpu sh2a sh2a-nofpu sh2a-nofpu-or-sh4-nommu-nofpu sh2a-nofpu-or-sh3-nommu sh2a-or-sh4 sh2a-or-sh3e sh5 sparc sparc:sparclet sparc:sparclite sparc:v8plus sparc:v8plusa sparc:sparclite_le sparc:v9 sparc:v9a sparc:v8plusb sparc:v9b spu:256K tms320c30 tms320c4x tms320c3x tms320c54x tic6x tic80 tilegx tilegx32 tilepro v850 (using old gcc ABI) v850e3v5 (using old gcc ABI) v850e2v4 (using old gcc ABI) v850e2v3 (using old gcc ABI) v850e2 (using old gcc ABI) v850e1 (using old gcc ABI) v850e (using old gcc ABI) v850-rh850 v850e3v5 v850e2v4 v850e2v3 v850e2 v850e1 v850e vax w65 we32k:32000 xstormy16 xtensa xc16x xc16xl xc16xs xgate z80-any z80-strict z80 z80-full r800 z8001 z8002

The following AARCH64 specific disassembler options are supported for use
with the -M switch (multiple options should be separated by commas):

no-aliases Don't print instruction aliases.

aliases Do print instruction aliases.


The following ARM specific disassembler options are supported for use with
the -M switch:
reg-names-special-atpcs Select special register names used in the ATPCS
reg-names-atpcs Select register names used in the ATPCS
reg-names-apcs Select register names used in the APCS
reg-names-std Select register names used in ARM's ISA documentation
reg-names-gcc Select register names used by GCC
reg-names-raw Select raw register names
force-thumb Assume all insns are Thumb insns
no-force-thumb Examine preceding label to determine an insn's type


The following MIPS specific disassembler options are supported for use
with the -M switch (multiple options should be separated by commas):

msa Recognize MSA instructions.

virt Recognize the virtualization ASE instructions.

xpa Recognize the eXtended Physical Address (XPA) ASE instructions.

gpr-names=ABI Print GPR names according to specified ABI.
Default: based on binary being disassembled.

fpr-names=ABI Print FPR names according to specified ABI.
Default: numeric.

cp0-names=ARCH Print CP0 register names according to
specified architecture.
Default: based on binary being disassembled.

hwr-names=ARCH Print HWR names according to specified
architecture.
Default: based on binary being disassembled.

reg-names=ABI Print GPR and FPR names according to
specified ABI.

reg-names=ARCH Print CP0 register and HWR names according to
specified architecture.

For the options above, the following values are supported for "ABI":
numeric 32 n32 64

For the options above, The following values are supported for "ARCH":
numeric r3000 r3900 r4000 r4010 vr4100 vr4111 vr4120 r4300 r4400 r4600 r4650 r5000 vr5400 vr5500 r5900 r6000 rm7000 rm9000 r8000 r10000 r12000 r14000 r16000 mips5 mips32 mips32r2 mips32r3 mips32r5 mips32r6 mips64 mips64r2 mips64r3 mips64r5 mips64r6 sb1 loongson2e loongson2f loongson3a octeon octeon+ octeon2 xlr xlp


The following PPC specific disassembler options are supported for use with
the -M switch:
403, 405, 440, 464, 476, 601, 603, 604, 620, 7400, 7410, 7450, 7455,
750cl, a2, altivec, any, booke, booke32, cell, com, e300, e500, e500mc,
e500mc64, e5500, e6500, e500x2, efs, power4, power5, power6, power7,
power8, ppc, ppc32, ppc64, ppc64bridge, ppcps, pwr, pwr2, pwr4, pwr5,
pwr5x, pwr6, pwr7, pwr8, pwrx, spe, titan, vle, vsx, htm, 32, 64

The following i386/x86-64 specific disassembler options are supported for use
with the -M switch (multiple options should be separated by commas):
x86-64 Disassemble in 64bit mode
i386 Disassemble in 32bit mode
i8086 Disassemble in 16bit mode
att Display instruction in AT&T syntax
intel Display instruction in Intel syntax
att-mnemonic
Display instruction in AT&T mnemonic
intel-mnemonic
Display instruction in Intel mnemonic
addr64 Assume 64bit address size
addr32 Assume 32bit address size
addr16 Assume 16bit address size
data32 Assume 32bit data size
data16 Assume 16bit data size
suffix Always display instruction suffix in AT&T syntax

The following S/390 specific disassembler options are supported for use
with the -M switch (multiple options should be separated by commas):
esa Disassemble in ESA architecture mode
zarch Disassemble in z/Architecture mode

  • P/--private スイッチでサポートされるオプション:

For Mach-O files:
header Display the file header
section Display the segments and sections commands
map Display the section map
load Display the load commands
dysymtab Display the dynamic symbol table
codesign Display code signature
seg_split_info Display segment split info
compact_unwind Display compact unwinding info
function_starts Display start address of functions
data_in_code Display data in code entries
twolevel_hints Display the two-level namespace lookup hints table
dyld_info Display dyld information
For XCOFF files:
header Display the file header
aout Display the auxiliary header
sections Display the section headers
syms Display the symbols table
relocs Display the relocation entries
lineno Display the line number entries
loader Display loader section
except Display exception table
typchk Display type-check section
traceback Display traceback tags
toc Display toc symbols
ldinfo Display loader info in core files