Why does `disassemble` behave differently on Linux and Mac?
Peng Yu via Gdb <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <CABrM6wnr7vSR-HFxUGU+6wF9x-vBMNzOYhQi5EUHRpkGj_MBmA@mail.gmail.com> |
Hi,
https://visualgdb.com/gdbreference/commands/set_disassembly-flavor
I am trying to follow the above example, but it does behave the same
on Linux and Mac. Does anybody know how to make it work on Mac?
Thanks.
On Linux:
$ uname
Linux
$ cat func.c
int func(int a, int b) {
return a + b;
}
$ gcc -c func.c
$ gdb -q func.o
Reading symbols from func.o...
(No debugging symbols found in func.o)
(gdb) show disassembly-flavor
The disassembly flavor is "att".
(gdb) disassemble func
Dump of assembler code for function func:
0x0000000000000000 <+0>: push %rbp
0x0000000000000001 <+1>: mov %rsp,%rbp
0x0000000000000004 <+4>: mov %edi,-0x4(%rbp)
0x0000000000000007 <+7>: mov %esi,-0x8(%rbp)
0x000000000000000a <+10>: mov -0x4(%rbp),%edx
0x000000000000000d <+13>: mov -0x8(%rbp),%eax
0x0000000000000010 <+16>: add %edx,%eax
0x0000000000000012 <+18>: pop %rbp
0x0000000000000013 <+19>: ret
End of assembler dump.
On Mac:
$ uname
Darwin
$ cat func.c
int func(int a, int b) {
return a + b;
}
$ gcc -c func.c
$ gdb -q func.o
Reading symbols from func.o...
(No debugging symbols found in func.o)
(gdb) show disassembly-flavor
The disassembly flavor is "att".
(gdb) disassemble func
No symbol table is loaded. Use the "file" command.
--
Regards,
Peng