287 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			287 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
.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"
 |