716 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			716 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
.global print
 | 
						|
.section ".text"
 | 
						|
.align 4
 | 
						|
print:
 | 
						|
save %sp,-128,%sp
 | 
						|
set .L2,%o0
 | 
						|
set c,%i5
 | 
						|
ldsb [%i5],%o1
 | 
						|
set s,%i5
 | 
						|
ldsh [%i5],%o2
 | 
						|
set i,%i5
 | 
						|
ld [%i5],%o3
 | 
						|
set l,%i5
 | 
						|
ld [%i5],%o4
 | 
						|
set C,%i5
 | 
						|
ldub [%i5],%o5
 | 
						|
set S,%i5
 | 
						|
lduh [%i5],%i5
 | 
						|
st %i5,[%sp+4*6+68]
 | 
						|
set I,%i5
 | 
						|
ld [%i5],%i5
 | 
						|
st %i5,[%sp+4*7+68]
 | 
						|
set L,%i5
 | 
						|
ld [%i5],%i5
 | 
						|
st %i5,[%sp+4*8+68]
 | 
						|
set f,%i5
 | 
						|
ld [%i5],%f31
 | 
						|
fstod %f31,%f30
 | 
						|
st %f30,[%sp+4*9+68]
 | 
						|
st %f31,[%sp+4*10+68]
 | 
						|
set d,%i5
 | 
						|
ld [%i5],%f30; ld [%i5+4],%f31
 | 
						|
st %f30,[%sp+4*11+68]
 | 
						|
st %f31,[%sp+4*12+68]
 | 
						|
set D,%i5
 | 
						|
ld [%i5],%f30; ld [%i5+4],%f31
 | 
						|
st %f30,[%sp+4*13+68]
 | 
						|
st %f31,[%sp+4*14+68]
 | 
						|
call printf; nop
 | 
						|
.L1:
 | 
						|
ret; restore
 | 
						|
.type print,#function
 | 
						|
.size print,.-print
 | 
						|
.global main
 | 
						|
.align 4
 | 
						|
main:
 | 
						|
save %sp,-104,%sp
 | 
						|
set c,%i5
 | 
						|
set 1,%i4
 | 
						|
stb %i4,[%i5]
 | 
						|
ldsb [%i5],%i5
 | 
						|
set s,%i4
 | 
						|
mov %i5,%i3
 | 
						|
sth %i3,[%i4]
 | 
						|
set i,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set l,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set C,%i3
 | 
						|
mov %i5,%i2
 | 
						|
stb %i2,[%i3]
 | 
						|
set S,%i3
 | 
						|
mov %i5,%i2
 | 
						|
sth %i2,[%i3]
 | 
						|
set I,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set L,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set f,%i4
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
 | 
						|
st %f31,[%i4]
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
 | 
						|
set d,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
set D,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
call print; nop
 | 
						|
set s,%i5
 | 
						|
set 2,%i4
 | 
						|
sth %i4,[%i5]
 | 
						|
ldsh [%i5],%i5
 | 
						|
set c,%i4
 | 
						|
mov %i5,%i3
 | 
						|
stb %i3,[%i4]
 | 
						|
set i,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set l,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set C,%i3
 | 
						|
mov %i5,%i2
 | 
						|
stb %i2,[%i3]
 | 
						|
set S,%i3
 | 
						|
mov %i5,%i2
 | 
						|
sth %i2,[%i3]
 | 
						|
set I,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set L,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set f,%i4
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
 | 
						|
st %f31,[%i4]
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
 | 
						|
set d,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
set D,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
call print; nop
 | 
						|
set i,%i5
 | 
						|
set 3,%i4
 | 
						|
st %i4,[%i5]
 | 
						|
ld [%i5],%i5
 | 
						|
set c,%i4
 | 
						|
mov %i5,%i3
 | 
						|
stb %i3,[%i4]
 | 
						|
set s,%i4
 | 
						|
mov %i5,%i3
 | 
						|
sth %i3,[%i4]
 | 
						|
set l,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set C,%i3
 | 
						|
mov %i5,%i2
 | 
						|
stb %i2,[%i3]
 | 
						|
set S,%i3
 | 
						|
mov %i5,%i2
 | 
						|
sth %i2,[%i3]
 | 
						|
