(gdb) disassemble _PyLong_New_no_size_check Dump of assembler code for function _PyLong_New_no_size_check: 0x00000000000b4e80 <+0>: push %r12 0x00000000000b4e82 <+2>: lea 0x18(,%rdi,4),%rsi 0x00000000000b4e8a <+10>: push %rbx 0x00000000000b4e8b <+11>: sub $0x8,%rsp 0x00000000000b4e8f <+15>: test %rsi,%rsi 0x00000000000b4e92 <+18>: js 0xb4f08 <_PyLong_New_no_size_check+136> // Check from PyObject_Malloc https://github.com/python/cpython/blob/079931d12223ec98cbf53185b90db48efa61f93f/Objects/obmalloc.c#L683 0x00000000000b4e94 <+20>: mov %rdi,%rbx 0x00000000000b4e97 <+23>: mov 0x2ee182(%rip),%rdi # 0x3a3020 <_PyObject> 0x00000000000b4e9e <+30>: callq *0x2ee184(%rip) # 0x3a3028 <_PyObject+8> 0x00000000000b4ea4 <+36>: mov %rax,%r12 0x00000000000b4ea7 <+39>: test %rax,%rax 0x00000000000b4eaa <+42>: je 0xb4f08 <_PyLong_New_no_size_check+136> 0x00000000000b4eac <+44>: mov %rbx,0x10(%rax) 0x00000000000b4eb0 <+48>: lea 0x2f1469(%rip),%rax # 0x3a6320 0x00000000000b4eb7 <+55>: mov %rax,0x8(%r12) 0x00000000000b4ebc <+60>: testb $0x2,0x2f1506(%rip) # 0x3a63c9 0x00000000000b4ec3 <+67>: jne 0xb4ee8 <_PyLong_New_no_size_check+104> 0x00000000000b4ec5 <+69>: mov 0x2c4db9(%rip),%eax # 0x379c84 <_Py_tracemalloc_config+4> 0x00000000000b4ecb <+75>: test %eax,%eax 0x00000000000b4ecd <+77>: jne 0xb4efa <_PyLong_New_no_size_check+122> 0x00000000000b4ecf <+79>: movq $0x1,(%r12) 0x00000000000b4ed7 <+87>: add $0x8,%rsp 0x00000000000b4edb <+91>: mov %r12,%rax 0x00000000000b4ede <+94>: pop %rbx 0x00000000000b4edf <+95>: pop %r12 0x00000000000b4ee1 <+97>: retq 0x00000000000b4ee2 <+98>: nopw 0x0(%rax,%rax,1) 0x00000000000b4ee8 <+104>: mov 0x2c4d96(%rip),%eax # 0x379c84 <_Py_tracemalloc_config+4> 0x00000000000b4eee <+110>: addq $0x1,0x2f142a(%rip) # 0x3a6320 0x00000000000b4ef6 <+118>: test %eax,%eax 0x00000000000b4ef8 <+120>: je 0xb4ecf <_PyLong_New_no_size_check+79> 0x00000000000b4efa <+122>: mov %r12,%rdi 0x00000000000b4efd <+125>: callq 0xaba50 <_PyTraceMalloc_NewReference> 0x00000000000b4f02 <+130>: jmp 0xb4ecf <_PyLong_New_no_size_check+79> 0x00000000000b4f04 <+132>: nopl 0x0(%rax) 0x00000000000b4f08 <+136>: callq 0xb4a70 0x00000000000b4f0d <+141>: xor %r12d,%r12d 0x00000000000b4f10 <+144>: add $0x8,%rsp 0x00000000000b4f14 <+148>: mov %r12,%rax 0x00000000000b4f17 <+151>: pop %rbx 0x00000000000b4f18 <+152>: pop %r12 0x00000000000b4f1a <+154>: retq End of assembler dump. (gdb) disassemble _pylong_new Dump of assembler code for function _pylong_new: 0x00000000000b4f20 <+0>: push %r12 0x00000000000b4f22 <+2>: lea 0x18(,%rdi,4),%rsi 0x00000000000b4f2a <+10>: push %rbx 0x00000000000b4f2b <+11>: mov %rdi,%rbx 0x00000000000b4f2e <+14>: sub $0x8,%rsp 0x00000000000b4f32 <+18>: mov 0x2ee0e7(%rip),%rdi # 0x3a3020 <_PyObject> 0x00000000000b4f39 <+25>: callq *0x2ee0e9(%rip) # 0x3a3028 <_PyObject+8> 0x00000000000b4f3f <+31>: mov %rax,%r12 0x00000000000b4f42 <+34>: test %rax,%rax 0x00000000000b4f45 <+37>: je 0xb4fa0 <_pylong_new+128> 0x00000000000b4f47 <+39>: mov %rbx,0x10(%rax) 0x00000000000b4f4b <+43>: lea 0x2f13ce(%rip),%rax # 0x3a6320 0x00000000000b4f52 <+50>: mov %rax,0x8(%r12) 0x00000000000b4f57 <+55>: testb $0x2,0x2f146b(%rip) # 0x3a63c9 0x00000000000b4f5e <+62>: jne 0xb4f80 <_pylong_new+96> 0x00000000000b4f60 <+64>: mov 0x2c4d1e(%rip),%eax # 0x379c84 <_Py_tracemalloc_config+4> 0x00000000000b4f66 <+70>: test %eax,%eax 0x00000000000b4f68 <+72>: jne 0xb4f92 <_pylong_new+114> 0x00000000000b4f6a <+74>: movq $0x1,(%r12) 0x00000000000b4f72 <+82>: add $0x8,%rsp 0x00000000000b4f76 <+86>: mov %r12,%rax 0x00000000000b4f79 <+89>: pop %rbx 0x00000000000b4f7a <+90>: pop %r12 0x00000000000b4f7c <+92>: retq 0x00000000000b4f7d <+93>: nopl (%rax) 0x00000000000b4f80 <+96>: mov 0x2c4cfe(%rip),%eax # 0x379c84 <_Py_tracemalloc_config+4> 0x00000000000b4f86 <+102>: addq $0x1,0x2f1392(%rip) # 0x3a6320 0x00000000000b4f8e <+110>: test %eax,%eax 0x00000000000b4f90 <+112>: je 0xb4f6a <_pylong_new+74> 0x00000000000b4f92 <+114>: mov %r12,%rdi 0x00000000000b4f95 <+117>: callq 0xaba50 <_PyTraceMalloc_NewReference> 0x00000000000b4f9a <+122>: jmp 0xb4f6a <_pylong_new+74> 0x00000000000b4f9c <+124>: nopl 0x0(%rax) 0x00000000000b4fa0 <+128>: callq 0xb4a70 0x00000000000b4fa5 <+133>: jmp 0xb4f72 <_pylong_new+82> End of assembler dump.