| |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/output.s: file format elf64-x86-64 |
| |
| |
| Disassembly of section .init: |
| |
| 0000000000401000 <_init>: |
| _init(): |
| 401000: f3 0f 1e fa endbr64 |
| 401004: 48 83 ec 08 sub rsp,0x8 |
| 401008: 48 8b 05 e9 2f 00 00 mov rax,QWORD PTR [rip+0x2fe9] # 403ff8 <__gmon_start__> |
| 40100f: 48 85 c0 test rax,rax |
| 401012: 74 02 je 401016 <_init+0x16> |
| 401014: ff d0 call rax |
| 401016: 48 83 c4 08 add rsp,0x8 |
| 40101a: c3 ret |
| |
| Disassembly of section .text: |
| |
| 0000000000401020 <_start>: |
| _start(): |
| 401020: f3 0f 1e fa endbr64 |
| 401024: 31 ed xor ebp,ebp |
| 401026: 49 89 d1 mov r9,rdx |
| 401029: 5e pop rsi |
| 40102a: 48 89 e2 mov rdx,rsp |
| 40102d: 48 83 e4 f0 and rsp,0xfffffffffffffff0 |
| 401031: 50 push rax |
| 401032: 54 push rsp |
| 401033: 49 c7 c0 b0 11 40 00 mov r8,0x4011b0 |
| 40103a: 48 c7 c1 40 11 40 00 mov rcx,0x401140 |
| 401041: 48 c7 c7 29 11 40 00 mov rdi,0x401129 |
| 401048: ff 15 a2 2f 00 00 call QWORD PTR [rip+0x2fa2] # 403ff0 <__libc_start_main@GLIBC_2.2.5> |
| 40104e: f4 hlt |
| 40104f: 90 nop |
| |
| 0000000000401050 <_dl_relocate_static_pie>: |
| _dl_relocate_static_pie(): |
| 401050: f3 0f 1e fa endbr64 |
| 401054: c3 ret |
| 401055: 66 2e 0f 1f 84 00 00 00 00 00 nop WORD PTR cs:[rax+rax*1+0x0] |
| 40105f: 90 nop |
| |
| 0000000000401060 <deregister_tm_clones>: |
| deregister_tm_clones(): |
| 401060: b8 28 40 40 00 mov eax,0x404028 |
| 401065: 48 3d 28 40 40 00 cmp rax,0x404028 |
| 40106b: 74 13 je 401080 <deregister_tm_clones+0x20> |
| 40106d: b8 00 00 00 00 mov eax,0x0 |
| 401072: 48 85 c0 test rax,rax |
| 401075: 74 09 je 401080 <deregister_tm_clones+0x20> |
| 401077: bf 28 40 40 00 mov edi,0x404028 |
| 40107c: ff e0 jmp rax |
| 40107e: 66 90 xchg ax,ax |
| 401080: c3 ret |
| 401081: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nop WORD PTR cs:[rax+rax*1+0x0] |
| 40108c: 0f 1f 40 00 nop DWORD PTR [rax+0x0] |
| |
| 0000000000401090 <register_tm_clones>: |
| register_tm_clones(): |
| 401090: be 28 40 40 00 mov esi,0x404028 |
| 401095: 48 81 ee 28 40 40 00 sub rsi,0x404028 |
| 40109c: 48 89 f0 mov rax,rsi |
| 40109f: 48 c1 ee 3f shr rsi,0x3f |
| 4010a3: 48 c1 f8 03 sar rax,0x3 |
| 4010a7: 48 01 c6 add rsi,rax |
| 4010aa: 48 d1 fe sar rsi,1 |
| 4010ad: 74 11 je 4010c0 <register_tm_clones+0x30> |
| 4010af: b8 00 00 00 00 mov eax,0x0 |
| 4010b4: 48 85 c0 test rax,rax |
| 4010b7: 74 07 je 4010c0 <register_tm_clones+0x30> |
| 4010b9: bf 28 40 40 00 mov edi,0x404028 |
| 4010be: ff e0 jmp rax |
| 4010c0: c3 ret |
| 4010c1: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nop WORD PTR cs:[rax+rax*1+0x0] |
| 4010cc: 0f 1f 40 00 nop DWORD PTR [rax+0x0] |
| |
| 00000000004010d0 <__do_global_dtors_aux>: |
| __do_global_dtors_aux(): |
| 4010d0: 80 3d 51 2f 00 00 00 cmp BYTE PTR [rip+0x2f51],0x0 # 404028 <__TMC_END__> |
| 4010d7: 75 17 jne 4010f0 <__do_global_dtors_aux+0x20> |
| 4010d9: 55 push rbp |
| 4010da: 48 89 e5 mov rbp,rsp |
| 4010dd: e8 7e ff ff ff call 401060 <deregister_tm_clones> |
| 4010e2: c6 05 3f 2f 00 00 01 mov BYTE PTR [rip+0x2f3f],0x1 # 404028 <__TMC_END__> |
| 4010e9: 5d pop rbp |
| 4010ea: c3 ret |
| 4010eb: 0f 1f 44 00 00 nop DWORD PTR [rax+rax*1+0x0] |
| 4010f0: c3 ret |
| 4010f1: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nop WORD PTR cs:[rax+rax*1+0x0] |
| 4010fc: 0f 1f 40 00 nop DWORD PTR [rax+0x0] |
| |
| 0000000000401100 <frame_dummy>: |
| frame_dummy(): |
| 401100: eb 8e jmp 401090 <register_tm_clones> |
| |
| 0000000000401102 <fun🤔()>: |
| _Z7fun🤔v(): |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:1 |
| 401102: 55 push rbp |
| 401103: 48 89 e5 mov rbp,rsp |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:2 |
| 401106: b8 02 00 00 00 mov eax,0x2 |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:3 |
| 40110b: 5d pop rbp |
| 40110c: c3 ret |
| |
| 000000000040110d <foo()>: |
| _Z3foov(): |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:5 |
| 40110d: 55 push rbp |
| 40110e: 48 89 e5 mov rbp,rsp |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:6 |
| 401111: c7 45 fc 02 00 00 00 mov DWORD PTR [rbp-0x4],0x2 |
| 401118: c7 45 f8 03 00 00 00 mov DWORD PTR [rbp-0x8],0x3 |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:7 |
| 40111f: 83 45 f8 01 add DWORD PTR [rbp-0x8],0x1 |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:8 |
| 401123: d1 65 fc shl DWORD PTR [rbp-0x4],1 |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:9 |
| 401126: 90 nop |
| 401127: 5d pop rbp |
| 401128: c3 ret |
| |
| 0000000000401129 <main>: |
| main(): |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:11 |
| 401129: 55 push rbp |
| 40112a: 48 89 e5 mov rbp,rsp |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:12 |
| 40112d: e8 d0 ff ff ff call 401102 <fun🤔()> |
| 401132: 90 nop |
| /tmp/compiler-explorer-compiler202096-18936-1ray3vi.419rk/example.cpp:13 |
| 401133: 5d pop rbp |
| 401134: c3 ret |
| 401135: 66 2e 0f 1f 84 00 00 00 00 00 nop WORD PTR cs:[rax+rax*1+0x0] |
| 40113f: 90 nop |
| |
| 0000000000401140 <__libc_csu_init>: |
| __libc_csu_init(): |
| 401140: f3 0f 1e fa endbr64 |
| 401144: 41 57 push r15 |
| 401146: 4c 8d 3d b3 2c 00 00 lea r15,[rip+0x2cb3] # 403e00 <__frame_dummy_init_array_entry> |
| 40114d: 41 56 push r14 |
| 40114f: 49 89 d6 mov r14,rdx |
| 401152: 41 55 push r13 |
| 401154: 49 89 f5 mov r13,rsi |
| 401157: 41 54 push r12 |
| 401159: 41 89 fc mov r12d,edi |
| 40115c: 55 push rbp |
| 40115d: 48 8d 2d a4 2c 00 00 lea rbp,[rip+0x2ca4] # 403e08 <__do_global_dtors_aux_fini_array_entry> |
| 401164: 53 push rbx |
| 401165: 4c 29 fd sub rbp,r15 |
| 401168: 48 83 ec 08 sub rsp,0x8 |
| 40116c: e8 8f fe ff ff call 401000 <_init> |
| 401171: 48 c1 fd 03 sar rbp,0x3 |
| 401175: 74 1f je 401196 <__libc_csu_init+0x56> |
| 401177: 31 db xor ebx,ebx |
| 401179: 0f 1f 80 00 00 00 00 nop DWORD PTR [rax+0x0] |
| 401180: 4c 89 f2 mov rdx,r14 |
| 401183: 4c 89 ee mov rsi,r13 |
| 401186: 44 89 e7 mov edi,r12d |
| 401189: 41 ff 14 df call QWORD PTR [r15+rbx*8] |
| 40118d: 48 83 c3 01 add rbx,0x1 |
| 401191: 48 39 dd cmp rbp,rbx |
| 401194: 75 ea jne 401180 <__libc_csu_init+0x40> |
| 401196: 48 83 c4 08 add rsp,0x8 |
| 40119a: 5b pop rbx |
| 40119b: 5d pop rbp |
| 40119c: 41 5c pop r12 |
| 40119e: 41 5d pop r13 |
| 4011a0: 41 5e pop r14 |
| 4011a2: 41 5f pop r15 |
| 4011a4: c3 ret |
| 4011a5: 66 66 2e 0f 1f 84 00 00 00 00 00 data16 nop WORD PTR cs:[rax+rax*1+0x0] |
| |
| 00000000004011b0 <__libc_csu_fini>: |
| __libc_csu_fini(): |
| 4011b0: f3 0f 1e fa endbr64 |
| 4011b4: c3 ret |
| |
| Disassembly of section .fini: |
| |
| 00000000004011b8 <_fini>: |
| _fini(): |
| 4011b8: f3 0f 1e fa endbr64 |
| 4011bc: 48 83 ec 08 sub rsp,0x8 |
| 4011c0: 48 83 c4 08 add rsp,0x8 |
| 4011c4: c3 ret |