set I,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set L,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set f,%i4
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
 | 
						|
st %f31,[%i4]
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
 | 
						|
set d,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
set D,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
call print; nop
 | 
						|
set l,%i5
 | 
						|
set 4,%i4
 | 
						|
st %i4,[%i5]
 | 
						|
ld [%i5],%i5
 | 
						|
set c,%i4
 | 
						|
mov %i5,%i3
 | 
						|
stb %i3,[%i4]
 | 
						|
set s,%i4
 | 
						|
mov %i5,%i3
 | 
						|
sth %i3,[%i4]
 | 
						|
set i,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set C,%i3
 | 
						|
mov %i5,%i2
 | 
						|
stb %i2,[%i3]
 | 
						|
set S,%i3
 | 
						|
mov %i5,%i2
 | 
						|
sth %i2,[%i3]
 | 
						|
set I,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set L,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set f,%i4
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
 | 
						|
st %f31,[%i4]
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
 | 
						|
set d,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
set D,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
call print; nop
 | 
						|
set C,%i5
 | 
						|
set 5,%i4
 | 
						|
stb %i4,[%i5]
 | 
						|
ldub [%i5],%i5
 | 
						|
set c,%i4
 | 
						|
mov %i5,%i3
 | 
						|
stb %i3,[%i4]
 | 
						|
set s,%i4
 | 
						|
mov %i5,%i3
 | 
						|
sth %i3,[%i4]
 | 
						|
set i,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set l,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set S,%i3
 | 
						|
mov %i5,%i2
 | 
						|
sth %i2,[%i3]
 | 
						|
set I,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set L,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set f,%i4
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
 | 
						|
st %f31,[%i4]
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
 | 
						|
set d,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
set D,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
call print; nop
 | 
						|
set S,%i5
 | 
						|
set 6,%i4
 | 
						|
sth %i4,[%i5]
 | 
						|
lduh [%i5],%i5
 | 
						|
set c,%i4
 | 
						|
mov %i5,%i3
 | 
						|
stb %i3,[%i4]
 | 
						|
set s,%i4
 | 
						|
mov %i5,%i3
 | 
						|
sth %i3,[%i4]
 | 
						|
set i,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set l,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set C,%i3
 | 
						|
mov %i5,%i2
 | 
						|
stb %i2,[%i3]
 | 
						|
set I,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set L,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set f,%i4
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f31; fitos %f31,%f31
 | 
						|
st %f31,[%i4]
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f30; fitod %f30,%f30
 | 
						|
set d,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
set D,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
call print; nop
 | 
						|
set I,%i5
 | 
						|
set 7,%i4
 | 
						|
st %i4,[%i5]
 | 
						|
ld [%i5],%i5
 | 
						|
set c,%i3
 | 
						|
mov %i5,%i2
 | 
						|
stb %i2,[%i3]
 | 
						|
set s,%i3
 | 
						|
mov %i5,%i2
 | 
						|
sth %i2,[%i3]
 | 
						|
set i,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set l,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set C,%i4
 | 
						|
mov %i5,%i3
 | 
						|
stb %i3,[%i4]
 | 
						|
set S,%i4
 | 
						|
mov %i5,%i3
 | 
						|
sth %i3,[%i4]
 | 
						|
set L,%i4
 | 
						|
st %i5,[%i4]
 | 
						|
set .L4,%i4
 | 
						|
ld [%i4],%f30; ld [%i4+4],%f31
 | 
						|
srl %i5,1,%i4
 | 
						|
st %i4,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
 | 
						|
fmuld %f30,%f28,%f30
 | 
						|
set 1,%i4
 | 
						|
and %i5,%i4,%i5
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
 | 
						|
faddd %f30,%f28,%f30
 | 
						|
set f,%i5
 | 
						|
fdtos %f30,%f29
 | 
						|
st %f29,[%i5]
 | 
						|
set d,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
set D,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
call print; nop
 | 
						|
set L,%i5
 | 
						|
set 8,%i4
 | 
						|
st %i4,[%i5]
 | 
						|
ld [%i5],%i5
 | 
						|
set c,%i3
 | 
						|
mov %i5,%i2
 | 
						|
stb %i2,[%i3]
 | 
						|
set s,%i3
 | 
						|
mov %i5,%i2
 | 
						|
