         Edinburgh IMP77 Compiler - Version 8.4
    1 %BEGIN
				.section .mdebug.abi32
				.previous
				.nan	legacy
				.module	fp=xx
				.module	nooddspreg
				.abicalls
		$Ltext0:
				.rdata
				.align	2
		$LC0:
				.byte	35
				.ascii	"\012TEST OK    (BYTE ADDRESS ANSWERS)\012\000"
				.space	219
				.align	2
				.globl	main
				LFB185 = .
				.set	nomips16
				.set	nomicromips
				.ent	main
		main:
				.frame	$sp,1088,$31		# vars= 816, regs= 1/0, args= 256, gp= 8
				.mask	0x80000000,-4
				.fmask	0x00000000,0
				.set	noreorder
				.set	nomacro
				LVL0 = .
				addiu	$sp,$sp,-1088
				sw	$31,1084($sp)
				lui	$28,%hi(__gnu_local_gp)
				addiu	$28,$28,%lo(__gnu_local_gp)
				.cprestore	256
				lw	$2,%got(__stack_chk_guard)($28)
				lw	$2,0($2)
				sw	$2,1076($sp)
    2 %RECORDFORMAT F1(%INTEGER I,J,K,L)
				lw	$25,%call16(_imp_initialise)($28)
				.reloc	1f,R_MIPS_JALR,_imp_initialise
			1:	jalr	$25
				nop
				LVL1 = .
				lw	$28,256($sp)
				LVL2 = .
				LVL3 = .
				LBB39 = .
    3 %RECORDFORMAT F2(%INTEGER P,%RECORD(F1)%ARRAY A(0:8))
    4 %RECORD(F2) R,RP
    5 %RECORD(F2)%NAME RR
    6 %RECORD(F1)%NAME RN
    7 %INTEGER I,J,K,L
    8 RR==RP
    9 I=ADDR(R_A(0))
   10 RN==R_A(0)
   11 J=ADDR(R_A(0)_K)
   12 K=ADDR(RR_A(0))
   13 L=ADDR(RR_A(0)_K)
   14 RN==RR_A(0)
   15 %IF I+8=J %AND ADDR(R)+4=I %AND K+8=L %C
   16       %AND ADDR(RR)+4=K=ADDR(RN) %THEN PRINTSTRING("
   17 TEST OK    (BYTE ADDRESS ANSWERS)
   18 ") %AND %STOP
   19 %IF I+4=J %AND ADDR(R)+2=I %AND K+4=L %C
   20       %AND ADDR(RR)+2=K=ADDR(RN) %THEN PRINTSTRING("
   21 TEST OK (WORD ADDRESS ANSWERS)
   22 ")  %AND %STOP
   23 PRINTSTRING("
   24 WRONG ANSWERS
   25 ")
				lui	$2,%hi($LC0)
				addiu	$2,$2,%lo($LC0)
				addiu	$3,$sp,820
				addiu	$4,$2,256
		$L3:
				lw	$8,0($2)
				lw	$7,4($2)
				lw	$6,8($2)
				lw	$5,12($2)
				sw	$8,0($3)
				sw	$7,4($3)
				sw	$6,8($3)
				sw	$5,12($3)
				addiu	$2,$2,16
				bne	$2,$4,$L3
				addiu	$3,$3,16
				addiu	$2,$sp,820
				addiu	$3,$sp,564
				addiu	$4,$sp,1076
		$L4:
				lw	$8,0($2)
				lw	$7,4($2)
				lw	$6,8($2)
				lw	$5,12($2)
				sw	$8,0($3)
				sw	$7,4($3)
				sw	$6,8($3)
				sw	$5,12($3)
				addiu	$2,$2,16
				bne	$2,$4,$L4
				addiu	$3,$3,16
				addiu	$2,$sp,564
				addiu	$3,$sp,820
				move	$4,$3
		$L5:
				lw	$8,0($2)
				lw	$7,4($2)
				lw	$6,8($2)
				lw	$5,12($2)
				sw	$8,0($3)
				sw	$7,4($3)
				sw	$6,8($3)
				sw	$5,12($3)
				addiu	$2,$2,16
				bne	$2,$4,$L5
				addiu	$3,$3,16
				LBE39 = .
				LBB40 = .
				LBB41 = .
				addiu	$2,$sp,836
				addiu	$3,$sp,16
				addiu	$4,$sp,1076
		$L6:
				lw	$8,0($2)
				lw	$7,4($2)
				lw	$6,8($2)
				lw	$5,12($2)
				sw	$8,0($3)
				sw	$7,4($3)
				sw	$6,8($3)
				sw	$5,12($3)
				addiu	$2,$2,16
				bne	$2,$4,$L6
				addiu	$3,$3,16
				lw	$4,820($sp)
				lw	$5,824($sp)
				lw	$6,828($sp)
				lw	$7,832($sp)
				lw	$25,%call16(_imp_printstring)($28)
				.reloc	1f,R_MIPS_JALR,_imp_printstring
			1:	jalr	$25
				nop
				LVL4 = .
				lw	$28,256($sp)
				LVL5 = .
				LBE41 = .
				LBE40 = .
				LBB42 = .
				LBB43 = .
				move	$4,$0
				lw	$25,%call16(exit)($28)
				.reloc	1f,R_MIPS_JALR,exit
			1:	jalr	$25
				nop
				LVL6 = .
				L2 = .
				LBE43 = .
				LBE42 = .
				.set	macro
				.set	reorder
				.end	main
		$LFE185:
				.rdata
				.align	2
		$LC2:
				.byte	15
				.ascii	"\012WRONG ANSWERS\012\000"
				.space	239
		$Letext0:
   26 %ENDOFPROGRAM
   18 Statements compiled
