         Edinburgh IMP77 Compiler - Version 8.4
    1 %BEGIN
				.section .mdebug.abi32
				.previous
				.nan	legacy
				.module	fp=xx
				.module	nooddspreg
				.abicalls
		$Ltext0:
				.align	2
				.globl	main
				LFB185 = .
				.set	nomips16
				.set	nomicromips
				.ent	main
		main:
				.frame	$sp,40,$31		# vars= 0, regs= 3/0, args= 16, gp= 8
				.mask	0x80030000,-4
				.fmask	0x00000000,0
				.set	noreorder
				.set	nomacro
				LVL0 = .
				addiu	$sp,$sp,-40
				sw	$31,36($sp)
				sw	$17,32($sp)
				sw	$16,28($sp)
				lui	$28,%hi(__gnu_local_gp)
				addiu	$28,$28,%lo(__gnu_local_gp)
				.cprestore	16
    2   %INTEGER NP
				lw	$25,%call16(_imp_initialise)($28)
				.reloc	1f,R_MIPS_JALR,_imp_initialise
			1:	jalr	$25
				nop
				LVL1 = .
				lw	$28,16($sp)
				LVL2 = .
				LVL3 = .
				LBB9 = .
    3   NP = 5
    4   ! Generates wrong C code!  Limit should be evaluated once at start of loop.y
    5   %CYCLE NP=1,1,NP
    6     WRITE(NP, 0); NEWLINE
				move	$5,$0
				move	$4,$16
				lw	$25,%call16(_imp_writeint)($28)
				.reloc	1f,R_MIPS_JALR,_imp_writeint
			1:	jalr	$25
				nop
				LVL6 = .
				lw	$28,16($sp)
				LBB10 = .
				LBB11 = .
				lw	$25,%call16(_imp_newline)($28)
				.reloc	1f,R_MIPS_JALR,_imp_newline
			1:	jalr	$25
				nop
				LVL7 = .
				lw	$28,16($sp)
				LDL1 = .
				LBE11 = .
				LBE10 = .
				bne	$16,$17,$L2
				move	$4,$0
				L3 = .
				LVL8 = .
				LBE9 = .
				LBB12 = .
				LBB13 = .
				lw	$25,%call16(exit)($28)
				.reloc	1f,R_MIPS_JALR,exit
			1:	jalr	$25
				nop
				LVL9 = .
				LBE13 = .
				LBE12 = .
				.set	macro
				.set	reorder
				.end	main
		$LFE185:
		$Letext0:
    7   %REPEAT
    8 %ENDOFPROGRAM
				move	$16,$0
    8 Statements compiled
				li	$17,5			# 0x5
				LVL4 = .
		$L2:
				addiu	$16,$16,1
				LVL5 = .