sth %i2,[%i3]
 | 
						|
set i,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set l,%i3
 | 
						|
st %i5,[%i3]
 | 
						|
set C,%i4
 | 
						|
mov %i5,%i3
 | 
						|
stb %i3,[%i4]
 | 
						|
set S,%i4
 | 
						|
mov %i5,%i3
 | 
						|
sth %i3,[%i4]
 | 
						|
set I,%i3
 | 
						|
lduh [%i4],%i4
 | 
						|
st %i4,[%i3]
 | 
						|
set .L4,%i4
 | 
						|
ld [%i4],%f30; ld [%i4+4],%f31
 | 
						|
srl %i5,1,%i4
 | 
						|
st %i4,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
 | 
						|
fmuld %f30,%f28,%f30
 | 
						|
set 1,%i4
 | 
						|
and %i5,%i4,%i5
 | 
						|
st %i5,[%sp+64]; ld [%sp+64],%f28; fitod %f28,%f28
 | 
						|
faddd %f30,%f28,%f30
 | 
						|
set f,%i5
 | 
						|
fdtos %f30,%f29
 | 
						|
st %f29,[%i5]
 | 
						|
set d,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
set D,%i5
 | 
						|
st %f30,[%i5]; st %f31,[%i5+4]
 | 
						|
call print; nop
 | 
						|
set f,%i1
 | 
						|
set .L5,%i0
 | 
						|
ld [%i0],%f31
 | 
						|
st %f31,[%i1]
 | 
						|
ld [%i1],%f31
 | 
						|
fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
set c,%i0
 | 
						|
mov %i1,%l7
 | 
						|
stb %l7,[%i0]
 | 
						|
set s,%i0
 | 
						|
mov %i1,%l7
 | 
						|
sth %l7,[%i0]
 | 
						|
set i,%i0
 | 
						|
st %i1,[%i0]
 | 
						|
set l,%i0
 | 
						|
st %i1,[%i0]
 | 
						|
set .L9,%i1
 | 
						|
ld [%i1],%f30
 | 
						|
fcmps %f31,%f30; nop; fbul .L7; nop
 | 
						|
fsubs %f31,%f30,%f30
 | 
						|
fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
set 0x80000000,%i0
 | 
						|
add %i1,%i0,%i5
 | 
						|
ba .L8; nop
 | 
						|
.L7:
 | 
						|
fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
mov %i1,%i5
 | 
						|
.L8:
 | 
						|
set C,%i1
 | 
						|
mov %i5,%i0
 | 
						|
stb %i0,[%i1]
 | 
						|
set f,%i1
 | 
						|
ld [%i1],%f31
 | 
						|
set .L9,%i1
 | 
						|
ld [%i1],%f30
 | 
						|
fcmps %f31,%f30; nop; fbul .L11; nop
 | 
						|
fsubs %f31,%f30,%f30
 | 
						|
fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
set 0x80000000,%i0
 | 
						|
add %i1,%i0,%i4
 | 
						|
ba .L12; nop
 | 
						|
.L11:
 | 
						|
fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
mov %i1,%i4
 | 
						|
.L12:
 | 
						|
set S,%i1
 | 
						|
mov %i4,%i0
 | 
						|
sth %i0,[%i1]
 | 
						|
set f,%i1
 | 
						|
ld [%i1],%f31
 | 
						|
set .L9,%i1
 | 
						|
ld [%i1],%f30
 | 
						|
fcmps %f31,%f30; nop; fbul .L14; nop
 | 
						|
fsubs %f31,%f30,%f30
 | 
						|
fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
set 0x80000000,%i0
 | 
						|
add %i1,%i0,%i3
 | 
						|
ba .L15; nop
 | 
						|
.L14:
 | 
						|
fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
mov %i1,%i3
 | 
						|
.L15:
 | 
						|
set I,%i1
 | 
						|
st %i3,[%i1]
 | 
						|
set f,%i1
 | 
						|
ld [%i1],%f31
 | 
						|
set .L9,%i1
 | 
						|
ld [%i1],%f30
 | 
						|
fcmps %f31,%f30; nop; fbul .L17; nop
 | 
						|
fsubs %f31,%f30,%f30
 | 
						|
fstoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
set 0x80000000,%i0
 | 
						|
