如何在gdb中反汇编并深入探究重载运算符的底层实现机制?
- 内容介绍
- 文章标签
- 相关推荐
本文共计137个文字,预计阅读时间需要1分钟。
为了使GDB能够反汇编`bool operator==(const uint128 x, const uint128 y)`函数,您需要使用GDB的命令来查找并设置断点。以下是一个简化的步骤,不超过100字:
(gdb) p type bool operator==(const uint128 x, const uint128 y)(gdb) x/axx $eip-4
如果我有bool运算符==(const uint128& x,const uint128& y);我怎样才能让gdb反汇编呢?(gdb) p 'operator==(uint128 const&,uint128 const&)' $1 = {bool (const uint128 &, const uint128 &)} 0x401040 <operator==(uint128 const&, uint128 const&)> (gdb) disassemble $1 Dump of assembler code for function _ZeqRK7uint128S1_: 0x00401040 <_ZeqRK7uint128S1_+0>: push %ebp ... (elided) 0x00401066 <_ZeqRK7uint128S1_+38>: ret End of assembler dump. (gdb)
本文共计137个文字,预计阅读时间需要1分钟。
为了使GDB能够反汇编`bool operator==(const uint128 x, const uint128 y)`函数,您需要使用GDB的命令来查找并设置断点。以下是一个简化的步骤,不超过100字:
(gdb) p type bool operator==(const uint128 x, const uint128 y)(gdb) x/axx $eip-4
如果我有bool运算符==(const uint128& x,const uint128& y);我怎样才能让gdb反汇编呢?(gdb) p 'operator==(uint128 const&,uint128 const&)' $1 = {bool (const uint128 &, const uint128 &)} 0x401040 <operator==(uint128 const&, uint128 const&)> (gdb) disassemble $1 Dump of assembler code for function _ZeqRK7uint128S1_: 0x00401040 <_ZeqRK7uint128S1_+0>: push %ebp ... (elided) 0x00401066 <_ZeqRK7uint128S1_+38>: ret End of assembler dump. (gdb)

