.globl main | |
.text | |
.align 16 | |
.type main,@function | |
main: | |
pushl %ebp | |
pushl %ebx | |
pushl %esi | |
pushl %edi | |
movl %esp,%ebp | |
mov $0,%eax | |
.LC1: | |
movl %ebp,%esp | |
popl %edi | |
popl %esi | |
popl %ebx | |
popl %ebp | |
ret | |
.Lf2: | |
.size main,.Lf2-main | |
.globl f | |
.align 16 | |
.type f,@function | |
f: | |
pushl %ebp | |
pushl %ebx | |
pushl %esi | |
pushl %edi | |
movl %esp,%ebp | |
call f | |
movl %eax,%edi | |
call f | |
leal (%eax,%edi),%edi | |
movl %edi,20(%ebp) | |
mov $0,%eax | |
.LC3: | |
movl %ebp,%esp | |
popl %edi | |
popl %esi | |
popl %ebx | |
popl %ebp | |
ret | |
.Lf4: | |
.size f,.Lf4-f | |
.globl f2 | |
.align 16 | |
.type f2,@function | |
f2: | |
pushl %ebp | |
pushl %ebx | |
pushl %esi | |
pushl %edi | |
movl %esp,%ebp | |
subl $4,%esp | |
call f | |
movl %eax,%edi | |
cmpl $0,20(%ebp) | |
je .LC7 | |
call f | |
movl %eax,%esi | |
movl %esi,-4(%ebp) | |
jmp .LC8 | |
.LC7: | |
movl $1,-4(%ebp) | |
.LC8: | |
movl -4(%ebp),%esi | |
leal (%esi,%edi),%edi | |
movl %edi,20(%ebp) | |
mov $0,%eax | |
.LC5: | |
movl %ebp,%esp | |
popl %edi | |
popl %esi | |
popl %ebx | |
popl %ebp | |
ret | |
.Lf9: | |
.size f2,.Lf9-f2 | |
.globl f3 | |
.align 16 | |
.type f3,@function | |
f3: | |
pushl %ebp | |
pushl %ebx | |
pushl %esi | |
pushl %edi | |
movl %esp,%ebp | |
subl $44,%esp | |
movl $0,-4(%ebp) | |
movl $0,-8(%ebp) | |
movl $0,-12(%ebp) | |
movl $0,-16(%ebp) | |
movl $0,-20(%ebp) | |
movl $0,-24(%ebp) | |
movl $0,-28(%ebp) | |
movl $0,-32(%ebp) | |
movl $0,-36(%ebp) | |
movl $0,-40(%ebp) | |
movl 24(%ebp),%edi | |
leal 4(%edi),%esi | |
movl %esi,24(%ebp) | |
cmpl $0,20(%ebp) | |
je .LC12 | |
call f | |
movl %eax,%esi | |
movl %esi,-44(%ebp) | |
jmp .LC13 | |
.LC12: | |
movl $0,-44(%ebp) | |
.LC13: | |
movl -44(%ebp),%esi | |
movl %esi,(,%edi) | |
mov $0,%eax | |
.LC10: | |
movl %ebp,%esp | |
popl %edi | |
popl %esi | |
popl %ebx | |
popl %ebp | |
ret | |
.Lf14: | |
.size f3,.Lf14-f3 | |
.globl f4 | |
.align 16 | |
.type f4,@function | |
f4: | |
pushl %ebp | |
pushl %ebx | |
pushl %esi | |
pushl %edi | |
movl %esp,%ebp | |
subl $52,%esp | |
movl $0,-4(%ebp) | |
movl $0,-8(%ebp) | |
movl $0,-12(%ebp) | |
movl $0,-16(%ebp) | |
movl $0,-20(%ebp) | |
movl $0,-24(%ebp) | |
movl i,%edi | |
leal (,%edi,8),%esi | |
fldl a(%esi) | |
fstpl -36(%ebp) | |
fldl b(%esi) | |
fstpl -44(%ebp) | |
fldl -36(%ebp) | |
faddl -44(%ebp) | |
fldl .LC19 | |
fcompp | |
fstsw %ax | |
sahf | |
jp 1f | |
je .LC17 | |
1: | |
cmpl $0,%edi | |
je .LC17 | |
fldl -36(%ebp) | |
fsubl -44(%ebp) | |
fldl .LC19 | |
fcompp | |
fstsw %ax | |
sahf | |
jp 1f | |
je .LC17 | |
1: | |
movl $1,-28(%ebp) | |
jmp .LC18 | |
.LC17: | |
movl $0,-28(%ebp) | |
.LC18: | |
movl -28(%ebp),%edi | |
movl %edi,i | |
mov $0,%eax | |
.LC15: | |
movl %ebp,%esp | |
popl %edi | |
popl %esi | |
popl %ebx | |
popl %ebp | |
ret | |
.Lf20: | |
.size f4,.Lf20-f4 | |
.globl f5 | |
.align 16 | |
.type f5,@function | |
f5: | |
pushl %ebp | |
pushl %ebx | |
pushl %esi | |
pushl %edi | |
movl %esp,%ebp | |
movl k,%edi | |
movl m,%esi | |
movl A,%ebx | |
movl %edi,%edx | |
imull %esi,%edx | |
leal (%ebx,%edx,8),%edx | |
movl j,%ecx | |
movl %ecx,%eax | |
imull %esi,%eax | |
leal (%ebx,%eax,8),%esi | |
movl n,%ebx | |
movl B,%eax | |
imull %ebx,%edi | |
leal (%eax,%edi,8),%edi | |
imull %ebx,%ecx | |
leal (%eax,%ecx,8),%ebx | |
fldl (,%edx) | |
fmull (,%esi) | |
fldl (,%edi) | |
fmull (,%ebx) | |
faddp %st,%st(1) | |
fstpl x | |
fldl (,%edx) | |
fmull (,%ebx) | |
fldl (,%edi) | |
fmull (,%esi) | |
fsubrp %st,%st(1) | |
fstpl x | |
mov $0,%eax | |
.LC21: | |
movl %ebp,%esp | |
popl %edi | |
popl %esi | |
popl %ebx | |
popl %ebp | |
ret | |
.Lf22: | |
.size f5,.Lf22-f5 | |
.bss | |
.globl x | |
.align 4 | |
.type x,@object | |
.size x,8 | |
.comm x,8 | |
.globl B | |
.align 4 | |
.type B,@object | |
.size B,4 | |
.comm B,4 | |
.globl A | |
.align 4 | |
.type A,@object | |
.size A,4 | |
.comm A,4 | |
.globl n | |
.align 4 | |
.type n,@object | |
.size n,4 | |
.comm n,4 | |
.globl m | |
.align 4 | |
.type m,@object | |
.size m,4 | |
.comm m,4 | |
.globl k | |
.align 4 | |
.type k,@object | |
.size k,4 | |
.comm k,4 | |
.globl j | |
.align 4 | |
.type j,@object | |
.size j,4 | |
.comm j,4 | |
.globl i | |
.align 4 | |
.type i,@object | |
.size i,4 | |
.comm i,4 | |
.globl b | |
.align 4 | |
.type b,@object | |
.size b,80 | |
.comm b,80 | |
.globl a | |
.align 4 | |
.type a,@object | |
.size a,80 | |
.comm a,80 | |
.data | |
.align 4 | |
.LC19: | |
.long 0 | |
.long 0 | |
.text | |
.ident "LCC: 4.2" |