add %i1,%i0,%i2
 | 
						|
ba .L18; nop
 | 
						|
.L17:
 | 
						|
fstoi %f31,%f0; st %f0,[%sp+64]; ld [%sp+64],%i1
 | 
						|
mov %i1,%i2
 | 
						|
.L18:
 | 
						|
set L,%i1
 | 
						|
st %i2,[%i1]
 | 
						|
set f,%i1
 | 
						|
ld [%i1],%f31
 | 
						|
fstod %f31,%f30
 | 
						|
set d,%i1
 | 
						|
st %f30,[%i1]; st %f31,[%i1+4]
 | 
						|
set D,%i1
 | 
						|
st %f30,[%i1]; st %f31,[%i1+4]
 | 
						|
call print; nop
 | 
						|
set d,%l5
 | 
						|
set .L19,%l4
 | 
						|
ld [%l4],%f30; ld [%l4+4],%f31
 | 
						|
st %f30,[%l5]; st %f31,[%l5+4]
 | 
						|
ld [%l5],%f30; ld [%l5+4],%f31
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
set c,%l4
 | 
						|
mov %l5,%l3
 | 
						|
stb %l3,[%l4]
 | 
						|
set s,%l4
 | 
						|
mov %l5,%l3
 | 
						|
sth %l3,[%l4]
 | 
						|
set i,%l4
 | 
						|
st %l5,[%l4]
 | 
						|
set l,%l4
 | 
						|
st %l5,[%l4]
 | 
						|
set .L23,%l5
 | 
						|
ld [%l5],%f28; ld [%l5+4],%f29
 | 
						|
fcmpd %f30,%f28; nop; fbul .L21; nop
 | 
						|
fsubd %f30,%f28,%f28
 | 
						|
fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
set 0x80000000,%l4
 | 
						|
add %l5,%l4,%i1
 | 
						|
ba .L22; nop
 | 
						|
.L21:
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
mov %l5,%i1
 | 
						|
.L22:
 | 
						|
set C,%l5
 | 
						|
mov %i1,%l4
 | 
						|
stb %l4,[%l5]
 | 
						|
set d,%l5
 | 
						|
ld [%l5],%f30; ld [%l5+4],%f31
 | 
						|
set .L23,%l5
 | 
						|
ld [%l5],%f28; ld [%l5+4],%f29
 | 
						|
fcmpd %f30,%f28; nop; fbul .L25; nop
 | 
						|
fsubd %f30,%f28,%f28
 | 
						|
fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
set 0x80000000,%l4
 | 
						|
add %l5,%l4,%i0
 | 
						|
ba .L26; nop
 | 
						|
.L25:
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
mov %l5,%i0
 | 
						|
.L26:
 | 
						|
set S,%l5
 | 
						|
mov %i0,%l4
 | 
						|
sth %l4,[%l5]
 | 
						|
set d,%l5
 | 
						|
ld [%l5],%f30; ld [%l5+4],%f31
 | 
						|
set .L23,%l5
 | 
						|
ld [%l5],%f28; ld [%l5+4],%f29
 | 
						|
fcmpd %f30,%f28; nop; fbul .L28; nop
 | 
						|
fsubd %f30,%f28,%f28
 | 
						|
fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
set 0x80000000,%l4
 | 
						|
add %l5,%l4,%l7
 | 
						|
ba .L29; nop
 | 
						|
.L28:
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
mov %l5,%l7
 | 
						|
.L29:
 | 
						|
set I,%l5
 | 
						|
st %l7,[%l5]
 | 
						|
set d,%l5
 | 
						|
ld [%l5],%f30; ld [%l5+4],%f31
 | 
						|
set .L23,%l5
 | 
						|
ld [%l5],%f28; ld [%l5+4],%f29
 | 
						|
fcmpd %f30,%f28; nop; fbul .L31; nop
 | 
						|
fsubd %f30,%f28,%f28
 | 
						|
fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
set 0x80000000,%l4
 | 
						|
add %l5,%l4,%l6
 | 
						|
ba .L32; nop
 | 
						|
.L31:
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l5
 | 
						|
mov %l5,%l6
 | 
						|
.L32:
 | 
						|
set L,%l5
 | 
						|
st %l6,[%l5]
 | 
						|
