         Edinburgh IMP77 Compiler - Version 8.4
    1 %BEGIN
				.machinemode zarch
				.machine "zEC12"
		.text
		.Ltext0:
				.section	.rodata
				.align	2
		.LC0:
				.byte	7
				.string	"Test OK"
				.zero	247
		.text
				.align	8
		.globl main
		main:
		.LFB185:
		.LVL0:
				stmg	%r8,%r15,64(%r15)
				lay	%r15,-5032(%r15)
				ear	%r1,%a0
				sllg	%r1,%r1,32
				ear	%r1,%a1
				lay	%r4,5024(%r15)
				mvc	0(8,%r4),40(%r1)
    2 %INTEGER I,J,JJ,Fail
				brasl	%r14,_imp_initialise@PLT
		.LVL1:
    3       JJ=0; Fail=0
				lhi	%r1,0
		.LBB12:
		.LBB13:
		.LBB14:
				aghik	%r10,%r15,928
		.LBE14:
		.LBE13:
		.LBE12:
    4 %FOR I=1,1,70 %CYCLE
				lhi	%r2,0
    5       %BEGIN
    6       %BYTEINTEGERARRAY A(0:4095)
    7       J=ADDR(A(0))
				brct	%r11,.L2
		.LVL3:
				j	.L10
		.LVL4:
		.L2:
		.LDL1:
    8       %END
    9       %IF JJ#J %THEN %START
				crje	%r1,%r10,.L4
   10          Fail=1 %and WRITE(J,5) %AND NEWLINE %UNLESS JJ=0
				cije	%r1,0,.L4
		.LVL5:
				lghi	%r3,5
				lgr	%r2,%r8
				brasl	%r14,_imp_writeint@PLT
		.LVL6:
		.LBB15:
		.LBB16:
				brasl	%r14,_imp_newline@PLT
		.LVL7:
		.LBE16:
		.LBE15:
   11          JJ=J
				lhi	%r9,1
				lhi	%r11,70
				j	.L2
		.LVL2:
		.L4:
				lr	%r1,%r10
				lr	%r2,%r9
				j	.L4
		.LVL8:
		.L10:
		.L3:
   12       %FINISH
				lgfr	%r8,%r10
   13 %REPEAT
   14       %if Fail=0 %then printstring("Test OK")
				cije	%r2,0,.L11
		.LVL9:
		.L5:
		.LBB17:
		.LBB18:
				lghi	%r2,0
				brasl	%r14,exit@PLT
		.LVL10:
		.L11:
		.LBE18:
		.LBE17:
		.LBB19:
   15 %ENDOFPROGRAM
				larl	%r1,.LC0
		.LVL11:
				mvc	672(256,%r15),0(%r1)
				mvc	416(256,%r15),672(%r15)
				mvc	672(256,%r15),416(%r15)
		.LBE19:
		.LBB20:
		.LBB21:
				mvc	160(256,%r15),672(%r15)
				aghik	%r2,%r15,160
				brasl	%r14,_imp_printstring@PLT
		.LVL12:
				j	.L5
		.LBE21:
		.LBE20:
		.LFE185:
		.Letext0:
   16 Statements compiled
