mirror of
https://github.com/grin-compiler/grin.git
synced 2024-08-17 09:50:43 +03:00
update ghc codegen sample to use the same input that grin optimise
This commit is contained in:
parent
02fcd70d8d
commit
11925ff917
@ -1,105 +1,306 @@
|
||||
.text
|
||||
.file "sum.ll"
|
||||
.globl Sum_zdwsum_info$def # -- Begin function Sum_zdwsum_info$def
|
||||
.file "SumSimpleBasic.ll"
|
||||
.globl SumSimpleBasic_zdwsum_info$def # -- Begin function SumSimpleBasic_zdwsum_info$def
|
||||
.p2align 4, 0x90
|
||||
.type Sum_zdwsum_info$def,@function
|
||||
.quad 12884901904 # @"Sum_zdwsum_info$def"
|
||||
# 0x300000010
|
||||
.type SumSimpleBasic_zdwsum_info$def,@function
|
||||
.quad 4294967301 # @"SumSimpleBasic_zdwsum_info$def"
|
||||
# 0x100000005
|
||||
.quad 0 # 0x0
|
||||
.quad 14 # 0xe
|
||||
Sum_zdwsum_info$def:
|
||||
# BB#0: # %c3is
|
||||
movq %rbx, -24(%rsp)
|
||||
movq %rdi, -16(%rsp)
|
||||
movq %rsi, -32(%rsp)
|
||||
movq %r14, -40(%rsp)
|
||||
jmp .LBB0_1
|
||||
.p2align 4, 0x90
|
||||
.LBB0_2: # %c3iq
|
||||
# in Loop: Header=BB0_1 Depth=1
|
||||
movq -32(%rsp), %rax
|
||||
movq -40(%rsp), %rcx
|
||||
addq %rax, %rcx
|
||||
movq %rcx, -8(%rsp)
|
||||
incq %rax
|
||||
movq %rax, -32(%rsp)
|
||||
movq %rcx, -40(%rsp)
|
||||
.LBB0_1: # %c3ik
|
||||
# =>This Inner Loop Header: Depth=1
|
||||
movq -32(%rsp), %rax
|
||||
cmpq -16(%rsp), %rax
|
||||
jle .LBB0_2
|
||||
# BB#3: # %c3ir
|
||||
movq -40(%rsp), %rbx
|
||||
movq %rbx, -24(%rsp)
|
||||
movq (%rbp), %rax
|
||||
SumSimpleBasic_zdwsum_info$def:
|
||||
# BB#0: # %c3kG
|
||||
movq %rbx, -16(%rsp)
|
||||
movq %rbp, -24(%rsp)
|
||||
movq %r14, -8(%rsp)
|
||||
addq $-16, %rbp
|
||||
cmpq %r15, %rbp
|
||||
jae .LBB0_1
|
||||
# BB#3: # %c3kH
|
||||
movq -8(%rsp), %r14
|
||||
movq $SumSimpleBasic_zdwsum_closure$def, -16(%rsp)
|
||||
movq -8(%r13), %rax
|
||||
movq -24(%rsp), %rbp
|
||||
movl $SumSimpleBasic_zdwsum_closure$def, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB0_1: # %c3kI
|
||||
movq -24(%rsp), %rax
|
||||
movq $c3kz_info$def, -8(%rax)
|
||||
movq -8(%rsp), %rax
|
||||
movq %rax, -16(%rsp)
|
||||
addq $-8, -24(%rsp)
|
||||
testb $7, -16(%rsp)
|
||||
je .LBB0_4
|
||||
# BB#2: # %u3l2
|
||||
movq -24(%rsp), %rbp
|
||||
movq -16(%rsp), %rbx
|
||||
jmp c3kz_info$def # TAILCALL
|
||||
.LBB0_4: # %c3kA
|
||||
movq -16(%rsp), %rbx
|
||||
movq (%rbx), %rax
|
||||
movq -24(%rsp), %rbp
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end0:
|
||||
.size Sum_zdwsum_info$def, .Lfunc_end0-Sum_zdwsum_info$def
|
||||
.size SumSimpleBasic_zdwsum_info$def, .Lfunc_end0-SumSimpleBasic_zdwsum_info$def
|
||||
# -- End function
|
||||
.globl Sum_hszusumzupure2_info$def # -- Begin function Sum_hszusumzupure2_info$def
|
||||
.p2align 4, 0x90 # -- Begin function c3kz_info$def
|
||||
.type c3kz_info$def,@function
|
||||
.quad 0 # @"c3kz_info$def"
|
||||
# 0x0
|
||||
.quad 30 # 0x1e
|
||||
c3kz_info$def:
|
||||
# BB#0: # %c3kz
|
||||
movq %rbx, -16(%rsp)
|
||||
movq %rbp, -24(%rsp)
|
||||
andl $7, %ebx
|
||||
cmpq $2, %rbx
|
||||
jne .LBB1_3
|
||||
# BB#1: # %c3kE
|
||||
movq -24(%rsp), %rax
|
||||
movq $c3kO_info$def, -8(%rax)
|
||||
movq -16(%rsp), %rax
|
||||
movq 14(%rax), %rcx
|
||||
movq %rcx, -8(%rsp)
|
||||
movq 6(%rax), %rax
|
||||
movq %rax, -16(%rsp)
|
||||
movq -24(%rsp), %rax
|
||||
movq %rcx, (%rax)
|
||||
addq $-8, -24(%rsp)
|
||||
testb $7, -16(%rsp)
|
||||
je .LBB1_4
|
||||
# BB#2: # %u3l1
|
||||
movq -24(%rsp), %rbp
|
||||
movq -16(%rsp), %rbx
|
||||
jmp c3kO_info$def # TAILCALL
|
||||
.LBB1_3: # %c3kD
|
||||
movq $0, -16(%rsp)
|
||||
movq -24(%rsp), %rax
|
||||
leaq 8(%rax), %rbp
|
||||
movq %rbp, -24(%rsp)
|
||||
movq 8(%rax), %rax
|
||||
xorl %ebx, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB1_4: # %c3kP
|
||||
movq -16(%rsp), %rbx
|
||||
movq (%rbx), %rax
|
||||
movq -24(%rsp), %rbp
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end1:
|
||||
.size c3kz_info$def, .Lfunc_end1-c3kz_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3kO_info$def
|
||||
.type c3kO_info$def,@function
|
||||
.quad 1 # @"c3kO_info$def"
|
||||
# 0x1
|
||||
.quad 30 # 0x1e
|
||||
c3kO_info$def:
|
||||
# BB#0: # %c3kO
|
||||
movq $c3kT_info$def, (%rbp)
|
||||
movq 8(%rbp), %rax
|
||||
movq %rax, -8(%rsp)
|
||||
movq 7(%rbx), %rax
|
||||
movq %rax, 8(%rbp)
|
||||
movq -8(%rsp), %r14
|
||||
jmp SumSimpleBasic_zdwsum_info$def # TAILCALL
|
||||
.Lfunc_end2:
|
||||
.size c3kO_info$def, .Lfunc_end2-c3kO_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3kT_info$def
|
||||
.type c3kT_info$def,@function
|
||||
.quad 65 # @"c3kT_info$def"
|
||||
# 0x41
|
||||
.quad 30 # 0x1e
|
||||
c3kT_info$def:
|
||||
# BB#0: # %c3kT
|
||||
movq %rbx, -8(%rsp)
|
||||
movq %rbp, -16(%rsp)
|
||||
addq 8(%rbp), %rbx
|
||||
movq %rbx, -8(%rsp)
|
||||
leaq 16(%rbp), %rax
|
||||
movq %rax, -16(%rsp)
|
||||
movq 16(%rbp), %rcx
|
||||
movq %rax, %rbp
|
||||
jmpq *%rcx # TAILCALL
|
||||
.Lfunc_end3:
|
||||
.size c3kT_info$def, .Lfunc_end3-c3kT_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function s3kp_info$def
|
||||
.type s3kp_info$def,@function
|
||||
.quad 8589934592 # @"s3kp_info$def"
|
||||
# 0x200000000
|
||||
.quad 20 # 0x14
|
||||
s3kp_info$def:
|
||||
# BB#0: # %c3n4
|
||||
movq %rbp, -32(%rsp)
|
||||
movq %rbx, -24(%rsp)
|
||||
addq $-16, %rbp
|
||||
cmpq %r15, %rbp
|
||||
jae .LBB4_1
|
||||
# BB#2: # %c3n5
|
||||
movq -24(%rsp), %rbx
|
||||
movq -16(%r13), %rax
|
||||
movq -32(%rsp), %rbp
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB4_1: # %c3n6
|
||||
movq -32(%rsp), %rax
|
||||
movq $stg_upd_frame_info, -16(%rax)
|
||||
movq -24(%rsp), %rax
|
||||
movq -32(%rsp), %rcx
|
||||
movq %rax, -8(%rcx)
|
||||
movq -24(%rsp), %rbx
|
||||
movq 24(%rbx), %rsi
|
||||
movq %rsi, -8(%rsp)
|
||||
movq 16(%rbx), %r14
|
||||
incq %r14
|
||||
movq %r14, -16(%rsp)
|
||||
movq -32(%rsp), %rbp
|
||||
addq $-16, %rbp
|
||||
movq %rbp, -32(%rsp)
|
||||
jmp SumSimpleBasic_zdwupto_info$def # TAILCALL
|
||||
.Lfunc_end4:
|
||||
.size s3kp_info$def, .Lfunc_end4-s3kp_info$def
|
||||
# -- End function
|
||||
.globl SumSimpleBasic_zdwupto_info$def # -- Begin function SumSimpleBasic_zdwupto_info$def
|
||||
.p2align 4, 0x90
|
||||
.type Sum_hszusumzupure2_info$def,@function
|
||||
.quad 0 # @"Sum_hszusumzupure2_info$def"
|
||||
.type SumSimpleBasic_zdwupto_info$def,@function
|
||||
.quad 8589934604 # @"SumSimpleBasic_zdwupto_info$def"
|
||||
# 0x20000000c
|
||||
.quad 0 # 0x0
|
||||
.quad 14 # 0xe
|
||||
SumSimpleBasic_zdwupto_info$def:
|
||||
# BB#0: # %c3na
|
||||
movq %rbx, -8(%rsp)
|
||||
movq %rsi, -16(%rsp)
|
||||
movq %r14, -24(%rsp)
|
||||
addq $72, %r12
|
||||
movq %r12, -32(%rsp)
|
||||
cmpq 856(%r13), %r12
|
||||
jbe .LBB5_1
|
||||
# BB#3: # %c3ne
|
||||
movq $72, 904(%r13)
|
||||
movq -16(%rsp), %rsi
|
||||
movq -24(%rsp), %r14
|
||||
movq $SumSimpleBasic_zdwupto_closure$def, -8(%rsp)
|
||||
movq -8(%r13), %rax
|
||||
movq -32(%rsp), %r12
|
||||
movl $SumSimpleBasic_zdwupto_closure$def, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB5_1: # %c3nd
|
||||
movq -24(%rsp), %rax
|
||||
cmpq -16(%rsp), %rax
|
||||
jle .LBB5_4
|
||||
# BB#2: # %c3n9
|
||||
movq -32(%rsp), %r12
|
||||
addq $-72, %r12
|
||||
movq %r12, -32(%rsp)
|
||||
movq $SumSimpleBasic_Nil_closure+1, -8(%rsp)
|
||||
movq (%rbp), %rax
|
||||
movl $SumSimpleBasic_Nil_closure+1, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB5_4: # %c3n8
|
||||
movq -32(%rsp), %rax
|
||||
movq $s3kp_info$def, -64(%rax)
|
||||
movq -24(%rsp), %rax
|
||||
movq -32(%rsp), %rcx
|
||||
movq %rax, -48(%rcx)
|
||||
movq -16(%rsp), %rax
|
||||
movq -32(%rsp), %rcx
|
||||
movq %rax, -40(%rcx)
|
||||
movq -32(%rsp), %rax
|
||||
movq $ghczmprim_GHCziTypes_Izh_con_info, -32(%rax)
|
||||
movq -24(%rsp), %rax
|
||||
movq -32(%rsp), %rcx
|
||||
movq %rax, -24(%rcx)
|
||||
movq -32(%rsp), %rax
|
||||
movq $SumSimpleBasic_Cons_con_info, -16(%rax)
|
||||
movq -32(%rsp), %rax
|
||||
leaq -31(%rax), %rcx
|
||||
movq %rcx, -8(%rax)
|
||||
movq -32(%rsp), %rax
|
||||
leaq -64(%rax), %rcx
|
||||
movq %rcx, (%rax)
|
||||
movq -32(%rsp), %r12
|
||||
leaq -14(%r12), %rbx
|
||||
movq %rbx, -8(%rsp)
|
||||
movq (%rbp), %rax
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end5:
|
||||
.size SumSimpleBasic_zdwupto_info$def, .Lfunc_end5-SumSimpleBasic_zdwupto_info$def
|
||||
# -- End function
|
||||
.globl SumSimpleBasic_hszusumzupure2_info$def # -- Begin function SumSimpleBasic_hszusumzupure2_info$def
|
||||
.p2align 4, 0x90
|
||||
.type SumSimpleBasic_hszusumzupure2_info$def,@function
|
||||
.quad 0 # @"SumSimpleBasic_hszusumzupure2_info$def"
|
||||
# 0x0
|
||||
.quad 21 # 0x15
|
||||
Sum_hszusumzupure2_info$def:
|
||||
# BB#0: # %c3iY
|
||||
SumSimpleBasic_hszusumzupure2_info$def:
|
||||
# BB#0: # %c3pj
|
||||
subq $136, %rsp
|
||||
movq %rbp, (%rsp)
|
||||
movq %rbx, 8(%rsp)
|
||||
addq $-24, %rbp
|
||||
cmpq %r15, %rbp
|
||||
jae .LBB1_1
|
||||
# BB#4: # %c3j4
|
||||
jae .LBB6_1
|
||||
# BB#4: # %c3pt
|
||||
movq 8(%rsp), %rbx
|
||||
movq -16(%r13), %rax
|
||||
jmp .LBB1_3
|
||||
.LBB1_1: # %c3j5
|
||||
jmp .LBB6_3
|
||||
.LBB6_1: # %c3pu
|
||||
movq 8(%rsp), %rsi
|
||||
movq %r13, %rdi
|
||||
callq newCAF
|
||||
movq %rax, 16(%rsp)
|
||||
testq %rax, %rax
|
||||
je .LBB1_2
|
||||
# BB#5: # %c3iU
|
||||
je .LBB6_2
|
||||
# BB#5: # %c3pf
|
||||
movq (%rsp), %rax
|
||||
movq $stg_bh_upd_frame_info, -16(%rax)
|
||||
movq 16(%rsp), %rax
|
||||
movq (%rsp), %rcx
|
||||
movq %rax, -8(%rcx)
|
||||
movq (%rsp), %rax
|
||||
movq $c3iW_info$def, -24(%rax)
|
||||
movq $c3ph_info$def, -24(%rax)
|
||||
movq $100000, 32(%rsp) # imm = 0x186A0
|
||||
movq $1, 40(%rsp)
|
||||
movq $0, 24(%rsp)
|
||||
movq $1, 24(%rsp)
|
||||
movq (%rsp), %rbp
|
||||
addq $-24, %rbp
|
||||
movq %rbp, (%rsp)
|
||||
movq 8(%rsp), %rbx
|
||||
xorl %r14d, %r14d
|
||||
movl $1, %esi
|
||||
movl $100000, %edi # imm = 0x186A0
|
||||
movl $1, %r14d
|
||||
movl $100000, %esi # imm = 0x186A0
|
||||
addq $136, %rsp
|
||||
jmp Sum_zdwsum_info$def # TAILCALL
|
||||
.LBB1_2: # %c3iV
|
||||
jmp SumSimpleBasic_zdwupto_info$def # TAILCALL
|
||||
.LBB6_2: # %c3pg
|
||||
movq 8(%rsp), %rbx
|
||||
movq (%rbx), %rax
|
||||
.LBB1_3: # %c3iV
|
||||
.LBB6_3: # %c3pg
|
||||
movq (%rsp), %rbp
|
||||
addq $136, %rsp
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end1:
|
||||
.size Sum_hszusumzupure2_info$def, .Lfunc_end1-Sum_hszusumzupure2_info$def
|
||||
.Lfunc_end6:
|
||||
.size SumSimpleBasic_hszusumzupure2_info$def, .Lfunc_end6-SumSimpleBasic_hszusumzupure2_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3iW_info$def
|
||||
.type c3iW_info$def,@function
|
||||
.quad 0 # @"c3iW_info$def"
|
||||
.p2align 4, 0x90 # -- Begin function c3ph_info$def
|
||||
.type c3ph_info$def,@function
|
||||
.quad 0 # @"c3ph_info$def"
|
||||
# 0x0
|
||||
.quad 30 # 0x1e
|
||||
c3iW_info$def:
|
||||
# BB#0: # %c3iW
|
||||
movq $c3j1_info$def, (%rbp)
|
||||
c3ph_info$def:
|
||||
# BB#0: # %c3ph
|
||||
movq $c3pm_info$def, (%rbp)
|
||||
movq %rbx, -8(%rsp)
|
||||
movq %rbx, %r14
|
||||
jmp SumSimpleBasic_zdwsum_info$def # TAILCALL
|
||||
.Lfunc_end7:
|
||||
.size c3ph_info$def, .Lfunc_end7-c3ph_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3pm_info$def
|
||||
.type c3pm_info$def,@function
|
||||
.quad 0 # @"c3pm_info$def"
|
||||
# 0x0
|
||||
.quad 30 # 0x1e
|
||||
c3pm_info$def:
|
||||
# BB#0: # %c3pm
|
||||
movq $c3pq_info$def, (%rbp)
|
||||
movq $ghczmprim_GHCziTypes_ZMZN_closure+1, -8(%rsp)
|
||||
movq %rbx, -16(%rsp)
|
||||
movq $0, -24(%rsp)
|
||||
@ -107,31 +308,31 @@ c3iW_info$def:
|
||||
movl $ghczmprim_GHCziTypes_ZMZN_closure+1, %edi
|
||||
movq %rbx, %rsi
|
||||
jmp base_GHCziShow_zdwshowSignedInt_info # TAILCALL
|
||||
.Lfunc_end2:
|
||||
.size c3iW_info$def, .Lfunc_end2-c3iW_info$def
|
||||
.Lfunc_end8:
|
||||
.size c3pm_info$def, .Lfunc_end8-c3pm_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3j1_info$def
|
||||
.type c3j1_info$def,@function
|
||||
.quad 0 # @"c3j1_info$def"
|
||||
.p2align 4, 0x90 # -- Begin function c3pq_info$def
|
||||
.type c3pq_info$def,@function
|
||||
.quad 0 # @"c3pq_info$def"
|
||||
# 0x0
|
||||
.quad 30 # 0x1e
|
||||
c3j1_info$def:
|
||||
# BB#0: # %c3j1
|
||||
c3pq_info$def:
|
||||
# BB#0: # %c3pq
|
||||
movq %rbx, -16(%rsp)
|
||||
movq %rbp, -24(%rsp)
|
||||
movq %r14, -8(%rsp)
|
||||
addq $24, %r12
|
||||
movq %r12, -32(%rsp)
|
||||
cmpq 856(%r13), %r12
|
||||
jbe .LBB3_1
|
||||
# BB#2: # %c3j9
|
||||
jbe .LBB9_1
|
||||
# BB#2: # %c3pz
|
||||
movq $24, 904(%r13)
|
||||
movq -8(%rsp), %r14
|
||||
movq -16(%rsp), %rbx
|
||||
movq -24(%rsp), %rbp
|
||||
movq -32(%rsp), %r12
|
||||
jmp stg_gc_pp # TAILCALL
|
||||
.LBB3_1: # %c3j8
|
||||
.LBB9_1: # %c3py
|
||||
movq -32(%rsp), %rax
|
||||
movq $ghczmprim_GHCziTypes_ZC_con_info, -16(%rax)
|
||||
movq -16(%rsp), %rax
|
||||
@ -148,145 +349,413 @@ c3j1_info$def:
|
||||
movq %rbp, -24(%rsp)
|
||||
movq 8(%rax), %rax
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end3:
|
||||
.size c3j1_info$def, .Lfunc_end3-c3j1_info$def
|
||||
.Lfunc_end9:
|
||||
.size c3pq_info$def, .Lfunc_end9-c3pq_info$def
|
||||
# -- End function
|
||||
.globl Sum_hszusumzupure1_info$def # -- Begin function Sum_hszusumzupure1_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure1_info$def # -- Begin function SumSimpleBasic_hszusumzupure1_info$def
|
||||
.p2align 4, 0x90
|
||||
.type Sum_hszusumzupure1_info$def,@function
|
||||
.quad S3kT_srt-Sum_hszusumzupure1_info$def # @"Sum_hszusumzupure1_info$def"
|
||||
.type SumSimpleBasic_hszusumzupure1_info$def,@function
|
||||
.quad S3rl_srt-SumSimpleBasic_hszusumzupure1_info$def # @"SumSimpleBasic_hszusumzupure1_info$def"
|
||||
.quad 4294967299 # 0x100000003
|
||||
.quad 0 # 0x0
|
||||
.quad 30064771086 # 0x70000000e
|
||||
Sum_hszusumzupure1_info$def:
|
||||
# BB#0: # %c3kQ
|
||||
SumSimpleBasic_hszusumzupure1_info$def:
|
||||
# BB#0: # %c3ri
|
||||
movq $ghczmprim_GHCziTypes_True_closure+2, -8(%rsp)
|
||||
movq $Sum_hszusumzupure2_closure$def, -16(%rsp)
|
||||
movq $SumSimpleBasic_hszusumzupure2_closure$def, -16(%rsp)
|
||||
movq $base_GHCziIOziHandleziFD_stdout_closure, -24(%rsp)
|
||||
movl $base_GHCziIOziHandleziFD_stdout_closure, %r14d
|
||||
movl $Sum_hszusumzupure2_closure$def, %esi
|
||||
movl $SumSimpleBasic_hszusumzupure2_closure$def, %esi
|
||||
movl $ghczmprim_GHCziTypes_True_closure+2, %edi
|
||||
jmp base_GHCziIOziHandleziText_hPutStr2_info # TAILCALL
|
||||
.Lfunc_end4:
|
||||
.size Sum_hszusumzupure1_info$def, .Lfunc_end4-Sum_hszusumzupure1_info$def
|
||||
.Lfunc_end10:
|
||||
.size SumSimpleBasic_hszusumzupure1_info$def, .Lfunc_end10-SumSimpleBasic_hszusumzupure1_info$def
|
||||
# -- End function
|
||||
.globl Sum_hszusumzupure_info$def # -- Begin function Sum_hszusumzupure_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure_info$def # -- Begin function SumSimpleBasic_hszusumzupure_info$def
|
||||
.p2align 4, 0x90
|
||||
.type Sum_hszusumzupure_info$def,@function
|
||||
.quad (S3kT_srt-Sum_hszusumzupure_info$def)+24 # @"Sum_hszusumzupure_info$def"
|
||||
.type SumSimpleBasic_hszusumzupure_info$def,@function
|
||||
.quad (S3rl_srt-SumSimpleBasic_hszusumzupure_info$def)+24 # @"SumSimpleBasic_hszusumzupure_info$def"
|
||||
.quad 4294967299 # 0x100000003
|
||||
.quad 0 # 0x0
|
||||
.quad 4294967310 # 0x10000000e
|
||||
Sum_hszusumzupure_info$def:
|
||||
# BB#0: # %c3l6
|
||||
jmp Sum_hszusumzupure1_info$def # TAILCALL
|
||||
.Lfunc_end5:
|
||||
.size Sum_hszusumzupure_info$def, .Lfunc_end5-Sum_hszusumzupure_info$def
|
||||
SumSimpleBasic_hszusumzupure_info$def:
|
||||
# BB#0: # %c3ry
|
||||
jmp SumSimpleBasic_hszusumzupure1_info$def # TAILCALL
|
||||
.Lfunc_end11:
|
||||
.size SumSimpleBasic_hszusumzupure_info$def, .Lfunc_end11-SumSimpleBasic_hszusumzupure_info$def
|
||||
# -- End function
|
||||
.type Sum_zdtrModule4_bytes$def,@object # @"Sum_zdtrModule4_bytes$def"
|
||||
.section .rodata,"a",@progbits
|
||||
Sum_zdtrModule4_bytes$def:
|
||||
.asciz "main"
|
||||
.size Sum_zdtrModule4_bytes$def, 5
|
||||
|
||||
.type Sum_zdtrModule3_closure$def,@object # @"Sum_zdtrModule3_closure$def"
|
||||
.data
|
||||
.p2align 3
|
||||
Sum_zdtrModule3_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad Sum_zdtrModule4_bytes$def
|
||||
.size Sum_zdtrModule3_closure$def, 16
|
||||
|
||||
.type Sum_zdtrModule2_bytes$def,@object # @"Sum_zdtrModule2_bytes$def"
|
||||
.section .rodata,"a",@progbits
|
||||
Sum_zdtrModule2_bytes$def:
|
||||
.asciz "Sum"
|
||||
.size Sum_zdtrModule2_bytes$def, 4
|
||||
|
||||
.type Sum_zdtrModule1_closure$def,@object # @"Sum_zdtrModule1_closure$def"
|
||||
.data
|
||||
.p2align 3
|
||||
Sum_zdtrModule1_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad Sum_zdtrModule2_bytes$def
|
||||
.size Sum_zdtrModule1_closure$def, 16
|
||||
|
||||
.type Sum_zdtrModule_closure$def,@object # @"Sum_zdtrModule_closure$def"
|
||||
.p2align 4
|
||||
Sum_zdtrModule_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_Module_con_info
|
||||
.quad Sum_zdtrModule3_closure$def+1
|
||||
.quad Sum_zdtrModule1_closure$def+1
|
||||
.p2align 4, 0x90 # -- Begin function SumSimpleBasic_Cons_info$def
|
||||
.type SumSimpleBasic_Cons_info$def,@function
|
||||
.quad 8589934607 # @"SumSimpleBasic_Cons_info$def"
|
||||
# 0x20000000f
|
||||
.quad 0 # 0x0
|
||||
.quad 14 # 0xe
|
||||
SumSimpleBasic_Cons_info$def:
|
||||
# BB#0: # %c3rH
|
||||
movq %rbx, -8(%rsp)
|
||||
movq %rsi, -16(%rsp)
|
||||
movq %r14, -24(%rsp)
|
||||
addq $24, %r12
|
||||
movq %r12, -32(%rsp)
|
||||
cmpq 856(%r13), %r12
|
||||
jbe .LBB12_1
|
||||
# BB#2: # %c3rL
|
||||
movq $24, 904(%r13)
|
||||
movq -16(%rsp), %rsi
|
||||
movq -24(%rsp), %r14
|
||||
movq $SumSimpleBasic_Cons_closure$def, -8(%rsp)
|
||||
movq -8(%r13), %rax
|
||||
movq -32(%rsp), %r12
|
||||
movl $SumSimpleBasic_Cons_closure$def, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB12_1: # %c3rK
|
||||
movq -32(%rsp), %rax
|
||||
movq $SumSimpleBasic_Cons_con_info, -16(%rax)
|
||||
movq -24(%rsp), %rax
|
||||
movq -32(%rsp), %rcx
|
||||
movq %rax, -8(%rcx)
|
||||
movq -16(%rsp), %rax
|
||||
movq -32(%rsp), %rcx
|
||||
movq %rax, (%rcx)
|
||||
movq -32(%rsp), %r12
|
||||
leaq -14(%r12), %rbx
|
||||
movq %rbx, -8(%rsp)
|
||||
movq (%rbp), %rax
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end12:
|
||||
.size SumSimpleBasic_Cons_info$def, .Lfunc_end12-SumSimpleBasic_Cons_info$def
|
||||
# -- End function
|
||||
.globl SumSimpleBasic_Nil_con_info$def # -- Begin function SumSimpleBasic_Nil_con_info$def
|
||||
.p2align 4, 0x90
|
||||
.type SumSimpleBasic_Nil_con_info$def,@function
|
||||
.quad i3st_str$def-SumSimpleBasic_Nil_con_info$def # @"SumSimpleBasic_Nil_con_info$def"
|
||||
.quad 4294967296 # 0x100000000
|
||||
.quad 3 # 0x3
|
||||
.size Sum_zdtrModule_closure$def, 32
|
||||
|
||||
.type Sum_zdwsum_closure$def,@object # @"Sum_zdwsum_closure$def"
|
||||
.p2align 3
|
||||
Sum_zdwsum_closure$def:
|
||||
.quad Sum_zdwsum_info$def
|
||||
.size Sum_zdwsum_closure$def, 8
|
||||
|
||||
.type Sum_hszusumzupure2_closure$def,@object # @"Sum_hszusumzupure2_closure$def"
|
||||
.p2align 4
|
||||
Sum_hszusumzupure2_closure$def:
|
||||
.quad Sum_hszusumzupure2_info$def
|
||||
.quad 0 # 0x0
|
||||
.quad 0 # 0x0
|
||||
.quad 0 # 0x0
|
||||
.size Sum_hszusumzupure2_closure$def, 32
|
||||
|
||||
.type Sum_hszusumzupure1_closure$def,@object # @"Sum_hszusumzupure1_closure$def"
|
||||
.p2align 3
|
||||
Sum_hszusumzupure1_closure$def:
|
||||
.quad Sum_hszusumzupure1_info$def
|
||||
.quad 0 # 0x0
|
||||
.size Sum_hszusumzupure1_closure$def, 16
|
||||
|
||||
.type Sum_hszusumzupure_closure$def,@object # @"Sum_hszusumzupure_closure$def"
|
||||
.p2align 3
|
||||
Sum_hszusumzupure_closure$def:
|
||||
.quad Sum_hszusumzupure_info$def
|
||||
.quad 0 # 0x0
|
||||
.size Sum_hszusumzupure_closure$def, 16
|
||||
|
||||
.type S3kT_srt$def,@object # @"S3kT_srt$def"
|
||||
SumSimpleBasic_Nil_con_info$def:
|
||||
# BB#0: # %c3ss
|
||||
incq %rbx
|
||||
movq %rbx, -8(%rsp)
|
||||
movq (%rbp), %rax
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end13:
|
||||
.size SumSimpleBasic_Nil_con_info$def, .Lfunc_end13-SumSimpleBasic_Nil_con_info$def
|
||||
# -- End function
|
||||
.globl SumSimpleBasic_Cons_con_info$def # -- Begin function SumSimpleBasic_Cons_con_info$def
|
||||
.p2align 4, 0x90
|
||||
.type SumSimpleBasic_Cons_con_info$def,@function
|
||||
.quad i3sD_str$def-SumSimpleBasic_Cons_con_info$def # @"SumSimpleBasic_Cons_con_info$def"
|
||||
.quad 2 # 0x2
|
||||
.quad 4294967300 # 0x100000004
|
||||
SumSimpleBasic_Cons_con_info$def:
|
||||
# BB#0: # %c3sC
|
||||
addq $2, %rbx
|
||||
movq %rbx, -8(%rsp)
|
||||
movq (%rbp), %rax
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end14:
|
||||
.size SumSimpleBasic_Cons_con_info$def, .Lfunc_end14-SumSimpleBasic_Cons_con_info$def
|
||||
# -- End function
|
||||
.type SumSimpleBasic_zdtrModule4_bytes$def,@object # @"SumSimpleBasic_zdtrModule4_bytes$def"
|
||||
.section .rodata,"a",@progbits
|
||||
SumSimpleBasic_zdtrModule4_bytes$def:
|
||||
.asciz "main"
|
||||
.size SumSimpleBasic_zdtrModule4_bytes$def, 5
|
||||
|
||||
.type SumSimpleBasic_zdtrModule3_closure$def,@object # @"SumSimpleBasic_zdtrModule3_closure$def"
|
||||
.data
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtrModule3_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtrModule4_bytes$def
|
||||
.size SumSimpleBasic_zdtrModule3_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_zdtrModule2_bytes$def,@object # @"SumSimpleBasic_zdtrModule2_bytes$def"
|
||||
.section .rodata,"a",@progbits
|
||||
SumSimpleBasic_zdtrModule2_bytes$def:
|
||||
.asciz "SumSimpleBasic"
|
||||
.size SumSimpleBasic_zdtrModule2_bytes$def, 15
|
||||
|
||||
.type SumSimpleBasic_zdtrModule1_closure$def,@object # @"SumSimpleBasic_zdtrModule1_closure$def"
|
||||
.data
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtrModule1_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtrModule2_bytes$def
|
||||
.size SumSimpleBasic_zdtrModule1_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_zdtrModule_closure$def,@object # @"SumSimpleBasic_zdtrModule_closure$def"
|
||||
.p2align 4
|
||||
S3kT_srt$def:
|
||||
SumSimpleBasic_zdtrModule_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_Module_con_info
|
||||
.quad SumSimpleBasic_zdtrModule3_closure$def+1
|
||||
.quad SumSimpleBasic_zdtrModule1_closure$def+1
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtrModule_closure$def, 32
|
||||
|
||||
.type r3k9_closure$def,@object # @"r3k9_closure$def"
|
||||
.p2align 3
|
||||
r3k9_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_KindRepVar_con_info
|
||||
.quad 0 # 0x0
|
||||
.size r3k9_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_zdtcList2_bytes$def,@object # @"SumSimpleBasic_zdtcList2_bytes$def"
|
||||
.section .rodata,"a",@progbits
|
||||
SumSimpleBasic_zdtcList2_bytes$def:
|
||||
.asciz "List"
|
||||
.size SumSimpleBasic_zdtcList2_bytes$def, 5
|
||||
|
||||
.type SumSimpleBasic_zdtcList1_closure$def,@object # @"SumSimpleBasic_zdtcList1_closure$def"
|
||||
.data
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtcList1_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtcList2_bytes$def
|
||||
.size SumSimpleBasic_zdtcList1_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_zdtcList_closure$def,@object # @"SumSimpleBasic_zdtcList_closure$def"
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtcList_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TyCon_con_info
|
||||
.quad SumSimpleBasic_zdtrModule_closure$def+1
|
||||
.quad SumSimpleBasic_zdtcList1_closure$def+1
|
||||
.quad ghczmprim_GHCziTypes_krepzdztArrzt_closure
|
||||
.quad 8125128733883036046 # 0x70c24188e16af18e
|
||||
.quad 8522174167308563467 # 0x7644d840b46ff40b
|
||||
.quad 0 # 0x0
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtcList_closure$def, 64
|
||||
|
||||
.type r3ka_closure$def,@object # @"r3ka_closure$def"
|
||||
.p2align 4
|
||||
r3ka_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_ZC_con_info
|
||||
.quad r3k9_closure$def+2
|
||||
.quad ghczmprim_GHCziTypes_ZMZN_closure+1
|
||||
.quad 3 # 0x3
|
||||
.size r3ka_closure$def, 32
|
||||
|
||||
.type SumSimpleBasic_zdtczqNil1_closure$def,@object # @"SumSimpleBasic_zdtczqNil1_closure$def"
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtczqNil1_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_KindRepTyConApp_con_info
|
||||
.quad SumSimpleBasic_zdtcList_closure$def+1
|
||||
.quad r3ka_closure$def+2
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtczqNil1_closure$def, 32
|
||||
|
||||
.type SumSimpleBasic_zdtczqNil3_bytes$def,@object # @"SumSimpleBasic_zdtczqNil3_bytes$def"
|
||||
.section .rodata,"a",@progbits
|
||||
SumSimpleBasic_zdtczqNil3_bytes$def:
|
||||
.asciz "'Nil"
|
||||
.size SumSimpleBasic_zdtczqNil3_bytes$def, 5
|
||||
|
||||
.type SumSimpleBasic_zdtczqNil2_closure$def,@object # @"SumSimpleBasic_zdtczqNil2_closure$def"
|
||||
.data
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtczqNil2_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtczqNil3_bytes$def
|
||||
.size SumSimpleBasic_zdtczqNil2_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_zdtczqNil_closure$def,@object # @"SumSimpleBasic_zdtczqNil_closure$def"
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtczqNil_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TyCon_con_info
|
||||
.quad SumSimpleBasic_zdtrModule_closure$def+1
|
||||
.quad SumSimpleBasic_zdtczqNil2_closure$def+1
|
||||
.quad SumSimpleBasic_zdtczqNil1_closure$def+1
|
||||
.quad 3225848470370281545 # 0x2cc48417afa86849
|
||||
.quad 8987752080532592311 # 0x7cbae8e5e96c56b7
|
||||
.quad 1 # 0x1
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtczqNil_closure$def, 64
|
||||
|
||||
.type r3kb_closure$def,@object # @"r3kb_closure$def"
|
||||
.p2align 4
|
||||
r3kb_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_KindRepFun_con_info
|
||||
.quad SumSimpleBasic_zdtczqNil1_closure$def+1
|
||||
.quad SumSimpleBasic_zdtczqNil1_closure$def+1
|
||||
.quad 3 # 0x3
|
||||
.size r3kb_closure$def, 32
|
||||
|
||||
.type SumSimpleBasic_zdtczqCons1_closure$def,@object # @"SumSimpleBasic_zdtczqCons1_closure$def"
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtczqCons1_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_KindRepFun_con_info
|
||||
.quad r3k9_closure$def+2
|
||||
.quad r3kb_closure$def+4
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtczqCons1_closure$def, 32
|
||||
|
||||
.type SumSimpleBasic_zdtczqCons3_bytes$def,@object # @"SumSimpleBasic_zdtczqCons3_bytes$def"
|
||||
.section .rodata,"a",@progbits
|
||||
SumSimpleBasic_zdtczqCons3_bytes$def:
|
||||
.asciz "'Cons"
|
||||
.size SumSimpleBasic_zdtczqCons3_bytes$def, 6
|
||||
|
||||
.type SumSimpleBasic_zdtczqCons2_closure$def,@object # @"SumSimpleBasic_zdtczqCons2_closure$def"
|
||||
.data
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtczqCons2_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtczqCons3_bytes$def
|
||||
.size SumSimpleBasic_zdtczqCons2_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_zdtczqCons_closure$def,@object # @"SumSimpleBasic_zdtczqCons_closure$def"
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtczqCons_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_TyCon_con_info
|
||||
.quad SumSimpleBasic_zdtrModule_closure$def+1
|
||||
.quad SumSimpleBasic_zdtczqCons2_closure$def+1
|
||||
.quad SumSimpleBasic_zdtczqCons1_closure$def+4
|
||||
.quad -7205385302398664762 # 0x9c01543e44b4ffc6
|
||||
.quad 6836440343659544598 # 0x5edfea4583fa0016
|
||||
.quad 1 # 0x1
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtczqCons_closure$def, 64
|
||||
|
||||
.type SumSimpleBasic_zdwsum_closure$def,@object # @"SumSimpleBasic_zdwsum_closure$def"
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdwsum_closure$def:
|
||||
.quad SumSimpleBasic_zdwsum_info$def
|
||||
.size SumSimpleBasic_zdwsum_closure$def, 8
|
||||
|
||||
.type SumSimpleBasic_zdwupto_closure$def,@object # @"SumSimpleBasic_zdwupto_closure$def"
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdwupto_closure$def:
|
||||
.quad SumSimpleBasic_zdwupto_info$def
|
||||
.size SumSimpleBasic_zdwupto_closure$def, 8
|
||||
|
||||
.type SumSimpleBasic_hszusumzupure2_closure$def,@object # @"SumSimpleBasic_hszusumzupure2_closure$def"
|
||||
.p2align 4
|
||||
SumSimpleBasic_hszusumzupure2_closure$def:
|
||||
.quad SumSimpleBasic_hszusumzupure2_info$def
|
||||
.quad 0 # 0x0
|
||||
.quad 0 # 0x0
|
||||
.quad 0 # 0x0
|
||||
.size SumSimpleBasic_hszusumzupure2_closure$def, 32
|
||||
|
||||
.type SumSimpleBasic_hszusumzupure1_closure$def,@object # @"SumSimpleBasic_hszusumzupure1_closure$def"
|
||||
.p2align 3
|
||||
SumSimpleBasic_hszusumzupure1_closure$def:
|
||||
.quad SumSimpleBasic_hszusumzupure1_info$def
|
||||
.quad 0 # 0x0
|
||||
.size SumSimpleBasic_hszusumzupure1_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_hszusumzupure_closure$def,@object # @"SumSimpleBasic_hszusumzupure_closure$def"
|
||||
.p2align 3
|
||||
SumSimpleBasic_hszusumzupure_closure$def:
|
||||
.quad SumSimpleBasic_hszusumzupure_info$def
|
||||
.quad 0 # 0x0
|
||||
.size SumSimpleBasic_hszusumzupure_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_Nil_closure$def,@object # @"SumSimpleBasic_Nil_closure$def"
|
||||
.p2align 3
|
||||
SumSimpleBasic_Nil_closure$def:
|
||||
.quad SumSimpleBasic_Nil_con_info
|
||||
.size SumSimpleBasic_Nil_closure$def, 8
|
||||
|
||||
.type SumSimpleBasic_Cons_closure$def,@object # @"SumSimpleBasic_Cons_closure$def"
|
||||
.p2align 3
|
||||
SumSimpleBasic_Cons_closure$def:
|
||||
.quad SumSimpleBasic_Cons_info$def
|
||||
.size SumSimpleBasic_Cons_closure$def, 8
|
||||
|
||||
.type i3st_str$def,@object # @"i3st_str$def"
|
||||
.section .rodata,"a",@progbits
|
||||
i3st_str$def:
|
||||
.asciz "main:SumSimpleBasic.Nil"
|
||||
.size i3st_str$def, 24
|
||||
|
||||
.type i3sD_str$def,@object # @"i3sD_str$def"
|
||||
i3sD_str$def:
|
||||
.asciz "main:SumSimpleBasic.Cons"
|
||||
.size i3sD_str$def, 25
|
||||
|
||||
.type S3rl_srt$def,@object # @"S3rl_srt$def"
|
||||
.p2align 4
|
||||
S3rl_srt$def:
|
||||
.quad base_GHCziIOziHandleziFD_stdout_closure
|
||||
.quad base_GHCziIOziHandleziText_hPutStr2_closure
|
||||
.quad Sum_hszusumzupure2_closure$def
|
||||
.quad Sum_hszusumzupure1_closure$def
|
||||
.size S3kT_srt$def, 32
|
||||
.quad SumSimpleBasic_hszusumzupure2_closure$def
|
||||
.quad SumSimpleBasic_hszusumzupure1_closure$def
|
||||
.size S3rl_srt$def, 32
|
||||
|
||||
|
||||
.globl Sum_zdtrModule4_bytes
|
||||
Sum_zdtrModule4_bytes = Sum_zdtrModule4_bytes$def
|
||||
.globl Sum_zdtrModule3_closure
|
||||
Sum_zdtrModule3_closure = Sum_zdtrModule3_closure$def
|
||||
.globl Sum_zdtrModule2_bytes
|
||||
Sum_zdtrModule2_bytes = Sum_zdtrModule2_bytes$def
|
||||
.globl Sum_zdtrModule1_closure
|
||||
Sum_zdtrModule1_closure = Sum_zdtrModule1_closure$def
|
||||
.globl Sum_zdtrModule_closure
|
||||
Sum_zdtrModule_closure = Sum_zdtrModule_closure$def
|
||||
.globl Sum_zdwsum_closure
|
||||
Sum_zdwsum_closure = Sum_zdwsum_closure$def
|
||||
.globl Sum_zdwsum_info
|
||||
Sum_zdwsum_info = Sum_zdwsum_info$def
|
||||
.globl Sum_hszusumzupure2_closure
|
||||
Sum_hszusumzupure2_closure = Sum_hszusumzupure2_closure$def
|
||||
.globl Sum_hszusumzupure2_info
|
||||
Sum_hszusumzupure2_info = Sum_hszusumzupure2_info$def
|
||||
c3iW_info = c3iW_info$def
|
||||
c3j1_info = c3j1_info$def
|
||||
.globl Sum_hszusumzupure1_closure
|
||||
Sum_hszusumzupure1_closure = Sum_hszusumzupure1_closure$def
|
||||
.globl Sum_hszusumzupure1_info
|
||||
Sum_hszusumzupure1_info = Sum_hszusumzupure1_info$def
|
||||
.globl Sum_hszusumzupure_closure
|
||||
Sum_hszusumzupure_closure = Sum_hszusumzupure_closure$def
|
||||
.globl Sum_hszusumzupure_info
|
||||
Sum_hszusumzupure_info = Sum_hszusumzupure_info$def
|
||||
S3kT_srt = S3kT_srt$def
|
||||
.globl SumSimpleBasic_zdtrModule4_bytes
|
||||
SumSimpleBasic_zdtrModule4_bytes = SumSimpleBasic_zdtrModule4_bytes$def
|
||||
.globl SumSimpleBasic_zdtrModule3_closure
|
||||
SumSimpleBasic_zdtrModule3_closure = SumSimpleBasic_zdtrModule3_closure$def
|
||||
.globl SumSimpleBasic_zdtrModule2_bytes
|
||||
SumSimpleBasic_zdtrModule2_bytes = SumSimpleBasic_zdtrModule2_bytes$def
|
||||
.globl SumSimpleBasic_zdtrModule1_closure
|
||||
SumSimpleBasic_zdtrModule1_closure = SumSimpleBasic_zdtrModule1_closure$def
|
||||
.globl SumSimpleBasic_zdtrModule_closure
|
||||
SumSimpleBasic_zdtrModule_closure = SumSimpleBasic_zdtrModule_closure$def
|
||||
r3k9_closure = r3k9_closure$def
|
||||
.globl SumSimpleBasic_zdtcList2_bytes
|
||||
SumSimpleBasic_zdtcList2_bytes = SumSimpleBasic_zdtcList2_bytes$def
|
||||
.globl SumSimpleBasic_zdtcList1_closure
|
||||
SumSimpleBasic_zdtcList1_closure = SumSimpleBasic_zdtcList1_closure$def
|
||||
.globl SumSimpleBasic_zdtcList_closure
|
||||
SumSimpleBasic_zdtcList_closure = SumSimpleBasic_zdtcList_closure$def
|
||||
r3ka_closure = r3ka_closure$def
|
||||
.globl SumSimpleBasic_zdtczqNil1_closure
|
||||
SumSimpleBasic_zdtczqNil1_closure = SumSimpleBasic_zdtczqNil1_closure$def
|
||||
.globl SumSimpleBasic_zdtczqNil3_bytes
|
||||
SumSimpleBasic_zdtczqNil3_bytes = SumSimpleBasic_zdtczqNil3_bytes$def
|
||||
.globl SumSimpleBasic_zdtczqNil2_closure
|
||||
SumSimpleBasic_zdtczqNil2_closure = SumSimpleBasic_zdtczqNil2_closure$def
|
||||
.globl SumSimpleBasic_zdtczqNil_closure
|
||||
SumSimpleBasic_zdtczqNil_closure = SumSimpleBasic_zdtczqNil_closure$def
|
||||
r3kb_closure = r3kb_closure$def
|
||||
.globl SumSimpleBasic_zdtczqCons1_closure
|
||||
SumSimpleBasic_zdtczqCons1_closure = SumSimpleBasic_zdtczqCons1_closure$def
|
||||
.globl SumSimpleBasic_zdtczqCons3_bytes
|
||||
SumSimpleBasic_zdtczqCons3_bytes = SumSimpleBasic_zdtczqCons3_bytes$def
|
||||
.globl SumSimpleBasic_zdtczqCons2_closure
|
||||
SumSimpleBasic_zdtczqCons2_closure = SumSimpleBasic_zdtczqCons2_closure$def
|
||||
.globl SumSimpleBasic_zdtczqCons_closure
|
||||
SumSimpleBasic_zdtczqCons_closure = SumSimpleBasic_zdtczqCons_closure$def
|
||||
.globl SumSimpleBasic_zdwsum_closure
|
||||
SumSimpleBasic_zdwsum_closure = SumSimpleBasic_zdwsum_closure$def
|
||||
.globl SumSimpleBasic_zdwsum_info
|
||||
SumSimpleBasic_zdwsum_info = SumSimpleBasic_zdwsum_info$def
|
||||
c3kz_info = c3kz_info$def
|
||||
c3kO_info = c3kO_info$def
|
||||
c3kT_info = c3kT_info$def
|
||||
.globl SumSimpleBasic_zdwupto_closure
|
||||
SumSimpleBasic_zdwupto_closure = SumSimpleBasic_zdwupto_closure$def
|
||||
s3kp_info = s3kp_info$def
|
||||
.globl SumSimpleBasic_zdwupto_info
|
||||
SumSimpleBasic_zdwupto_info = SumSimpleBasic_zdwupto_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure2_closure
|
||||
SumSimpleBasic_hszusumzupure2_closure = SumSimpleBasic_hszusumzupure2_closure$def
|
||||
.globl SumSimpleBasic_hszusumzupure2_info
|
||||
SumSimpleBasic_hszusumzupure2_info = SumSimpleBasic_hszusumzupure2_info$def
|
||||
c3ph_info = c3ph_info$def
|
||||
c3pm_info = c3pm_info$def
|
||||
c3pq_info = c3pq_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure1_closure
|
||||
SumSimpleBasic_hszusumzupure1_closure = SumSimpleBasic_hszusumzupure1_closure$def
|
||||
.globl SumSimpleBasic_hszusumzupure1_info
|
||||
SumSimpleBasic_hszusumzupure1_info = SumSimpleBasic_hszusumzupure1_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure_closure
|
||||
SumSimpleBasic_hszusumzupure_closure = SumSimpleBasic_hszusumzupure_closure$def
|
||||
.globl SumSimpleBasic_hszusumzupure_info
|
||||
SumSimpleBasic_hszusumzupure_info = SumSimpleBasic_hszusumzupure_info$def
|
||||
.globl SumSimpleBasic_Nil_closure
|
||||
SumSimpleBasic_Nil_closure = SumSimpleBasic_Nil_closure$def
|
||||
.globl SumSimpleBasic_Cons_closure
|
||||
SumSimpleBasic_Cons_closure = SumSimpleBasic_Cons_closure$def
|
||||
SumSimpleBasic_Cons_info = SumSimpleBasic_Cons_info$def
|
||||
i3st_str = i3st_str$def
|
||||
.globl SumSimpleBasic_Nil_con_info
|
||||
SumSimpleBasic_Nil_con_info = SumSimpleBasic_Nil_con_info$def
|
||||
i3sD_str = i3sD_str$def
|
||||
.globl SumSimpleBasic_Cons_con_info
|
||||
SumSimpleBasic_Cons_con_info = SumSimpleBasic_Cons_con_info$def
|
||||
S3rl_srt = S3rl_srt$def
|
||||
.section ".note.GNU-stack","",@progbits
|
||||
|
@ -1,86 +1,347 @@
|
||||
.text
|
||||
.file "sum.ll"
|
||||
.globl Sum_zdwsum_info$def # -- Begin function Sum_zdwsum_info$def
|
||||
.file "SumSimpleBasic.ll"
|
||||
.globl SumSimpleBasic_zdwsum_info$def # -- Begin function SumSimpleBasic_zdwsum_info$def
|
||||
.p2align 4, 0x90
|
||||
.type Sum_zdwsum_info$def,@function
|
||||
.quad 12884901904 # @"Sum_zdwsum_info$def"
|
||||
# 0x300000010
|
||||
.type SumSimpleBasic_zdwsum_info$def,@function
|
||||
.quad 4294967301 # @"SumSimpleBasic_zdwsum_info$def"
|
||||
# 0x100000005
|
||||
.quad 0 # 0x0
|
||||
.quad 14 # 0xe
|
||||
Sum_zdwsum_info$def:
|
||||
# BB#0: # %c3is
|
||||
cmpq %rdi, %rsi
|
||||
jg .LBB0_3
|
||||
SumSimpleBasic_zdwsum_info$def:
|
||||
# BB#0: # %c3kG
|
||||
movq %rbp, %rax
|
||||
leaq -16(%rax), %rbp
|
||||
cmpq %r15, %rbp
|
||||
jb .LBB0_7
|
||||
.p2align 4, 0x90
|
||||
.LBB0_1: # %c3iq
|
||||
.LBB0_1: # %c3kI
|
||||
# =>This Inner Loop Header: Depth=1
|
||||
addq %rsi, %r14
|
||||
incq %rsi
|
||||
cmpq %rdi, %rsi
|
||||
jle .LBB0_1
|
||||
.LBB0_3: # %c3ir
|
||||
movq (%rbp), %rax
|
||||
movq $c3kz_info$def, 8(%rbp)
|
||||
movl %r14d, %eax
|
||||
andb $7, %al
|
||||
cmpb $2, %al
|
||||
jne .LBB0_2
|
||||
# BB#4: # %c3kE.i
|
||||
# in Loop: Header=BB0_1 Depth=1
|
||||
movq $c3kO_info$def, (%rbp)
|
||||
movq 6(%r14), %rbx
|
||||
movq 14(%r14), %r14
|
||||
movq %r14, 8(%rbp)
|
||||
testb $7, %bl
|
||||
je .LBB0_9
|
||||
# BB#5: # %u3l1.i
|
||||
# in Loop: Header=BB0_1 Depth=1
|
||||
movq $c3kT_info$def, (%rbp)
|
||||
movq 7(%rbx), %rax
|
||||
movq %rax, 8(%rbp)
|
||||
addq $-16, %rbp
|
||||
cmpq %r15, %rbp
|
||||
jae .LBB0_1
|
||||
# BB#6: # %c3kH.loopexit
|
||||
addq $16, %rbp
|
||||
movq %rbp, %rax
|
||||
.LBB0_7: # %c3kH
|
||||
movq -8(%r13), %rcx
|
||||
movl $SumSimpleBasic_zdwsum_closure, %ebx
|
||||
movq %rax, %rbp
|
||||
jmpq *%rcx # TAILCALL
|
||||
.LBB0_2: # %c3kI
|
||||
testb %al, %al
|
||||
jne .LBB0_3
|
||||
# BB#8: # %c3kA
|
||||
movq (%r14), %rax
|
||||
addq $8, %rbp
|
||||
movq %r14, %rbx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB0_9: # %c3kP.i
|
||||
movq (%rbx), %rax
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB0_3: # %c3kD.i
|
||||
movq 16(%rbp), %rax
|
||||
addq $16, %rbp
|
||||
xorl %ebx, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end0:
|
||||
.size Sum_zdwsum_info$def, .Lfunc_end0-Sum_zdwsum_info$def
|
||||
.size SumSimpleBasic_zdwsum_info$def, .Lfunc_end0-SumSimpleBasic_zdwsum_info$def
|
||||
# -- End function
|
||||
.globl Sum_hszusumzupure2_info$def # -- Begin function Sum_hszusumzupure2_info$def
|
||||
.p2align 4, 0x90 # -- Begin function c3kz_info$def
|
||||
.type c3kz_info$def,@function
|
||||
.quad 0 # @"c3kz_info$def"
|
||||
# 0x0
|
||||
.quad 30 # 0x1e
|
||||
c3kz_info$def:
|
||||
# BB#0: # %c3kz
|
||||
movl %ebx, %eax
|
||||
andl $7, %eax
|
||||
cmpq $2, %rax
|
||||
jne .LBB1_3
|
||||
# BB#1: # %c3kE
|
||||
leaq -8(%rbp), %rax
|
||||
movq $c3kO_info$def, -8(%rbp)
|
||||
movq 6(%rbx), %rcx
|
||||
movq 14(%rbx), %r14
|
||||
movq %r14, (%rbp)
|
||||
testb $7, %cl
|
||||
je .LBB1_4
|
||||
# BB#2: # %u3l1
|
||||
movq $c3kT_info$def, -8(%rbp)
|
||||
movq 7(%rcx), %rcx
|
||||
movq %rcx, (%rbp)
|
||||
movq %rax, %rbp
|
||||
jmp SumSimpleBasic_zdwsum_info$def # TAILCALL
|
||||
.LBB1_3: # %c3kD
|
||||
movq 8(%rbp), %rax
|
||||
addq $8, %rbp
|
||||
xorl %ebx, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB1_4: # %c3kP
|
||||
movq (%rcx), %rdx
|
||||
movq %rax, %rbp
|
||||
movq %rcx, %rbx
|
||||
jmpq *%rdx # TAILCALL
|
||||
.Lfunc_end1:
|
||||
.size c3kz_info$def, .Lfunc_end1-c3kz_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3kO_info$def
|
||||
.type c3kO_info$def,@function
|
||||
.quad 1 # @"c3kO_info$def"
|
||||
# 0x1
|
||||
.quad 30 # 0x1e
|
||||
c3kO_info$def:
|
||||
# BB#0: # %c3kO
|
||||
movq $c3kT_info$def, (%rbp)
|
||||
movq 8(%rbp), %r14
|
||||
movq 7(%rbx), %rax
|
||||
movq %rax, 8(%rbp)
|
||||
jmp SumSimpleBasic_zdwsum_info$def # TAILCALL
|
||||
.Lfunc_end2:
|
||||
.size c3kO_info$def, .Lfunc_end2-c3kO_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3kT_info$def
|
||||
.type c3kT_info$def,@function
|
||||
.quad 65 # @"c3kT_info$def"
|
||||
# 0x41
|
||||
.quad 30 # 0x1e
|
||||
c3kT_info$def:
|
||||
# BB#0: # %c3kT
|
||||
addq 8(%rbp), %rbx
|
||||
movq 16(%rbp), %rax
|
||||
addq $16, %rbp
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end3:
|
||||
.size c3kT_info$def, .Lfunc_end3-c3kT_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function s3kp_info$def
|
||||
.type s3kp_info$def,@function
|
||||
.quad 8589934592 # @"s3kp_info$def"
|
||||
# 0x200000000
|
||||
.quad 20 # 0x14
|
||||
s3kp_info$def:
|
||||
# BB#0: # %c3n4
|
||||
movq %rbp, %rax
|
||||
leaq -16(%rax), %rbp
|
||||
cmpq %r15, %rbp
|
||||
jb .LBB4_5
|
||||
# BB#1: # %c3n6
|
||||
movq $stg_upd_frame_info, -16(%rax)
|
||||
movq %rbx, -8(%rax)
|
||||
movq 16(%rbx), %r14
|
||||
movq 24(%rbx), %rsi
|
||||
incq %r14
|
||||
leaq 72(%r12), %rax
|
||||
cmpq %rax, 856(%r13)
|
||||
jb .LBB4_4
|
||||
# BB#2: # %c3nd.i
|
||||
cmpq %rsi, %r14
|
||||
jle .LBB4_6
|
||||
# BB#3: # %c3n9.i
|
||||
movl $SumSimpleBasic_Nil_closure+1, %ebx
|
||||
jmp stg_upd_frame_info # TAILCALL
|
||||
.LBB4_6: # %c3n8.i
|
||||
leaq 8(%r12), %rcx
|
||||
movq $s3kp_info$def, 8(%r12)
|
||||
movq %r14, 24(%r12)
|
||||
movq %rsi, 32(%r12)
|
||||
movq $ghczmprim_GHCziTypes_Izh_con_info, 40(%r12)
|
||||
movq %r14, 48(%r12)
|
||||
movq $SumSimpleBasic_Cons_con_info$def, 56(%r12)
|
||||
leaq -31(%rax), %rdx
|
||||
movq %rdx, 64(%r12)
|
||||
movq %rcx, 72(%r12)
|
||||
leaq -14(%rax), %rbx
|
||||
movq %rax, %r12
|
||||
jmp stg_upd_frame_info # TAILCALL
|
||||
.LBB4_5: # %c3n5
|
||||
movq -16(%r13), %rcx
|
||||
movq %rax, %rbp
|
||||
jmpq *%rcx # TAILCALL
|
||||
.LBB4_4: # %c3ne.i
|
||||
movq $72, 904(%r13)
|
||||
movq -8(%r13), %rcx
|
||||
movl $SumSimpleBasic_zdwupto_closure, %ebx
|
||||
movq %rax, %r12
|
||||
jmpq *%rcx # TAILCALL
|
||||
.Lfunc_end4:
|
||||
.size s3kp_info$def, .Lfunc_end4-s3kp_info$def
|
||||
# -- End function
|
||||
.globl SumSimpleBasic_zdwupto_info$def # -- Begin function SumSimpleBasic_zdwupto_info$def
|
||||
.p2align 4, 0x90
|
||||
.type Sum_hszusumzupure2_info$def,@function
|
||||
.quad 0 # @"Sum_hszusumzupure2_info$def"
|
||||
.type SumSimpleBasic_zdwupto_info$def,@function
|
||||
.quad 8589934604 # @"SumSimpleBasic_zdwupto_info$def"
|
||||
# 0x20000000c
|
||||
.quad 0 # 0x0
|
||||
.quad 14 # 0xe
|
||||
SumSimpleBasic_zdwupto_info$def:
|
||||
# BB#0: # %c3na
|
||||
movq %r12, %rax
|
||||
leaq 72(%rax), %r12
|
||||
cmpq %r12, 856(%r13)
|
||||
jb .LBB5_3
|
||||
# BB#1: # %c3nd
|
||||
cmpq %rsi, %r14
|
||||
jle .LBB5_4
|
||||
# BB#2: # %c3n9
|
||||
movq (%rbp), %rcx
|
||||
movl $SumSimpleBasic_Nil_closure+1, %ebx
|
||||
movq %rax, %r12
|
||||
jmpq *%rcx # TAILCALL
|
||||
.LBB5_4: # %c3n8
|
||||
leaq 8(%rax), %rcx
|
||||
movq $s3kp_info$def, 8(%rax)
|
||||
movq %r14, 24(%rax)
|
||||
movq %rsi, 32(%rax)
|
||||
movq $ghczmprim_GHCziTypes_Izh_con_info, 40(%rax)
|
||||
movq %r14, 48(%rax)
|
||||
movq $SumSimpleBasic_Cons_con_info$def, 56(%rax)
|
||||
leaq -31(%r12), %rdx
|
||||
movq %rdx, 64(%rax)
|
||||
movq %rcx, 72(%rax)
|
||||
movq (%rbp), %rax
|
||||
leaq -14(%r12), %rbx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB5_3: # %c3ne
|
||||
movq $72, 904(%r13)
|
||||
movq -8(%r13), %rax
|
||||
movl $SumSimpleBasic_zdwupto_closure, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end5:
|
||||
.size SumSimpleBasic_zdwupto_info$def, .Lfunc_end5-SumSimpleBasic_zdwupto_info$def
|
||||
# -- End function
|
||||
.section .rodata.cst16,"aM",@progbits,16
|
||||
.p2align 4 # -- Begin function SumSimpleBasic_hszusumzupure2_info$def
|
||||
.LCPI6_0:
|
||||
.quad 1 # 0x1
|
||||
.quad 100000 # 0x186a0
|
||||
.text
|
||||
.globl SumSimpleBasic_hszusumzupure2_info$def
|
||||
.p2align 4, 0x90
|
||||
.type SumSimpleBasic_hszusumzupure2_info$def,@function
|
||||
.quad 0 # @"SumSimpleBasic_hszusumzupure2_info$def"
|
||||
# 0x0
|
||||
.quad 21 # 0x15
|
||||
Sum_hszusumzupure2_info$def:
|
||||
# BB#0: # %c3iY
|
||||
SumSimpleBasic_hszusumzupure2_info$def:
|
||||
# BB#0: # %c3pj
|
||||
movq %rbp, %r14
|
||||
leaq -24(%r14), %rbp
|
||||
cmpq %r15, %rbp
|
||||
jb .LBB1_3
|
||||
# BB#1: # %c3j5
|
||||
jb .LBB6_5
|
||||
# BB#1: # %c3pu
|
||||
pushq %rax
|
||||
movq %r13, %rdi
|
||||
movq %rbx, %rsi
|
||||
callq newCAF
|
||||
testq %rax, %rax
|
||||
leaq 8(%rsp), %rsp
|
||||
je .LBB1_2
|
||||
# BB#4: # %c3iU
|
||||
je .LBB6_4
|
||||
# BB#2: # %c3pf
|
||||
movq %rax, -8(%r14)
|
||||
movl $stg_bh_upd_frame_info, %eax
|
||||
movq %rax, %xmm0
|
||||
movl $c3j1_info$def, %eax
|
||||
movl $c3ph_info$def, %eax
|
||||
movq %rax, %xmm1
|
||||
punpcklqdq %xmm0, %xmm1 # xmm1 = xmm1[0],xmm0[0]
|
||||
movdqu %xmm1, -24(%r14)
|
||||
movabsq $5000050000, %rbx # imm = 0x12A06B550
|
||||
leaq 72(%r12), %rax
|
||||
cmpq %rax, 856(%r13)
|
||||
jb .LBB6_3
|
||||
# BB#6: # %c3nd.i
|
||||
leaq 8(%r12), %rcx
|
||||
movq $s3kp_info$def, 8(%r12)
|
||||
movaps .LCPI6_0(%rip), %xmm0 # xmm0 = [1,100000]
|
||||
movups %xmm0, 24(%r12)
|
||||
movl $1, %edx
|
||||
movq %rdx, %xmm0
|
||||
movl $ghczmprim_GHCziTypes_Izh_con_info, %edx
|
||||
movq %rdx, %xmm1
|
||||
punpcklqdq %xmm0, %xmm1 # xmm1 = xmm1[0],xmm0[0]
|
||||
movdqu %xmm1, 40(%r12)
|
||||
movq $SumSimpleBasic_Cons_con_info$def, 56(%r12)
|
||||
leaq -31(%rax), %rdx
|
||||
movq %rdx, 64(%r12)
|
||||
movq %rcx, 72(%r12)
|
||||
movq $c3pm_info$def, (%rbp)
|
||||
leaq -14(%rax), %r14
|
||||
movq %rax, %r12
|
||||
jmp SumSimpleBasic_zdwsum_info$def # TAILCALL
|
||||
.LBB6_4: # %c3pg
|
||||
movq (%rbx), %rax
|
||||
movq %r14, %rbp
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB6_5: # %c3pt
|
||||
movq -16(%r13), %rax
|
||||
movq %r14, %rbp
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB6_3: # %c3ne.i
|
||||
movq $72, 904(%r13)
|
||||
movq -8(%r13), %rcx
|
||||
movl $SumSimpleBasic_zdwupto_closure, %ebx
|
||||
movl $1, %r14d
|
||||
movl $100000, %esi # imm = 0x186A0
|
||||
movq %rax, %r12
|
||||
jmpq *%rcx # TAILCALL
|
||||
.Lfunc_end6:
|
||||
.size SumSimpleBasic_hszusumzupure2_info$def, .Lfunc_end6-SumSimpleBasic_hszusumzupure2_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3ph_info$def
|
||||
.type c3ph_info$def,@function
|
||||
.quad 0 # @"c3ph_info$def"
|
||||
# 0x0
|
||||
.quad 30 # 0x1e
|
||||
c3ph_info$def:
|
||||
# BB#0: # %c3ph
|
||||
movq $c3pm_info$def, (%rbp)
|
||||
movq %rbx, %r14
|
||||
jmp SumSimpleBasic_zdwsum_info$def # TAILCALL
|
||||
.Lfunc_end7:
|
||||
.size c3ph_info$def, .Lfunc_end7-c3ph_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3pm_info$def
|
||||
.type c3pm_info$def,@function
|
||||
.quad 0 # @"c3pm_info$def"
|
||||
# 0x0
|
||||
.quad 30 # 0x1e
|
||||
c3pm_info$def:
|
||||
# BB#0: # %c3pm
|
||||
movq $c3pq_info$def, (%rbp)
|
||||
xorl %r14d, %r14d
|
||||
movl $ghczmprim_GHCziTypes_ZMZN_closure+1, %edi
|
||||
movq %rbx, %rsi
|
||||
jmp base_GHCziShow_zdwshowSignedInt_info # TAILCALL
|
||||
.LBB1_2: # %c3iV
|
||||
movq (%rbx), %rax
|
||||
movq %r14, %rbp
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB1_3: # %c3j4
|
||||
movq -16(%r13), %rax
|
||||
movq %r14, %rbp
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end1:
|
||||
.size Sum_hszusumzupure2_info$def, .Lfunc_end1-Sum_hszusumzupure2_info$def
|
||||
.Lfunc_end8:
|
||||
.size c3pm_info$def, .Lfunc_end8-c3pm_info$def
|
||||
# -- End function
|
||||
.p2align 4, 0x90 # -- Begin function c3j1_info$def
|
||||
.type c3j1_info$def,@function
|
||||
.quad 0 # @"c3j1_info$def"
|
||||
.p2align 4, 0x90 # -- Begin function c3pq_info$def
|
||||
.type c3pq_info$def,@function
|
||||
.quad 0 # @"c3pq_info$def"
|
||||
# 0x0
|
||||
.quad 30 # 0x1e
|
||||
c3j1_info$def:
|
||||
# BB#0: # %c3j1
|
||||
c3pq_info$def:
|
||||
# BB#0: # %c3pq
|
||||
movq %r12, %rax
|
||||
leaq 24(%rax), %r12
|
||||
cmpq %r12, 856(%r13)
|
||||
jb .LBB2_2
|
||||
# BB#1: # %c3j8
|
||||
jb .LBB9_2
|
||||
# BB#1: # %c3py
|
||||
movq $ghczmprim_GHCziTypes_ZC_con_info, 8(%rax)
|
||||
movq %rbx, 16(%rax)
|
||||
movq %r14, 24(%rax)
|
||||
@ -88,136 +349,363 @@ c3j1_info$def:
|
||||
addq $8, %rbp
|
||||
leaq -14(%r12), %rbx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB2_2: # %c3j9
|
||||
.LBB9_2: # %c3pz
|
||||
movq $24, 904(%r13)
|
||||
jmp stg_gc_pp # TAILCALL
|
||||
.Lfunc_end2:
|
||||
.size c3j1_info$def, .Lfunc_end2-c3j1_info$def
|
||||
.Lfunc_end9:
|
||||
.size c3pq_info$def, .Lfunc_end9-c3pq_info$def
|
||||
# -- End function
|
||||
.globl Sum_hszusumzupure1_info$def # -- Begin function Sum_hszusumzupure1_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure1_info$def # -- Begin function SumSimpleBasic_hszusumzupure1_info$def
|
||||
.p2align 4, 0x90
|
||||
.type Sum_hszusumzupure1_info$def,@function
|
||||
.quad S3kT_srt$def-Sum_hszusumzupure1_info$def # @"Sum_hszusumzupure1_info$def"
|
||||
.type SumSimpleBasic_hszusumzupure1_info$def,@function
|
||||
.quad S3rl_srt$def-SumSimpleBasic_hszusumzupure1_info$def # @"SumSimpleBasic_hszusumzupure1_info$def"
|
||||
.quad 4294967299 # 0x100000003
|
||||
.quad 0 # 0x0
|
||||
.quad 30064771086 # 0x70000000e
|
||||
Sum_hszusumzupure1_info$def:
|
||||
# BB#0: # %c3kQ
|
||||
SumSimpleBasic_hszusumzupure1_info$def:
|
||||
# BB#0: # %c3ri
|
||||
movl $base_GHCziIOziHandleziFD_stdout_closure, %r14d
|
||||
movl $Sum_hszusumzupure2_closure, %esi
|
||||
movl $SumSimpleBasic_hszusumzupure2_closure, %esi
|
||||
movl $ghczmprim_GHCziTypes_True_closure+2, %edi
|
||||
jmp base_GHCziIOziHandleziText_hPutStr2_info # TAILCALL
|
||||
.Lfunc_end3:
|
||||
.size Sum_hszusumzupure1_info$def, .Lfunc_end3-Sum_hszusumzupure1_info$def
|
||||
.Lfunc_end10:
|
||||
.size SumSimpleBasic_hszusumzupure1_info$def, .Lfunc_end10-SumSimpleBasic_hszusumzupure1_info$def
|
||||
# -- End function
|
||||
.globl Sum_hszusumzupure_info$def # -- Begin function Sum_hszusumzupure_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure_info$def # -- Begin function SumSimpleBasic_hszusumzupure_info$def
|
||||
.p2align 4, 0x90
|
||||
.type Sum_hszusumzupure_info$def,@function
|
||||
.quad (S3kT_srt$def-Sum_hszusumzupure_info$def)+24 # @"Sum_hszusumzupure_info$def"
|
||||
.type SumSimpleBasic_hszusumzupure_info$def,@function
|
||||
.quad (S3rl_srt$def-SumSimpleBasic_hszusumzupure_info$def)+24 # @"SumSimpleBasic_hszusumzupure_info$def"
|
||||
.quad 4294967299 # 0x100000003
|
||||
.quad 0 # 0x0
|
||||
.quad 4294967310 # 0x10000000e
|
||||
Sum_hszusumzupure_info$def:
|
||||
# BB#0: # %c3l6
|
||||
SumSimpleBasic_hszusumzupure_info$def:
|
||||
# BB#0: # %c3ry
|
||||
movl $base_GHCziIOziHandleziFD_stdout_closure, %r14d
|
||||
movl $Sum_hszusumzupure2_closure, %esi
|
||||
movl $SumSimpleBasic_hszusumzupure2_closure, %esi
|
||||
movl $ghczmprim_GHCziTypes_True_closure+2, %edi
|
||||
jmp base_GHCziIOziHandleziText_hPutStr2_info # TAILCALL
|
||||
.Lfunc_end4:
|
||||
.size Sum_hszusumzupure_info$def, .Lfunc_end4-Sum_hszusumzupure_info$def
|
||||
.Lfunc_end11:
|
||||
.size SumSimpleBasic_hszusumzupure_info$def, .Lfunc_end11-SumSimpleBasic_hszusumzupure_info$def
|
||||
# -- End function
|
||||
.type Sum_zdtrModule4_bytes,@object # @Sum_zdtrModule4_bytes
|
||||
.section .rodata,"a",@progbits
|
||||
.globl Sum_zdtrModule4_bytes
|
||||
Sum_zdtrModule4_bytes:
|
||||
.asciz "main"
|
||||
.size Sum_zdtrModule4_bytes, 5
|
||||
|
||||
.type Sum_zdtrModule3_closure,@object # @Sum_zdtrModule3_closure
|
||||
.data
|
||||
.globl Sum_zdtrModule3_closure
|
||||
.p2align 3
|
||||
Sum_zdtrModule3_closure:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad Sum_zdtrModule4_bytes
|
||||
.size Sum_zdtrModule3_closure, 16
|
||||
|
||||
.type Sum_zdtrModule2_bytes,@object # @Sum_zdtrModule2_bytes
|
||||
.section .rodata,"a",@progbits
|
||||
.globl Sum_zdtrModule2_bytes
|
||||
Sum_zdtrModule2_bytes:
|
||||
.asciz "Sum"
|
||||
.size Sum_zdtrModule2_bytes, 4
|
||||
|
||||
.type Sum_zdtrModule1_closure,@object # @Sum_zdtrModule1_closure
|
||||
.data
|
||||
.globl Sum_zdtrModule1_closure
|
||||
.p2align 3
|
||||
Sum_zdtrModule1_closure:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad Sum_zdtrModule2_bytes
|
||||
.size Sum_zdtrModule1_closure, 16
|
||||
|
||||
.type Sum_zdtrModule_closure,@object # @Sum_zdtrModule_closure
|
||||
.globl Sum_zdtrModule_closure
|
||||
.p2align 4
|
||||
Sum_zdtrModule_closure:
|
||||
.quad ghczmprim_GHCziTypes_Module_con_info
|
||||
.quad Sum_zdtrModule3_closure+1
|
||||
.quad Sum_zdtrModule1_closure+1
|
||||
.p2align 4, 0x90 # -- Begin function SumSimpleBasic_Cons_info$def
|
||||
.type SumSimpleBasic_Cons_info$def,@function
|
||||
.quad 8589934607 # @"SumSimpleBasic_Cons_info$def"
|
||||
# 0x20000000f
|
||||
.quad 0 # 0x0
|
||||
.quad 14 # 0xe
|
||||
SumSimpleBasic_Cons_info$def:
|
||||
# BB#0: # %c3rH
|
||||
movq %r12, %rax
|
||||
leaq 24(%rax), %r12
|
||||
cmpq %r12, 856(%r13)
|
||||
jb .LBB12_2
|
||||
# BB#1: # %c3rK
|
||||
movq $SumSimpleBasic_Cons_con_info$def, 8(%rax)
|
||||
movq %r14, 16(%rax)
|
||||
movq %rsi, 24(%rax)
|
||||
movq (%rbp), %rax
|
||||
leaq -14(%r12), %rbx
|
||||
jmpq *%rax # TAILCALL
|
||||
.LBB12_2: # %c3rL
|
||||
movq $24, 904(%r13)
|
||||
movq -8(%r13), %rax
|
||||
movl $SumSimpleBasic_Cons_closure, %ebx
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end12:
|
||||
.size SumSimpleBasic_Cons_info$def, .Lfunc_end12-SumSimpleBasic_Cons_info$def
|
||||
# -- End function
|
||||
.globl SumSimpleBasic_Nil_con_info$def # -- Begin function SumSimpleBasic_Nil_con_info$def
|
||||
.p2align 4, 0x90
|
||||
.type SumSimpleBasic_Nil_con_info$def,@function
|
||||
.quad i3st_str$def-SumSimpleBasic_Nil_con_info$def # @"SumSimpleBasic_Nil_con_info$def"
|
||||
.quad 4294967296 # 0x100000000
|
||||
.quad 3 # 0x3
|
||||
.size Sum_zdtrModule_closure, 32
|
||||
|
||||
.type Sum_zdwsum_closure,@object # @Sum_zdwsum_closure
|
||||
.globl Sum_zdwsum_closure
|
||||
.p2align 3
|
||||
Sum_zdwsum_closure:
|
||||
.quad Sum_zdwsum_info$def
|
||||
.size Sum_zdwsum_closure, 8
|
||||
|
||||
.type Sum_hszusumzupure2_closure,@object # @Sum_hszusumzupure2_closure
|
||||
.globl Sum_hszusumzupure2_closure
|
||||
.p2align 4
|
||||
Sum_hszusumzupure2_closure:
|
||||
.quad Sum_hszusumzupure2_info$def
|
||||
.quad 0 # 0x0
|
||||
.quad 0 # 0x0
|
||||
.quad 0 # 0x0
|
||||
.size Sum_hszusumzupure2_closure, 32
|
||||
|
||||
.type Sum_hszusumzupure1_closure,@object # @Sum_hszusumzupure1_closure
|
||||
.globl Sum_hszusumzupure1_closure
|
||||
.p2align 3
|
||||
Sum_hszusumzupure1_closure:
|
||||
.quad Sum_hszusumzupure1_info$def
|
||||
.quad 0 # 0x0
|
||||
.size Sum_hszusumzupure1_closure, 16
|
||||
|
||||
.type Sum_hszusumzupure_closure,@object # @Sum_hszusumzupure_closure
|
||||
.globl Sum_hszusumzupure_closure
|
||||
.p2align 3
|
||||
Sum_hszusumzupure_closure:
|
||||
.quad Sum_hszusumzupure_info$def
|
||||
.quad 0 # 0x0
|
||||
.size Sum_hszusumzupure_closure, 16
|
||||
|
||||
.type S3kT_srt$def,@object # @"S3kT_srt$def"
|
||||
SumSimpleBasic_Nil_con_info$def:
|
||||
# BB#0: # %c3ss
|
||||
incq %rbx
|
||||
movq (%rbp), %rax
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end13:
|
||||
.size SumSimpleBasic_Nil_con_info$def, .Lfunc_end13-SumSimpleBasic_Nil_con_info$def
|
||||
# -- End function
|
||||
.globl SumSimpleBasic_Cons_con_info$def # -- Begin function SumSimpleBasic_Cons_con_info$def
|
||||
.p2align 4, 0x90
|
||||
.type SumSimpleBasic_Cons_con_info$def,@function
|
||||
.quad i3sD_str$def-SumSimpleBasic_Cons_con_info$def # @"SumSimpleBasic_Cons_con_info$def"
|
||||
.quad 2 # 0x2
|
||||
.quad 4294967300 # 0x100000004
|
||||
SumSimpleBasic_Cons_con_info$def:
|
||||
# BB#0: # %c3sC
|
||||
addq $2, %rbx
|
||||
movq (%rbp), %rax
|
||||
jmpq *%rax # TAILCALL
|
||||
.Lfunc_end14:
|
||||
.size SumSimpleBasic_Cons_con_info$def, .Lfunc_end14-SumSimpleBasic_Cons_con_info$def
|
||||
# -- End function
|
||||
.type SumSimpleBasic_zdtrModule4_bytes,@object # @SumSimpleBasic_zdtrModule4_bytes
|
||||
.section .rodata,"a",@progbits
|
||||
.globl SumSimpleBasic_zdtrModule4_bytes
|
||||
SumSimpleBasic_zdtrModule4_bytes:
|
||||
.asciz "main"
|
||||
.size SumSimpleBasic_zdtrModule4_bytes, 5
|
||||
|
||||
.type SumSimpleBasic_zdtrModule3_closure,@object # @SumSimpleBasic_zdtrModule3_closure
|
||||
.data
|
||||
.globl SumSimpleBasic_zdtrModule3_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtrModule3_closure:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtrModule4_bytes
|
||||
.size SumSimpleBasic_zdtrModule3_closure, 16
|
||||
|
||||
.type SumSimpleBasic_zdtrModule2_bytes,@object # @SumSimpleBasic_zdtrModule2_bytes
|
||||
.section .rodata,"a",@progbits
|
||||
.globl SumSimpleBasic_zdtrModule2_bytes
|
||||
SumSimpleBasic_zdtrModule2_bytes:
|
||||
.asciz "SumSimpleBasic"
|
||||
.size SumSimpleBasic_zdtrModule2_bytes, 15
|
||||
|
||||
.type SumSimpleBasic_zdtrModule1_closure,@object # @SumSimpleBasic_zdtrModule1_closure
|
||||
.data
|
||||
.globl SumSimpleBasic_zdtrModule1_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtrModule1_closure:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtrModule2_bytes
|
||||
.size SumSimpleBasic_zdtrModule1_closure, 16
|
||||
|
||||
.type SumSimpleBasic_zdtrModule_closure,@object # @SumSimpleBasic_zdtrModule_closure
|
||||
.globl SumSimpleBasic_zdtrModule_closure
|
||||
.p2align 4
|
||||
S3kT_srt$def:
|
||||
SumSimpleBasic_zdtrModule_closure:
|
||||
.quad ghczmprim_GHCziTypes_Module_con_info
|
||||
.quad SumSimpleBasic_zdtrModule3_closure+1
|
||||
.quad SumSimpleBasic_zdtrModule1_closure+1
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtrModule_closure, 32
|
||||
|
||||
.type r3k9_closure$def,@object # @"r3k9_closure$def"
|
||||
.p2align 3
|
||||
r3k9_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_KindRepVar_con_info
|
||||
.quad 0 # 0x0
|
||||
.size r3k9_closure$def, 16
|
||||
|
||||
.type SumSimpleBasic_zdtcList2_bytes,@object # @SumSimpleBasic_zdtcList2_bytes
|
||||
.section .rodata,"a",@progbits
|
||||
.globl SumSimpleBasic_zdtcList2_bytes
|
||||
SumSimpleBasic_zdtcList2_bytes:
|
||||
.asciz "List"
|
||||
.size SumSimpleBasic_zdtcList2_bytes, 5
|
||||
|
||||
.type SumSimpleBasic_zdtcList1_closure,@object # @SumSimpleBasic_zdtcList1_closure
|
||||
.data
|
||||
.globl SumSimpleBasic_zdtcList1_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtcList1_closure:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtcList2_bytes
|
||||
.size SumSimpleBasic_zdtcList1_closure, 16
|
||||
|
||||
.type SumSimpleBasic_zdtcList_closure,@object # @SumSimpleBasic_zdtcList_closure
|
||||
.globl SumSimpleBasic_zdtcList_closure
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtcList_closure:
|
||||
.quad ghczmprim_GHCziTypes_TyCon_con_info
|
||||
.quad SumSimpleBasic_zdtrModule_closure+1
|
||||
.quad SumSimpleBasic_zdtcList1_closure+1
|
||||
.quad ghczmprim_GHCziTypes_krepzdztArrzt_closure
|
||||
.quad 8125128733883036046 # 0x70c24188e16af18e
|
||||
.quad 8522174167308563467 # 0x7644d840b46ff40b
|
||||
.quad 0 # 0x0
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtcList_closure, 64
|
||||
|
||||
.type r3ka_closure$def,@object # @"r3ka_closure$def"
|
||||
.p2align 4
|
||||
r3ka_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_ZC_con_info
|
||||
.quad r3k9_closure$def+2
|
||||
.quad ghczmprim_GHCziTypes_ZMZN_closure+1
|
||||
.quad 3 # 0x3
|
||||
.size r3ka_closure$def, 32
|
||||
|
||||
.type SumSimpleBasic_zdtczqNil1_closure,@object # @SumSimpleBasic_zdtczqNil1_closure
|
||||
.globl SumSimpleBasic_zdtczqNil1_closure
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtczqNil1_closure:
|
||||
.quad ghczmprim_GHCziTypes_KindRepTyConApp_con_info
|
||||
.quad SumSimpleBasic_zdtcList_closure+1
|
||||
.quad r3ka_closure$def+2
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtczqNil1_closure, 32
|
||||
|
||||
.type SumSimpleBasic_zdtczqNil3_bytes,@object # @SumSimpleBasic_zdtczqNil3_bytes
|
||||
.section .rodata,"a",@progbits
|
||||
.globl SumSimpleBasic_zdtczqNil3_bytes
|
||||
SumSimpleBasic_zdtczqNil3_bytes:
|
||||
.asciz "'Nil"
|
||||
.size SumSimpleBasic_zdtczqNil3_bytes, 5
|
||||
|
||||
.type SumSimpleBasic_zdtczqNil2_closure,@object # @SumSimpleBasic_zdtczqNil2_closure
|
||||
.data
|
||||
.globl SumSimpleBasic_zdtczqNil2_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtczqNil2_closure:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtczqNil3_bytes
|
||||
.size SumSimpleBasic_zdtczqNil2_closure, 16
|
||||
|
||||
.type SumSimpleBasic_zdtczqNil_closure,@object # @SumSimpleBasic_zdtczqNil_closure
|
||||
.globl SumSimpleBasic_zdtczqNil_closure
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtczqNil_closure:
|
||||
.quad ghczmprim_GHCziTypes_TyCon_con_info
|
||||
.quad SumSimpleBasic_zdtrModule_closure+1
|
||||
.quad SumSimpleBasic_zdtczqNil2_closure+1
|
||||
.quad SumSimpleBasic_zdtczqNil1_closure+1
|
||||
.quad 3225848470370281545 # 0x2cc48417afa86849
|
||||
.quad 8987752080532592311 # 0x7cbae8e5e96c56b7
|
||||
.quad 1 # 0x1
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtczqNil_closure, 64
|
||||
|
||||
.type r3kb_closure$def,@object # @"r3kb_closure$def"
|
||||
.p2align 4
|
||||
r3kb_closure$def:
|
||||
.quad ghczmprim_GHCziTypes_KindRepFun_con_info
|
||||
.quad SumSimpleBasic_zdtczqNil1_closure+1
|
||||
.quad SumSimpleBasic_zdtczqNil1_closure+1
|
||||
.quad 3 # 0x3
|
||||
.size r3kb_closure$def, 32
|
||||
|
||||
.type SumSimpleBasic_zdtczqCons1_closure,@object # @SumSimpleBasic_zdtczqCons1_closure
|
||||
.globl SumSimpleBasic_zdtczqCons1_closure
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtczqCons1_closure:
|
||||
.quad ghczmprim_GHCziTypes_KindRepFun_con_info
|
||||
.quad r3k9_closure$def+2
|
||||
.quad r3kb_closure$def+4
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtczqCons1_closure, 32
|
||||
|
||||
.type SumSimpleBasic_zdtczqCons3_bytes,@object # @SumSimpleBasic_zdtczqCons3_bytes
|
||||
.section .rodata,"a",@progbits
|
||||
.globl SumSimpleBasic_zdtczqCons3_bytes
|
||||
SumSimpleBasic_zdtczqCons3_bytes:
|
||||
.asciz "'Cons"
|
||||
.size SumSimpleBasic_zdtczqCons3_bytes, 6
|
||||
|
||||
.type SumSimpleBasic_zdtczqCons2_closure,@object # @SumSimpleBasic_zdtczqCons2_closure
|
||||
.data
|
||||
.globl SumSimpleBasic_zdtczqCons2_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdtczqCons2_closure:
|
||||
.quad ghczmprim_GHCziTypes_TrNameS_con_info
|
||||
.quad SumSimpleBasic_zdtczqCons3_bytes
|
||||
.size SumSimpleBasic_zdtczqCons2_closure, 16
|
||||
|
||||
.type SumSimpleBasic_zdtczqCons_closure,@object # @SumSimpleBasic_zdtczqCons_closure
|
||||
.globl SumSimpleBasic_zdtczqCons_closure
|
||||
.p2align 4
|
||||
SumSimpleBasic_zdtczqCons_closure:
|
||||
.quad ghczmprim_GHCziTypes_TyCon_con_info
|
||||
.quad SumSimpleBasic_zdtrModule_closure+1
|
||||
.quad SumSimpleBasic_zdtczqCons2_closure+1
|
||||
.quad SumSimpleBasic_zdtczqCons1_closure+4
|
||||
.quad -7205385302398664762 # 0x9c01543e44b4ffc6
|
||||
.quad 6836440343659544598 # 0x5edfea4583fa0016
|
||||
.quad 1 # 0x1
|
||||
.quad 3 # 0x3
|
||||
.size SumSimpleBasic_zdtczqCons_closure, 64
|
||||
|
||||
.type SumSimpleBasic_zdwsum_closure,@object # @SumSimpleBasic_zdwsum_closure
|
||||
.globl SumSimpleBasic_zdwsum_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdwsum_closure:
|
||||
.quad SumSimpleBasic_zdwsum_info$def
|
||||
.size SumSimpleBasic_zdwsum_closure, 8
|
||||
|
||||
.type SumSimpleBasic_zdwupto_closure,@object # @SumSimpleBasic_zdwupto_closure
|
||||
.globl SumSimpleBasic_zdwupto_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_zdwupto_closure:
|
||||
.quad SumSimpleBasic_zdwupto_info$def
|
||||
.size SumSimpleBasic_zdwupto_closure, 8
|
||||
|
||||
.type SumSimpleBasic_hszusumzupure2_closure,@object # @SumSimpleBasic_hszusumzupure2_closure
|
||||
.globl SumSimpleBasic_hszusumzupure2_closure
|
||||
.p2align 4
|
||||
SumSimpleBasic_hszusumzupure2_closure:
|
||||
.quad SumSimpleBasic_hszusumzupure2_info$def
|
||||
.quad 0 # 0x0
|
||||
.quad 0 # 0x0
|
||||
.quad 0 # 0x0
|
||||
.size SumSimpleBasic_hszusumzupure2_closure, 32
|
||||
|
||||
.type SumSimpleBasic_hszusumzupure1_closure,@object # @SumSimpleBasic_hszusumzupure1_closure
|
||||
.globl SumSimpleBasic_hszusumzupure1_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_hszusumzupure1_closure:
|
||||
.quad SumSimpleBasic_hszusumzupure1_info$def
|
||||
.quad 0 # 0x0
|
||||
.size SumSimpleBasic_hszusumzupure1_closure, 16
|
||||
|
||||
.type SumSimpleBasic_hszusumzupure_closure,@object # @SumSimpleBasic_hszusumzupure_closure
|
||||
.globl SumSimpleBasic_hszusumzupure_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_hszusumzupure_closure:
|
||||
.quad SumSimpleBasic_hszusumzupure_info$def
|
||||
.quad 0 # 0x0
|
||||
.size SumSimpleBasic_hszusumzupure_closure, 16
|
||||
|
||||
.type SumSimpleBasic_Nil_closure,@object # @SumSimpleBasic_Nil_closure
|
||||
.globl SumSimpleBasic_Nil_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_Nil_closure:
|
||||
.quad SumSimpleBasic_Nil_con_info$def
|
||||
.size SumSimpleBasic_Nil_closure, 8
|
||||
|
||||
.type SumSimpleBasic_Cons_closure,@object # @SumSimpleBasic_Cons_closure
|
||||
.globl SumSimpleBasic_Cons_closure
|
||||
.p2align 3
|
||||
SumSimpleBasic_Cons_closure:
|
||||
.quad SumSimpleBasic_Cons_info$def
|
||||
.size SumSimpleBasic_Cons_closure, 8
|
||||
|
||||
.type i3st_str$def,@object # @"i3st_str$def"
|
||||
.section .rodata,"a",@progbits
|
||||
i3st_str$def:
|
||||
.asciz "main:SumSimpleBasic.Nil"
|
||||
.size i3st_str$def, 24
|
||||
|
||||
.type i3sD_str$def,@object # @"i3sD_str$def"
|
||||
i3sD_str$def:
|
||||
.asciz "main:SumSimpleBasic.Cons"
|
||||
.size i3sD_str$def, 25
|
||||
|
||||
.type S3rl_srt$def,@object # @"S3rl_srt$def"
|
||||
.p2align 4
|
||||
S3rl_srt$def:
|
||||
.quad base_GHCziIOziHandleziFD_stdout_closure
|
||||
.quad base_GHCziIOziHandleziText_hPutStr2_closure
|
||||
.quad Sum_hszusumzupure2_closure
|
||||
.quad Sum_hszusumzupure1_closure
|
||||
.size S3kT_srt$def, 32
|
||||
.quad SumSimpleBasic_hszusumzupure2_closure
|
||||
.quad SumSimpleBasic_hszusumzupure1_closure
|
||||
.size S3rl_srt$def, 32
|
||||
|
||||
|
||||
.globl Sum_zdwsum_info
|
||||
Sum_zdwsum_info = Sum_zdwsum_info$def
|
||||
.globl Sum_hszusumzupure2_info
|
||||
Sum_hszusumzupure2_info = Sum_hszusumzupure2_info$def
|
||||
.globl Sum_hszusumzupure1_info
|
||||
Sum_hszusumzupure1_info = Sum_hszusumzupure1_info$def
|
||||
.globl Sum_hszusumzupure_info
|
||||
Sum_hszusumzupure_info = Sum_hszusumzupure_info$def
|
||||
.globl SumSimpleBasic_zdwsum_info
|
||||
SumSimpleBasic_zdwsum_info = SumSimpleBasic_zdwsum_info$def
|
||||
.globl SumSimpleBasic_zdwupto_info
|
||||
SumSimpleBasic_zdwupto_info = SumSimpleBasic_zdwupto_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure2_info
|
||||
SumSimpleBasic_hszusumzupure2_info = SumSimpleBasic_hszusumzupure2_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure1_info
|
||||
SumSimpleBasic_hszusumzupure1_info = SumSimpleBasic_hszusumzupure1_info$def
|
||||
.globl SumSimpleBasic_hszusumzupure_info
|
||||
SumSimpleBasic_hszusumzupure_info = SumSimpleBasic_hszusumzupure_info$def
|
||||
.globl SumSimpleBasic_Nil_con_info
|
||||
SumSimpleBasic_Nil_con_info = SumSimpleBasic_Nil_con_info$def
|
||||
.globl SumSimpleBasic_Cons_con_info
|
||||
SumSimpleBasic_Cons_con_info = SumSimpleBasic_Cons_con_info$def
|
||||
.section ".note.GNU-stack","",@progbits
|
||||
|
File diff suppressed because it is too large
Load Diff
672
playground/sum/sum-ghc-native-O2.asm
Normal file
672
playground/sum/sum-ghc-native-O2.asm
Normal file
@ -0,0 +1,672 @@
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .rodata.str,"aMS",@progbits,1
|
||||
.align 1
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$trModule4_bytes
|
||||
.type SumSimpleBasic.$trModule4_bytes, @object
|
||||
SumSimpleBasic.$trModule4_bytes:
|
||||
.asciz "main"
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$trModule3_closure
|
||||
.type SumSimpleBasic.$trModule3_closure, @object
|
||||
SumSimpleBasic.$trModule3_closure:
|
||||
.quad GHC.Types.TrNameS_con_info
|
||||
.quad SumSimpleBasic.$trModule4_bytes
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .rodata.str,"aMS",@progbits,1
|
||||
.align 1
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$trModule2_bytes
|
||||
.type SumSimpleBasic.$trModule2_bytes, @object
|
||||
SumSimpleBasic.$trModule2_bytes:
|
||||
.asciz "SumSimpleBasic"
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$trModule1_closure
|
||||
.type SumSimpleBasic.$trModule1_closure, @object
|
||||
SumSimpleBasic.$trModule1_closure:
|
||||
.quad GHC.Types.TrNameS_con_info
|
||||
.quad SumSimpleBasic.$trModule2_bytes
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$trModule_closure
|
||||
.type SumSimpleBasic.$trModule_closure, @object
|
||||
SumSimpleBasic.$trModule_closure:
|
||||
.quad GHC.Types.Module_con_info
|
||||
.quad SumSimpleBasic.$trModule3_closure+1
|
||||
.quad SumSimpleBasic.$trModule1_closure+1
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
$krep_r3k9_closure:
|
||||
.quad GHC.Types.KindRepVar_con_info
|
||||
.quad 0
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .rodata.str,"aMS",@progbits,1
|
||||
.align 1
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tcList2_bytes
|
||||
.type SumSimpleBasic.$tcList2_bytes, @object
|
||||
SumSimpleBasic.$tcList2_bytes:
|
||||
.asciz "List"
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tcList1_closure
|
||||
.type SumSimpleBasic.$tcList1_closure, @object
|
||||
SumSimpleBasic.$tcList1_closure:
|
||||
.quad GHC.Types.TrNameS_con_info
|
||||
.quad SumSimpleBasic.$tcList2_bytes
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tcList_closure
|
||||
.type SumSimpleBasic.$tcList_closure, @object
|
||||
SumSimpleBasic.$tcList_closure:
|
||||
.quad GHC.Types.TyCon_con_info
|
||||
.quad SumSimpleBasic.$trModule_closure+1
|
||||
.quad SumSimpleBasic.$tcList1_closure+1
|
||||
.quad GHC.Types.krep$*Arr*_closure
|
||||
.quad 8125128733883036046
|
||||
.quad 8522174167308563467
|
||||
.quad 0
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
$krep1_r3ka_closure:
|
||||
.quad :_con_info
|
||||
.quad $krep_r3k9_closure+2
|
||||
.quad GHC.Types.[]_closure+1
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tc'Nil1_closure
|
||||
.type SumSimpleBasic.$tc'Nil1_closure, @object
|
||||
SumSimpleBasic.$tc'Nil1_closure:
|
||||
.quad GHC.Types.KindRepTyConApp_con_info
|
||||
.quad SumSimpleBasic.$tcList_closure+1
|
||||
.quad $krep1_r3ka_closure+2
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .rodata.str,"aMS",@progbits,1
|
||||
.align 1
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tc'Nil3_bytes
|
||||
.type SumSimpleBasic.$tc'Nil3_bytes, @object
|
||||
SumSimpleBasic.$tc'Nil3_bytes:
|
||||
.asciz "'Nil"
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tc'Nil2_closure
|
||||
.type SumSimpleBasic.$tc'Nil2_closure, @object
|
||||
SumSimpleBasic.$tc'Nil2_closure:
|
||||
.quad GHC.Types.TrNameS_con_info
|
||||
.quad SumSimpleBasic.$tc'Nil3_bytes
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tc'Nil_closure
|
||||
.type SumSimpleBasic.$tc'Nil_closure, @object
|
||||
SumSimpleBasic.$tc'Nil_closure:
|
||||
.quad GHC.Types.TyCon_con_info
|
||||
.quad SumSimpleBasic.$trModule_closure+1
|
||||
.quad SumSimpleBasic.$tc'Nil2_closure+1
|
||||
.quad SumSimpleBasic.$tc'Nil1_closure+1
|
||||
.quad 3225848470370281545
|
||||
.quad 8987752080532592311
|
||||
.quad 1
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
$krep2_r3kb_closure:
|
||||
.quad GHC.Types.KindRepFun_con_info
|
||||
.quad SumSimpleBasic.$tc'Nil1_closure+1
|
||||
.quad SumSimpleBasic.$tc'Nil1_closure+1
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tc'Cons1_closure
|
||||
.type SumSimpleBasic.$tc'Cons1_closure, @object
|
||||
SumSimpleBasic.$tc'Cons1_closure:
|
||||
.quad GHC.Types.KindRepFun_con_info
|
||||
.quad $krep_r3k9_closure+2
|
||||
.quad $krep2_r3kb_closure+4
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .rodata.str,"aMS",@progbits,1
|
||||
.align 1
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tc'Cons3_bytes
|
||||
.type SumSimpleBasic.$tc'Cons3_bytes, @object
|
||||
SumSimpleBasic.$tc'Cons3_bytes:
|
||||
.asciz "'Cons"
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tc'Cons2_closure
|
||||
.type SumSimpleBasic.$tc'Cons2_closure, @object
|
||||
SumSimpleBasic.$tc'Cons2_closure:
|
||||
.quad GHC.Types.TrNameS_con_info
|
||||
.quad SumSimpleBasic.$tc'Cons3_bytes
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$tc'Cons_closure
|
||||
.type SumSimpleBasic.$tc'Cons_closure, @object
|
||||
SumSimpleBasic.$tc'Cons_closure:
|
||||
.quad GHC.Types.TyCon_con_info
|
||||
.quad SumSimpleBasic.$trModule_closure+1
|
||||
.quad SumSimpleBasic.$tc'Cons2_closure+1
|
||||
.quad SumSimpleBasic.$tc'Cons1_closure+4
|
||||
.quad -7205385302398664762
|
||||
.quad 6836440343659544598
|
||||
.quad 1
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$wsum_closure
|
||||
.type SumSimpleBasic.$wsum_closure, @object
|
||||
SumSimpleBasic.$wsum_closure:
|
||||
.quad SumSimpleBasic.$wsum_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.quad 4294967301
|
||||
.quad 0
|
||||
.quad 14
|
||||
.globl SumSimpleBasic.$wsum_info
|
||||
.type SumSimpleBasic.$wsum_info, @object
|
||||
SumSimpleBasic.$wsum_info:
|
||||
_c3kZ:
|
||||
leaq -16(%rbp),%rax
|
||||
cmpq %r15,%rax
|
||||
jb _c3l0
|
||||
_c3l1:
|
||||
movq $block_c3kS_info,-8(%rbp)
|
||||
movq %r14,%rbx
|
||||
addq $-8,%rbp
|
||||
testb $7,%bl
|
||||
jne _c3kS
|
||||
_c3kT:
|
||||
jmp *(%rbx)
|
||||
.align 8
|
||||
.quad 65
|
||||
.quad 30
|
||||
block_c3lc_info:
|
||||
_c3lc:
|
||||
movq %rbx,%rax
|
||||
movq 8(%rbp),%rbx
|
||||
addq %rax,%rbx
|
||||
addq $16,%rbp
|
||||
jmp *(%rbp)
|
||||
.align 8
|
||||
.quad 0
|
||||
.quad 30
|
||||
block_c3kS_info:
|
||||
_c3kS:
|
||||
movq %rbx,%rax
|
||||
andl $7,%eax
|
||||
cmpq $1,%rax
|
||||
je _c3kW
|
||||
_c3kX:
|
||||
movq $block_c3l7_info,-8(%rbp)
|
||||
movq 14(%rbx),%rax
|
||||
movq 6(%rbx),%rbx
|
||||
movq %rax,(%rbp)
|
||||
addq $-8,%rbp
|
||||
testb $7,%bl
|
||||
jne _c3l7
|
||||
_c3l8:
|
||||
jmp *(%rbx)
|
||||
.align 8
|
||||
.quad 1
|
||||
.quad 30
|
||||
block_c3l7_info:
|
||||
_c3l7:
|
||||
movq $block_c3lc_info,(%rbp)
|
||||
movq 8(%rbp),%r14
|
||||
movq 7(%rbx),%rax
|
||||
movq %rax,8(%rbp)
|
||||
jmp SumSimpleBasic.$wsum_info
|
||||
_c3l0:
|
||||
movl $SumSimpleBasic.$wsum_closure,%ebx
|
||||
jmp *-8(%r13)
|
||||
_c3kW:
|
||||
xorl %ebx,%ebx
|
||||
addq $8,%rbp
|
||||
jmp *(%rbp)
|
||||
.size SumSimpleBasic.$wsum_info, .-SumSimpleBasic.$wsum_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.$wupto_closure
|
||||
.type SumSimpleBasic.$wupto_closure, @object
|
||||
SumSimpleBasic.$wupto_closure:
|
||||
.quad SumSimpleBasic.$wupto_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.quad 8589934592
|
||||
.quad 20
|
||||
sat_s3kp_info:
|
||||
_c3lF:
|
||||
leaq -16(%rbp),%rax
|
||||
cmpq %r15,%rax
|
||||
jb _c3lG
|
||||
_c3lH:
|
||||
movq $stg_upd_frame_info,-16(%rbp)
|
||||
movq %rbx,-8(%rbp)
|
||||
movq 24(%rbx),%rsi
|
||||
movq 16(%rbx),%rax
|
||||
leaq 1(%rax),%r14
|
||||
addq $-16,%rbp
|
||||
jmp SumSimpleBasic.$wupto_info
|
||||
_c3lG:
|
||||
jmp *-16(%r13)
|
||||
.size sat_s3kp_info, .-sat_s3kp_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.quad 8589934604
|
||||
.quad 0
|
||||
.quad 14
|
||||
.globl SumSimpleBasic.$wupto_info
|
||||
.type SumSimpleBasic.$wupto_info, @object
|
||||
SumSimpleBasic.$wupto_info:
|
||||
_c3lL:
|
||||
addq $72,%r12
|
||||
cmpq 856(%r13),%r12
|
||||
ja _c3lP
|
||||
_c3lO:
|
||||
cmpq %rsi,%r14
|
||||
jle _c3lJ
|
||||
_c3lK:
|
||||
addq $-72,%r12
|
||||
movl $SumSimpleBasic.Nil_closure+1,%ebx
|
||||
jmp *(%rbp)
|
||||
_c3lP:
|
||||
movq $72,904(%r13)
|
||||
movl $SumSimpleBasic.$wupto_closure,%ebx
|
||||
jmp *-8(%r13)
|
||||
_c3lJ:
|
||||
movq $sat_s3kp_info,-64(%r12)
|
||||
movq %r14,-48(%r12)
|
||||
movq %rsi,-40(%r12)
|
||||
movq $GHC.Types.I#_con_info,-32(%r12)
|
||||
movq %r14,-24(%r12)
|
||||
movq $SumSimpleBasic.Cons_con_info,-16(%r12)
|
||||
leaq -31(%r12),%rax
|
||||
movq %rax,-8(%r12)
|
||||
leaq -64(%r12),%rax
|
||||
movq %rax,(%r12)
|
||||
leaq -14(%r12),%rbx
|
||||
jmp *(%rbp)
|
||||
.size SumSimpleBasic.$wupto_info, .-SumSimpleBasic.$wupto_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.hs_sum_pure2_closure
|
||||
.type SumSimpleBasic.hs_sum_pure2_closure, @object
|
||||
SumSimpleBasic.hs_sum_pure2_closure:
|
||||
.quad SumSimpleBasic.hs_sum_pure2_info
|
||||
.quad 0
|
||||
.quad 0
|
||||
.quad 0
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.quad 0
|
||||
.quad 21
|
||||
.globl SumSimpleBasic.hs_sum_pure2_info
|
||||
.type SumSimpleBasic.hs_sum_pure2_info, @object
|
||||
SumSimpleBasic.hs_sum_pure2_info:
|
||||
_c3m9:
|
||||
leaq -24(%rbp),%rax
|
||||
cmpq %r15,%rax
|
||||
jb _c3mj
|
||||
_c3mk:
|
||||
subq $8,%rsp
|
||||
movq %r13,%rax
|
||||
movq %rbx,%rsi
|
||||
movq %rax,%rdi
|
||||
xorl %eax,%eax
|
||||
call newCAF
|
||||
addq $8,%rsp
|
||||
testq %rax,%rax
|
||||
je _c3m6
|
||||
_c3m5:
|
||||
movq $stg_bh_upd_frame_info,-16(%rbp)
|
||||
movq %rax,-8(%rbp)
|
||||
movq $block_c3m7_info,-24(%rbp)
|
||||
movl $100000,%esi
|
||||
movl $1,%r14d
|
||||
addq $-24,%rbp
|
||||
jmp SumSimpleBasic.$wupto_info
|
||||
_c3mp:
|
||||
movq $24,904(%r13)
|
||||
jmp stg_gc_pp
|
||||
.align 8
|
||||
.quad 0
|
||||
.quad 30
|
||||
block_c3mg_info:
|
||||
_c3mg:
|
||||
addq $24,%r12
|
||||
cmpq 856(%r13),%r12
|
||||
ja _c3mp
|
||||
_c3mo:
|
||||
movq $:_con_info,-16(%r12)
|
||||
movq %rbx,-8(%r12)
|
||||
movq %r14,(%r12)
|
||||
leaq -14(%r12),%rbx
|
||||
addq $8,%rbp
|
||||
jmp *(%rbp)
|
||||
_c3mj:
|
||||
jmp *-16(%r13)
|
||||
.align 8
|
||||
.quad 0
|
||||
.quad 30
|
||||
block_c3mc_info:
|
||||
_c3mc:
|
||||
movq $block_c3mg_info,(%rbp)
|
||||
movl $GHC.Types.[]_closure+1,%edi
|
||||
movq %rbx,%rsi
|
||||
xorl %r14d,%r14d
|
||||
jmp GHC.Show.$wshowSignedInt_info
|
||||
.align 8
|
||||
.quad 0
|
||||
.quad 30
|
||||
block_c3m7_info:
|
||||
_c3m7:
|
||||
movq $block_c3mc_info,(%rbp)
|
||||
movq %rbx,%r14
|
||||
jmp SumSimpleBasic.$wsum_info
|
||||
_c3m6:
|
||||
jmp *(%rbx)
|
||||
.size SumSimpleBasic.hs_sum_pure2_info, .-SumSimpleBasic.hs_sum_pure2_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.hs_sum_pure1_closure
|
||||
.type SumSimpleBasic.hs_sum_pure1_closure, @object
|
||||
SumSimpleBasic.hs_sum_pure1_closure:
|
||||
.quad SumSimpleBasic.hs_sum_pure1_info
|
||||
.quad 0
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.long S3mC_srt-(SumSimpleBasic.hs_sum_pure1_info)+0
|
||||
.long 0
|
||||
.quad 4294967299
|
||||
.quad 0
|
||||
.quad 30064771086
|
||||
.globl SumSimpleBasic.hs_sum_pure1_info
|
||||
.type SumSimpleBasic.hs_sum_pure1_info, @object
|
||||
SumSimpleBasic.hs_sum_pure1_info:
|
||||
_c3mz:
|
||||
movl $GHC.Types.True_closure+2,%edi
|
||||
movl $SumSimpleBasic.hs_sum_pure2_closure,%esi
|
||||
movl $GHC.IO.Handle.FD.stdout_closure,%r14d
|
||||
jmp GHC.IO.Handle.Text.hPutStr2_info
|
||||
.size SumSimpleBasic.hs_sum_pure1_info, .-SumSimpleBasic.hs_sum_pure1_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.hs_sum_pure_closure
|
||||
.type SumSimpleBasic.hs_sum_pure_closure, @object
|
||||
SumSimpleBasic.hs_sum_pure_closure:
|
||||
.quad SumSimpleBasic.hs_sum_pure_info
|
||||
.quad 0
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.long S3mC_srt-(SumSimpleBasic.hs_sum_pure_info)+24
|
||||
.long 0
|
||||
.quad 4294967299
|
||||
.quad 0
|
||||
.quad 4294967310
|
||||
.globl SumSimpleBasic.hs_sum_pure_info
|
||||
.type SumSimpleBasic.hs_sum_pure_info, @object
|
||||
SumSimpleBasic.hs_sum_pure_info:
|
||||
_c3mK:
|
||||
jmp SumSimpleBasic.hs_sum_pure1_info
|
||||
.size SumSimpleBasic.hs_sum_pure_info, .-SumSimpleBasic.hs_sum_pure_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.Nil_closure
|
||||
.type SumSimpleBasic.Nil_closure, @object
|
||||
SumSimpleBasic.Nil_closure:
|
||||
.quad SumSimpleBasic.Nil_con_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl SumSimpleBasic.Cons_closure
|
||||
.type SumSimpleBasic.Cons_closure, @object
|
||||
SumSimpleBasic.Cons_closure:
|
||||
.quad SumSimpleBasic.Cons_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.quad 8589934607
|
||||
.quad 0
|
||||
.quad 14
|
||||
SumSimpleBasic.Cons_info:
|
||||
_c3mW:
|
||||
addq $24,%r12
|
||||
cmpq 856(%r13),%r12
|
||||
ja _c3n0
|
||||
_c3mZ:
|
||||
movq $SumSimpleBasic.Cons_con_info,-16(%r12)
|
||||
movq %r14,-8(%r12)
|
||||
movq %rsi,(%r12)
|
||||
leaq -14(%r12),%rbx
|
||||
jmp *(%rbp)
|
||||
_c3n0:
|
||||
movq $24,904(%r13)
|
||||
movl $SumSimpleBasic.Cons_closure,%ebx
|
||||
jmp *-8(%r13)
|
||||
.size SumSimpleBasic.Cons_info, .-SumSimpleBasic.Cons_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .rodata.str,"aMS",@progbits,1
|
||||
.align 1
|
||||
.align 1
|
||||
i3n5_str:
|
||||
.asciz "main:SumSimpleBasic.Nil"
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.long i3n5_str-(SumSimpleBasic.Nil_con_info)+0
|
||||
.long 0
|
||||
.quad 4294967296
|
||||
.quad 3
|
||||
.globl SumSimpleBasic.Nil_con_info
|
||||
.type SumSimpleBasic.Nil_con_info, @object
|
||||
SumSimpleBasic.Nil_con_info:
|
||||
_c3n4:
|
||||
incq %rbx
|
||||
jmp *(%rbp)
|
||||
.size SumSimpleBasic.Nil_con_info, .-SumSimpleBasic.Nil_con_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .rodata.str,"aMS",@progbits,1
|
||||
.align 1
|
||||
.align 1
|
||||
i3na_str:
|
||||
.asciz "main:SumSimpleBasic.Cons"
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.long i3na_str-(SumSimpleBasic.Cons_con_info)+0
|
||||
.long 0
|
||||
.quad 2
|
||||
.quad 4294967300
|
||||
.globl SumSimpleBasic.Cons_con_info
|
||||
.type SumSimpleBasic.Cons_con_info, @object
|
||||
SumSimpleBasic.Cons_con_info:
|
||||
_c3n9:
|
||||
addq $2,%rbx
|
||||
jmp *(%rbp)
|
||||
.size SumSimpleBasic.Cons_con_info, .-SumSimpleBasic.Cons_con_info
|
||||
|
||||
|
||||
|
||||
;;;; Asm code ;;;;
|
||||
.section .data.rel.ro
|
||||
.align 8
|
||||
.align 1
|
||||
S3mC_srt:
|
||||
.quad GHC.IO.Handle.FD.stdout_closure
|
||||
.quad GHC.IO.Handle.Text.hPutStr2_closure
|
||||
.quad SumSimpleBasic.hs_sum_pure2_closure
|
||||
.quad SumSimpleBasic.hs_sum_pure1_closure
|
||||
|
||||
|
@ -1,267 +0,0 @@
|
||||
[1 of 1] Compiling Sum ( sum.hs, sum.o )
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl __stginit_main@main:Sum
|
||||
.type __stginit_main@main:Sum, @object
|
||||
__stginit_main@main:Sum:
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .rodata
|
||||
.align 8
|
||||
.align 1
|
||||
c2qa_str:
|
||||
.byte 109
|
||||
.byte 97
|
||||
.byte 105
|
||||
.byte 110
|
||||
.byte 0
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl Sum.$trModule2_closure
|
||||
.type Sum.$trModule2_closure, @object
|
||||
Sum.$trModule2_closure:
|
||||
.quad GHC.Types.TrNameS_static_info
|
||||
.quad c2qa_str
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .rodata
|
||||
.align 8
|
||||
.align 1
|
||||
c2qe_str:
|
||||
.byte 83
|
||||
.byte 117
|
||||
.byte 109
|
||||
.byte 0
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl Sum.$trModule1_closure
|
||||
.type Sum.$trModule1_closure, @object
|
||||
Sum.$trModule1_closure:
|
||||
.quad GHC.Types.TrNameS_static_info
|
||||
.quad c2qe_str
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl Sum.$trModule_closure
|
||||
.type Sum.$trModule_closure, @object
|
||||
Sum.$trModule_closure:
|
||||
.quad GHC.Types.Module_static_info
|
||||
.quad Sum.$trModule2_closure+1
|
||||
.quad Sum.$trModule1_closure+1
|
||||
.quad 3
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl Sum.$wsum_closure
|
||||
.type Sum.$wsum_closure, @object
|
||||
Sum.$wsum_closure:
|
||||
.quad Sum.$wsum_info
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.quad 12884901904
|
||||
.quad 0
|
||||
.quad 15
|
||||
.globl Sum.$wsum_info
|
||||
.type Sum.$wsum_info, @object
|
||||
Sum.$wsum_info:
|
||||
_c2qE:
|
||||
_c2qz:
|
||||
cmpq %rdi,%rsi
|
||||
jg _c2qL
|
||||
_c2qK:
|
||||
addq %rsi,%r14
|
||||
incq %rsi
|
||||
jmp _c2qz
|
||||
_c2qL:
|
||||
movq %r14,%rbx
|
||||
jmp *(%rbp)
|
||||
.size Sum.$wsum_info, .-Sum.$wsum_info
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl Sum.hs_sum_pure2_closure
|
||||
.type Sum.hs_sum_pure2_closure, @object
|
||||
Sum.hs_sum_pure2_closure:
|
||||
.quad Sum.hs_sum_pure2_info
|
||||
.quad 0
|
||||
.quad 0
|
||||
.quad 0
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.quad 0
|
||||
.quad 22
|
||||
.globl Sum.hs_sum_pure2_info
|
||||
.type Sum.hs_sum_pure2_info, @object
|
||||
Sum.hs_sum_pure2_info:
|
||||
_c2r7:
|
||||
leaq -24(%rbp),%rax
|
||||
cmpq %r15,%rax
|
||||
jb _c2rd
|
||||
_c2re:
|
||||
subq $8,%rsp
|
||||
movq %r13,%rax
|
||||
movq %rbx,%rsi
|
||||
movq %rax,%rdi
|
||||
xorl %eax,%eax
|
||||
call newCAF
|
||||
addq $8,%rsp
|
||||
testq %rax,%rax
|
||||
je _c2r4
|
||||
_c2r3:
|
||||
movq $stg_bh_upd_frame_info,-16(%rbp)
|
||||
movq %rax,-8(%rbp)
|
||||
movq $block_c2r5_info,-24(%rbp)
|
||||
movl $100000,%edi
|
||||
movl $1,%esi
|
||||
xorl %r14d,%r14d
|
||||
addq $-24,%rbp
|
||||
jmp Sum.$wsum_info
|
||||
_c2ri:
|
||||
movq $24,904(%r13)
|
||||
jmp stg_gc_pp
|
||||
.align 8
|
||||
.quad 0
|
||||
.quad 32
|
||||
block_c2ra_info:
|
||||
_c2ra:
|
||||
addq $24,%r12
|
||||
cmpq 856(%r13),%r12
|
||||
ja _c2ri
|
||||
_c2rh:
|
||||
movq $:_con_info,-16(%r12)
|
||||
movq %rbx,-8(%r12)
|
||||
movq %r14,(%r12)
|
||||
leaq -14(%r12),%rbx
|
||||
addq $8,%rbp
|
||||
jmp *(%rbp)
|
||||
_c2rd:
|
||||
jmp *-16(%r13)
|
||||
.align 8
|
||||
.quad 0
|
||||
.quad 32
|
||||
block_c2r5_info:
|
||||
_c2r5:
|
||||
movq $block_c2ra_info,(%rbp)
|
||||
movl $GHC.Types.[]_closure+1,%edi
|
||||
movq %rbx,%rsi
|
||||
xorl %r14d,%r14d
|
||||
jmp GHC.Show.$wshowSignedInt_info
|
||||
_c2r4:
|
||||
jmp *(%rbx)
|
||||
.size Sum.hs_sum_pure2_info, .-Sum.hs_sum_pure2_info
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl Sum.hs_sum_pure1_closure
|
||||
.type Sum.hs_sum_pure1_closure, @object
|
||||
Sum.hs_sum_pure1_closure:
|
||||
.quad Sum.hs_sum_pure1_info
|
||||
.quad 0
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.long S2rw_srt-(Sum.hs_sum_pure1_info)+0
|
||||
.long 0
|
||||
.quad 4294967299
|
||||
.quad 0
|
||||
.quad 30064771087
|
||||
.globl Sum.hs_sum_pure1_info
|
||||
.type Sum.hs_sum_pure1_info, @object
|
||||
Sum.hs_sum_pure1_info:
|
||||
_c2rt:
|
||||
movl $GHC.Types.True_closure+2,%edi
|
||||
movl $Sum.hs_sum_pure2_closure,%esi
|
||||
movl $GHC.IO.Handle.FD.stdout_closure,%r14d
|
||||
jmp GHC.IO.Handle.Text.hPutStr2_info
|
||||
.size Sum.hs_sum_pure1_info, .-Sum.hs_sum_pure1_info
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data
|
||||
.align 8
|
||||
.align 1
|
||||
.globl Sum.hs_sum_pure_closure
|
||||
.type Sum.hs_sum_pure_closure, @object
|
||||
Sum.hs_sum_pure_closure:
|
||||
.quad Sum.hs_sum_pure_info
|
||||
.quad 0
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .text
|
||||
.align 8
|
||||
.align 8
|
||||
.long S2rw_srt-(Sum.hs_sum_pure_info)+24
|
||||
.long 0
|
||||
.quad 4294967299
|
||||
.quad 0
|
||||
.quad 4294967311
|
||||
.globl Sum.hs_sum_pure_info
|
||||
.type Sum.hs_sum_pure_info, @object
|
||||
Sum.hs_sum_pure_info:
|
||||
_c2rF:
|
||||
jmp Sum.hs_sum_pure1_info
|
||||
.size Sum.hs_sum_pure_info, .-Sum.hs_sum_pure_info
|
||||
|
||||
|
||||
|
||||
==================== Asm code ====================
|
||||
.section .data.rel.ro
|
||||
.align 8
|
||||
.align 1
|
||||
S2rw_srt:
|
||||
.quad GHC.IO.Handle.Text.hPutStr2_closure
|
||||
.quad GHC.IO.Handle.FD.stdout_closure
|
||||
.quad Sum.hs_sum_pure2_closure
|
||||
.quad Sum.hs_sum_pure1_closure
|
||||
|
||||
|
@ -1,9 +1,18 @@
|
||||
module Sum where
|
||||
module SumSimpleBasic where
|
||||
|
||||
data List a
|
||||
= Nil
|
||||
| Cons a (List a)
|
||||
|
||||
hs_sum_pure :: IO ()
|
||||
hs_sum_pure = print $ sum 0 1 100000
|
||||
hs_sum_pure = print $ sum $ upto 1 100000
|
||||
where
|
||||
sum :: Int -> Int -> Int -> Int
|
||||
sum n29 n30 n31
|
||||
| n30 > n31 = n29
|
||||
| otherwise = sum (n29 + n30) (n30 + 1) n31
|
||||
upto :: Int -> Int -> List Int
|
||||
upto m n = if m > n
|
||||
then Nil
|
||||
else Cons m $ upto (m+1) n
|
||||
|
||||
sum :: List Int -> Int
|
||||
sum l = case l of
|
||||
Nil -> 0
|
||||
Cons n ns -> n + sum ns
|
||||
|
Loading…
Reference in New Issue
Block a user