set d,%l5
 | 
						|
ld [%l5],%f30; ld [%l5+4],%f31
 | 
						|
set f,%l5
 | 
						|
fdtos %f30,%f29
 | 
						|
st %f29,[%l5]
 | 
						|
set D,%l5
 | 
						|
st %f30,[%l5]; st %f31,[%l5+4]
 | 
						|
call print; nop
 | 
						|
set D,%l3
 | 
						|
set .L33,%l2
 | 
						|
ld [%l2],%f30; ld [%l2+4],%f31
 | 
						|
st %f30,[%l3]; st %f31,[%l3+4]
 | 
						|
ld [%l3],%f30; ld [%l3+4],%f31
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
set c,%l2
 | 
						|
mov %l3,%l1
 | 
						|
stb %l1,[%l2]
 | 
						|
set s,%l2
 | 
						|
mov %l3,%l1
 | 
						|
sth %l1,[%l2]
 | 
						|
set i,%l2
 | 
						|
st %l3,[%l2]
 | 
						|
set l,%l2
 | 
						|
st %l3,[%l2]
 | 
						|
set .L37,%l3
 | 
						|
ld [%l3],%f28; ld [%l3+4],%f29
 | 
						|
fcmpd %f30,%f28; nop; fbul .L35; nop
 | 
						|
fsubd %f30,%f28,%f28
 | 
						|
fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
set 0x80000000,%l2
 | 
						|
add %l3,%l2,%l5
 | 
						|
ba .L36; nop
 | 
						|
.L35:
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
mov %l3,%l5
 | 
						|
.L36:
 | 
						|
set C,%l3
 | 
						|
mov %l5,%l2
 | 
						|
stb %l2,[%l3]
 | 
						|
set D,%l3
 | 
						|
ld [%l3],%f30; ld [%l3+4],%f31
 | 
						|
set .L37,%l3
 | 
						|
ld [%l3],%f28; ld [%l3+4],%f29
 | 
						|
fcmpd %f30,%f28; nop; fbul .L39; nop
 | 
						|
fsubd %f30,%f28,%f28
 | 
						|
fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
set 0x80000000,%l2
 | 
						|
add %l3,%l2,%l4
 | 
						|
ba .L40; nop
 | 
						|
.L39:
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
mov %l3,%l4
 | 
						|
.L40:
 | 
						|
set S,%l3
 | 
						|
mov %l4,%l2
 | 
						|
sth %l2,[%l3]
 | 
						|
set D,%l3
 | 
						|
ld [%l3],%f30; ld [%l3+4],%f31
 | 
						|
set .L37,%l3
 | 
						|
ld [%l3],%f28; ld [%l3+4],%f29
 | 
						|
fcmpd %f30,%f28; nop; fbul .L42; nop
 | 
						|
fsubd %f30,%f28,%f28
 | 
						|
fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
set 0x80000000,%l2
 | 
						|
add %l3,%l2,%l3
 | 
						|
st %l3,[%fp+-4]
 | 
						|
ba .L43; nop
 | 
						|
.L42:
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
st %l3,[%fp+-4]
 | 
						|
.L43:
 | 
						|
set I,%l3
 | 
						|
ld [%fp+-4],%l2
 | 
						|
st %l2,[%l3]
 | 
						|
set D,%l3
 | 
						|
ld [%l3],%f30; ld [%l3+4],%f31
 | 
						|
set .L37,%l3
 | 
						|
ld [%l3],%f28; ld [%l3+4],%f29
 | 
						|
fcmpd %f30,%f28; nop; fbul .L45; nop
 | 
						|
fsubd %f30,%f28,%f28
 | 
						|
fdtoi %f28,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
set 0x80000000,%l2
 | 
						|
add %l3,%l2,%l3
 | 
						|
st %l3,[%fp+-8]
 | 
						|
ba .L46; nop
 | 
						|
.L45:
 | 
						|
fdtoi %f30,%f0; st %f0,[%sp+64]; ld [%sp+64],%l3
 | 
						|
st %l3,[%fp+-8]
 | 
						|
.L46:
 | 
						|
set L,%l3
 | 
						|
ld [%fp+-8],%l2
 | 
						|
st %l2,[%l3]
 | 
						|
set D,%l3
 | 
						|
