         Edinburgh IMP77 Compiler - Version 8.4
    1 %begin
				.option nopic
		.Ltext0:
				.align	1
				.globl	main
		main:
		.LFB185:
		.LVL0:
				add	sp,sp,-32
				sd	ra,24(sp)
				sd	s0,16(sp)
				sd	s1,8(sp)
				sd	s2,0(sp)
    2 %integer i,j,k
				call	_imp_initialise
		.LVL1:
				lui	s1,%hi(.LANCHOR0)
				addi	s1,s1,%lo(.LANCHOR0)
				add	s2,s1,80
		.LVL2:
		.L2:
    3 %ownintegerarray a(0:19)=10,9,8,7,6,5,4,3,2,1,0-1,-2,-3,-4,-5,-6,-7,-8,-9,-10;
    4                                               ! 0-1, not 0, -1 !!
    5 j=4
    6 %for k=0,1,19 %cycle
    7 write(a(k)//4,4); write(a(k)//j,4);  newline
				lw	s0,0(s1)
				sraw	a0,s0,31
				srlw	a0,a0,30
				addw	a0,a0,s0
				li	a1,4
				sraw	a0,a0,2
				call	_imp_writelong
		.LVL3:
    8 %repeat
				sra	a0,s0,63
				and	a0,a0,3
				add	a0,a0,s0
				li	a1,4
				sra	a0,a0,2
				call	_imp_writelong
		.LVL4:
		.LBB6:
		.LBB7:
				call	_imp_newline
		.LVL5:
		.LDL1:
				add	s1,s1,4
		.LBE7:
		.LBE6:
    9 %endofprogram
				bne	s1,s2,.L2
		.L3:
		.LVL6:
		.LBB8:
		.LBB9:
				li	a0,0
				call	exit
		.LVL7:
		.LBE9:
		.LBE8:
		.LFE185:
				.section	.rodata
				.align	3
				.set	.LANCHOR0,. + 0
		A.6004:
				.word	10
				.word	9
				.word	8
				.word	7
				.word	6
				.word	5
				.word	4
				.word	3
				.word	2
				.word	1
				.word	-1
				.word	-2
				.word	-3
				.word	-4
				.word	-5
				.word	-6
				.word	-7
				.word	-8
				.word	-9
				.word	-10
		.Letext0:
?I unused
   10 Statements compiled
