diff options
author | Pip Cet <pipcet@gmail.com> | 2017-04-06 17:17:15 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2017-04-06 17:20:02 +0100 |
commit | 62ecb94c4a2929c1aace3fb5470d2a5100255811 (patch) | |
tree | e2be6cbc234c3a38863d3e6899a9da01e07983a1 /opcodes/disassemble.c | |
parent | 0dedf3777db42712f460123ac0c63c49de5456f5 (diff) | |
download | fsf-binutils-gdb-62ecb94c4a2929c1aace3fb5470d2a5100255811.zip fsf-binutils-gdb-62ecb94c4a2929c1aace3fb5470d2a5100255811.tar.gz fsf-binutils-gdb-62ecb94c4a2929c1aace3fb5470d2a5100255811.tar.bz2 |
Add support for disassembling WebAssembly opcodes.
include * dis-asm.h: Add prototypes for wasm32 disassembler.
opcodes * Makefile.am: Add wasm32-dis.c.
* configure.ac: Add wasm32-dis.c to wasm32 target.
* disassemble.c: Add wasm32 disassembler code.
* wasm32-dis.c: New file.
* Makefile.in: Regenerate.
* configure: Regenerate.
* po/POTFILES.in: Regenerate.
* po/opcodes.pot: Regenerate.
gas * testsuite/gas/wasm32/allinsn.d: Adjust test for disassembler
changes.
* testsuite/gas/wasm32/disass.d: New test.
* testsuite/gas/wasm32/disass.s: New test.
* testsuite/gas/wasm32/disass-2.d: New test.
* testsuite/gas/wasm32/disass-2.s: New test.
* testsuite/gas/wasm32/reloc.d: Adjust test for changed reloc
names.
* testsuite/gas/wasm32/reloc.s: Update test for changed assembler
syntax.
* testsuite/gas/wasm32/wasm32.exp: Run new tests. Expect allinsn
test to succeed.
Diffstat (limited to 'opcodes/disassemble.c')
-rw-r--r-- | opcodes/disassemble.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/opcodes/disassemble.c b/opcodes/disassemble.c index eef0658..dd7d3a3 100644 --- a/opcodes/disassemble.c +++ b/opcodes/disassemble.c @@ -94,6 +94,7 @@ #define ARCH_vax #define ARCH_visium #define ARCH_w65 +#define ARCH_wasm32 #define ARCH_xstormy16 #define ARCH_xc16x #define ARCH_xgate @@ -474,6 +475,11 @@ disassembler (bfd *abfd) disassemble = print_insn_w65; break; #endif +#ifdef ARCH_wasm32 + case bfd_arch_wasm32: + disassemble = print_insn_wasm32; + break; +#endif #ifdef ARCH_xgate case bfd_arch_xgate: disassemble = print_insn_xgate; @@ -580,6 +586,9 @@ disassembler_usage (FILE *stream ATTRIBUTE_UNUSED) #ifdef ARCH_s390 print_s390_disassembler_options (stream); #endif +#ifdef ARCH_wasm32 + print_wasm32_disassembler_options (stream); +#endif return; } @@ -650,6 +659,11 @@ disassemble_init_for_target (struct disassemble_info * info) disassemble_init_powerpc (info); break; #endif +#ifdef ARCH_wasm32 + case bfd_arch_wasm32: + disassemble_init_wasm32 (info); + break; +#endif #ifdef ARCH_s390 case bfd_arch_s390: disassemble_init_s390 (info); |