.file "" .text .globl trivial_22.test.0 .align 16, 0x90 .type trivial_22.test.0,@function trivial_22.test.0: # @trivial_22.test.0 .Leh_func_begin0: # BB#0: # %Entry subq $56, %rsp jmp .LBB0_1 .align 16, 0x90 .LBB0_2: # in Loop: Header=BB0_1 Depth=1 call inc_stack_0 .LBB0_1: # =>This Inner Loop Header: Depth=1 leaq -232(%rsp), %r14 cmpq 72(%rbp), %r14 jb .LBB0_2 # BB#3: .Ltmp3: movq %rsp, 40(%rsp) movq %rbp, 32(%rsp) movq %r15, 24(%rsp) movq 32(%rsp), %rax decq 240(%rax) movq 32(%rsp), %rax cmpq $0, 240(%rax) jns .LBB0_5 # BB#4: # %L3 movq 24(%rsp), %rax movq 32(%rsp), %rbp movq 40(%rsp), %rcx movq %rax, %r15 movq %rcx, %rsp callq suspend_0.. movq %rsp, 40(%rsp) movq %rbp, 32(%rsp) movq %r15, 24(%rsp) .LBB0_5: # %L5 movq 24(%rsp), %rax movq 32(%rsp), %rbp movq 40(%rsp), %rcx .Ltmp0: movq %rax, %r15 movq %rcx, %rsp movl $a, %esi callq trivial_22.foo.1 movq %r15, %rcx movq %rsp, %rdx .Ltmp1: # BB#6: # %L9999999999 movq %rdx, 40(%rsp) movq %rbp, 32(%rsp) movq %rcx, 24(%rsp) .LBB0_7: # %L8 movq %rax, 16(%rsp) # 8-byte Spill testb $1, %al jne .LBB0_13 # BB#8: # %L11 cmpq $128, -2(%rax) jne .LBB0_13 # BB#9: # %L9 movq %rax, %rcx movl $EXIT, %eax cmpq %rax, 6(%rcx) jne .LBB0_13 # BB#10: # %L14 movq %rcx, %rax movq 14(%rax), %rax testb $1, %al jne .LBB0_13 # BB#11: # %L16 cmpq $128, -2(%rax) jne .LBB0_13 # BB#12: # %L15 movl $badarith, %ecx cmpq %rcx, 6(%rax) je .LBB0_25 .LBB0_13: # %L10 movq 32(%rsp), %rax movq 8(%rax), %rax subq 24(%rsp), %rax cmpq $23, %rax jg .LBB0_15 # BB#14: # %L39 movq 24(%rsp), %rax movq 32(%rsp), %rbp movq 40(%rsp), %rcx movl $63, %esi movq %rax, %r15 movq %rcx, %rsp callq gc_1.. movq %rsp, 40(%rsp) movq %rbp, 32(%rsp) movq %r15, 24(%rsp) .LBB0_15: # %L38 movq 24(%rsp), %rax movq $128, (%rax) movq 24(%rsp), %rax movl $case_clause, %ecx movq %rcx, 8(%rax) movq 24(%rsp), %rax movq 16(%rsp), %rcx # 8-byte Reload movq %rcx, 16(%rax) movq 24(%rsp), %rsi leaq 24(%rsi), %rax movq %rax, 24(%rsp) movq 32(%rsp), %rbp movq 40(%rsp), %rcx addq $2, %rsi movq %rax, %r15 movq %rcx, %rsp callq erlang.error.1 movq %rsp, 40(%rsp) movq %rbp, 32(%rsp) movq %r15, 24(%rsp) movl $15, %eax movq 32(%rsp), %rbp movq 40(%rsp), %rdx movq %rdx, %rsp addq $56, %rsp ret .LBB0_16: # %L6 .Ltmp2: movq 32(%rsp), %rcx movq 168(%rcx), %rsi movq 320(%rcx), %rcx movq %rcx, 16(%rsp) # 8-byte Spill movl $throw, %ecx cmpq %rcx, %rsi jne .LBB0_18 # BB#17: # %L22 movq 16(%rsp), %rax # 8-byte Reload jmp .LBB0_7 .LBB0_18: # %L23 movl $exit, %eax cmpq %rax, %rsi jne .LBB0_22 .LBB0_19: # %L26 movq 32(%rsp), %rax movq 8(%rax), %rax subq 24(%rsp), %rax cmpq $23, %rax jg .LBB0_21 # BB#20: # %L41 movq 24(%rsp), %rax movq 32(%rsp), %rbp movq 40(%rsp), %rcx movl $63, %esi movq %rax, %r15 movq %rcx, %rsp callq gc_1.. movq %rsp, 40(%rsp) movq %rbp, 32(%rsp) movq %r15, 24(%rsp) .LBB0_21: # %L40 movq 24(%rsp), %rax movq $128, (%rax) movq 24(%rsp), %rax movl $EXIT, %ecx movq %rcx, 8(%rax) movq 24(%rsp), %rax movq 16(%rsp), %rcx # 8-byte Reload movq %rcx, 16(%rax) movq 24(%rsp), %rax leaq 24(%rax), %rcx movq %rcx, 24(%rsp) addq $2, %rax jmp .LBB0_7 .LBB0_22: # %L25 callq erlang.get_stacktrace.0 movq %rax, 8(%rsp) # 8-byte Spill movq %rsp, 40(%rsp) movq %rbp, 32(%rsp) movq %r15, 24(%rsp) movq 32(%rsp), %rax movq 8(%rax), %rax subq %r15, %rax cmpq $23, %rax jg .LBB0_24 # BB#23: # %L43 movq 24(%rsp), %rax movq 32(%rsp), %rbp movq 40(%rsp), %rcx movl $63, %esi movq %rax, %r15 movq %rcx, %rsp callq gc_1.. movq %rsp, 40(%rsp) movq %rbp, 32(%rsp) movq %r15, 24(%rsp) .LBB0_24: # %L42 movq 24(%rsp), %rax movq $128, (%rax) movq 24(%rsp), %rax movq 16(%rsp), %rcx # 8-byte Reload movq %rcx, 8(%rax) movq 24(%rsp), %rax movq 8(%rsp), %rcx # 8-byte Reload movq %rcx, 16(%rax) movq 24(%rsp), %rax leaq 24(%rax), %rcx movq %rcx, 24(%rsp) addq $2, %rax movq %rax, 16(%rsp) # 8-byte Spill jmp .LBB0_19 .LBB0_25: # %L18 movq 24(%rsp), %rax movq 32(%rsp), %rbp movq 40(%rsp), %rcx movq %rax, %r15 movq %rcx, %rsp movl $ok, %eax addq $56, %rsp ret .Ltmp4: .size trivial_22.test.0, .Ltmp4-trivial_22.test.0 .Leh_func_end0: .section .gcc_except_table,"a",@progbits .align 4 GCC_except_table0: .Lexception0: .byte 255 # @LPStart Encoding = omit .byte 3 # @TType Encoding = udata4 .uleb128 41 # @TType base offset .byte 3 # Call site Encoding = udata4 .uleb128 39 # Call site table length .Lset0 = .Leh_func_begin0-.Leh_func_begin0 # Region start .long .Lset0 .Lset1 = .Ltmp0-.Leh_func_begin0 # Region length .long .Lset1 .long 0 # Landing pad .uleb128 0 # Action .Lset2 = .Ltmp0-.Leh_func_begin0 # Region start .long .Lset2 .Lset3 = .Ltmp1-.Ltmp0 # Region length .long .Lset3 .Lset4 = .Ltmp2-.Leh_func_begin0 # Landing pad .long .Lset4 .uleb128 0 # Action .Lset5 = .Ltmp1-.Leh_func_begin0 # Region start .long .Lset5 .Lset6 = .Leh_func_end0-.Ltmp1 # Region length .long .Lset6 .long 0 # Landing pad .uleb128 0 # Action .align 4 .section .eh_frame,"aw",@progbits .LEH_frame0: .Lsection_eh_frame0: .Leh_frame_common0: .Lset7 = .Leh_frame_common_end0-.Leh_frame_common_begin0 # Length of Common Information Entry .long .Lset7 .Leh_frame_common_begin0: .long 0 # CIE Identifier Tag .byte 1 # DW_CIE_VERSION .asciz "zLR" # CIE Augmentation .uleb128 1 # CIE Code Alignment Factor .sleb128 -8 # CIE Data Alignment Factor .byte 16 # CIE Return Address Column .uleb128 2 # Augmentation Size .byte 3 # LSDA Encoding = udata4 .byte 3 # FDE Encoding = udata4 .byte 12 # DW_CFA_def_cfa .uleb128 7 # Register .uleb128 8 # Offset .byte 144 # DW_CFA_offset + Reg (16) .uleb128 1 # Offset .align 8 .Leh_frame_common_end0: .Ltrivial_22.test.0.eh: .Lset8 = .Leh_frame_end0-.Leh_frame_begin0 # Length of Frame Information Entry .long .Lset8 .Leh_frame_begin0: .Lset9 = .Leh_frame_begin0-.Leh_frame_common0 # FDE CIE offset .long .Lset9 .long .Leh_func_begin0 # FDE initial location .Lset10 = .Leh_func_end0-.Leh_func_begin0 # FDE address range .long .Lset10 .uleb128 0 # Augmentation size .byte 4 # DW_CFA_advance_loc4 .Lset11 = .Ltmp3-.Leh_func_begin0 .long .Lset11 .byte 14 # DW_CFA_def_cfa_offset .uleb128 64 # Offset .align 8 .Leh_frame_end0: .section .note.GNU-stack,"",@progbits