ld [%l3],%f30; ld [%l3+4],%f31
 | 
						|
set f,%l3
 | 
						|
fdtos %f30,%f29
 | 
						|
st %f29,[%l3]
 | 
						|
set d,%l3
 | 
						|
st %f30,[%l3]; st %f31,[%l3+4]
 | 
						|
call print; nop
 | 
						|
set p,%l3
 | 
						|
st %g0,[%l3]
 | 
						|
st %g0,[%l3]
 | 
						|
st %g0,[%l3]
 | 
						|
st %g0,[%l3]
 | 
						|
set P,%l2
 | 
						|
ld [%l2],%l1
 | 
						|
st %l1,[%l3]
 | 
						|
mov %g0,%l1
 | 
						|
st %l1,[%l2]
 | 
						|
st %l1,[%l2]
 | 
						|
st %l1,[%l2]
 | 
						|
st %l1,[%l2]
 | 
						|
ld [%l3],%l3
 | 
						|
st %l3,[%l2]
 | 
						|
mov %g0,%i0
 | 
						|
.L3:
 | 
						|
ret; restore
 | 
						|
.type main,#function
 | 
						|
.size main,.-main
 | 
						|
.section ".bss"
 | 
						|
.global P
 | 
						|
.type P,#object
 | 
						|
.size P,4
 | 
						|
.common P,4,4
 | 
						|
.global p
 | 
						|
.type p,#object
 | 
						|
.size p,4
 | 
						|
.common p,4,4
 | 
						|
.global D
 | 
						|
.type D,#object
 | 
						|
.size D,8
 | 
						|
.common D,8,8
 | 
						|
.global d
 | 
						|
.type d,#object
 | 
						|
.size d,8
 | 
						|
.common d,8,8
 | 
						|
.global f
 | 
						|
.type f,#object
 | 
						|
.size f,4
 | 
						|
.common f,4,4
 | 
						|
.global L
 | 
						|
.type L,#object
 | 
						|
.size L,4
 | 
						|
.common L,4,4
 | 
						|
.global I
 | 
						|
.type I,#object
 | 
						|
.size I,4
 | 
						|
.common I,4,4
 | 
						|
.global S
 | 
						|
.type S,#object
 | 
						|
.size S,2
 | 
						|
.common S,2,2
 | 
						|
.global C
 | 
						|
.type C,#object
 | 
						|
.size C,1
 | 
						|
.common C,1,1
 | 
						|
.global l
 | 
						|
.type l,#object
 | 
						|
.size l,4
 | 
						|
.common l,4,4
 | 
						|
.global i
 | 
						|
.type i,#object
 | 
						|
.size i,4
 | 
						|
.common i,4,4
 | 
						|
.global s
 | 
						|
.type s,#object
 | 
						|
.size s,2
 | 
						|
.common s,2,2
 | 
						|
.global c
 | 
						|
.type c,#object
 | 
						|
.size c,1
 | 
						|
.common c,1,1
 | 
						|
.section ".rodata"
 | 
						|
.align 8
 | 
						|
.L37:
 | 
						|
.word 0x41e00000
 | 
						|
.word 0x0
 | 
						|
.align 8
 | 
						|
.L33:
 | 
						|
.word 0x40260000
 | 
						|
.word 0x0
 | 
						|
.align 8
 | 
						|
.L23:
 | 
						|
.word 0x41e00000
 | 
						|
.word 0x0
 | 
						|
.align 8
 | 
						|
.L19:
 | 
						|
.word 0x40240000
 | 
						|
.word 0x0
 | 
						|
.align 4
 | 
						|
.L9:
 | 
						|
.word 0x4f000000
 | 
						|
.align 4
 | 
						|
.L5:
 | 
						|
.word 0x41100000
 | 
						|
.align 8
 | 
						|
.L4:
 | 
						|
.word 0x40000000
 | 
						|
.word 0x0
 | 
						|
.align 1
 | 
						|
.L2:
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 100
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 108
 | 
						|
.byte 100
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 117
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 117
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 117
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 108
 | 
						|
.byte 117
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 102
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 102
 | 
						|
.byte 32
 | 
						|
.byte 37
 | 
						|
.byte 108
 | 
						|
.byte 102
 | 
						|
.byte 10
 | 
						|
.byte 0
 |