1.globl bar 2bar: 3 movq $0, (%rbp) 4 movl $4, %edi 5 call __cxa_allocate_exception 6 movl $0, (%rax) 7 movl $0, %edx 8 movl $_ZTIi, %esi 9 movq %rax, %rdi 10 call __cxa_throw 11 movq $17, 8 12 13.globl foo 14foo: 15.LFB1: 16 .cfi_startproc 17 .cfi_personality 0x3,__gxx_personality_v0 18 .cfi_lsda 0x3,.LLSDA1 19 pushq %rbp 20 movq %rsp, %rbp 21 pushq %rbx 22 subq $24, %rsp 23 movq %rdi, -24(%rbp) 24 incq -24(%rbp) 25 jmp .L1 26 decq (%rbp) 27.L1: incq -24(%rbp) 28 cmpq $2,-24(%rbp) 29 jne .L3 30 jmp .L4 31 decq (%rbp) 32.L3: incq -24(%rbp) 33.L4: incq -24(%rbp) 34 movq -24(%rbp), %rax 35 movq %rax, %rdi 36.LEHB0: 37 call bar 38.LEHE0: 39 movq %rax, %rbx 40 .L5: 41 movq %rbx, %rax 42 jmp .L8 43.L7: 44 movq %rax, %rdi 45 call __cxa_begin_catch 46 incq -24(%rbp) 47 jmp .LP1 48 decq (%rbp) 49.LP1: incq -24(%rbp) 50 cmpq $2,-24(%rbp) 51 jne .LP2 52 jmp .LP3 53 decq (%rbp) 54.LP2: incq -24(%rbp) 55.LP3: incq -24(%rbp) 56 movq -24(%rbp), %rbx 57.LEHB1: 58 call __cxa_end_catch 59.LEHE1: 60 jmp .L5 61.L8: 62 movq -8(%rbp), %rbx 63 leave 64 .cfi_endproc 65 66.section .gcc_except_table,"a",@progbits 67 .LLSDA1: 68 .byte 0xff 69 .byte 0x3 70 .uleb128 .LLSDATT1-.LLSDATTD1 71.LLSDATTD1: 72 .byte 0x1 73 .uleb128 .LLSDACSE1-.LLSDACSB1 74.LLSDACSB1: 75 .uleb128 .LEHB0-.LFB1 76 .uleb128 .LEHE0-.LEHB0 77 .uleb128 .L7-.LFB1 78 .uleb128 0x1 79 .LLSDACSE1: 80 .LLSDATT1: 81 82 .text 83 .globl _start, function 84_start: 85 .cfi_startproc 86 ud2 87 .cfi_endproc 88