         Edinburgh IMP77 Compiler - Version 8.4
    1 %begin
				.machinemode zarch
				.machine "zEC12"
		.text
		.Ltext0:
				.section	.rodata
				.align	2
		.LC0:
				.byte	12
				.string	"Oflow missed"
				.zero	242
				.align	2
		.LC2:
				.byte	14
				.string	"event trapped "
				.zero	240
				.align	2
		.LC3:
				.byte	17
				.string	"Line of failure ="
				.zero	237
				.align	2
		.LC4:
				.byte	7
				.string	"Test OK"
				.zero	247
		.text
				.align	8
		.globl main
		main:
		.LFB185:
		.LVL0:
				stmg	%r10,%r15,80(%r15)
				larl	%r13,.L14
				lay	%r15,-2728(%r15)
				ear	%r1,%a0
				sllg	%r1,%r1,32
				ear	%r1,%a1
				mvc	2720(8,%r15),40(%r1)
    2 %real i,j
				brasl	%r14,_imp_initialise@PLT
		.LVL1:
    3 %on %event 1 %start
				lghi	%r3,1
				lgrl	%r1,_imp_event@GOTENT
				aghik	%r2,%r1,536
				brasl	%r14,__sigsetjmp@PLT
		.LVL2:
				cijlh	%r2,0,.L3
		.LVL3:
				lghi	%r3,2
				lgrl	%r2,_imp_event@GOTENT
				brasl	%r14,_imp_on_event_enter@PLT
		.LVL4:
				cgije	%r2,0,.L3
    4      ->trap
    5 %finish
    6 i=2
    7 %cycle
    8 j=i; i=I+I
    9 %if i<00.00001 %or j>=i %then printstring("Oflow missed") %and %stop
				le	%f0,.L15-.L14(%r13)
		.L4:
		.LDL1:
		.LDL2:
		.LDL3:
		.LVL5:
				ler	%f2,%f0
				aebr	%f2,%f0
		.LVL6:
				ldebr	%f4,%f2
				cdb	%f4,.L16-.L14(%r13)
				jl	.L5
				ler	%f0,%f2
		.LVL7:
   10 %repeat
				cebr	%f2,%f0
				jnh	.L5
   11 printstring("FAIL")
?access
   12 %stop
				larl	%r1,.LC0
				mvc	1184(256,%r15),0(%r1)
				mvc	416(256,%r15),1184(%r15)
				mvc	1696(256,%r15),416(%r15)
		.LBE30:
		.LBB31:
		.LBB32:
				mvc	160(256,%r15),1696(%r15)
				aghik	%r2,%r15,160
				brasl	%r14,_imp_printstring@PLT
		.LVL9:
		.LBE32:
		.LBE31:
		.LBB33:
		.LBB34:
				lghi	%r2,0
				brasl	%r14,exit@PLT
		.LVL10:
		.L3:
		.LBE34:
		.LBE33:
		.LBB35:
				larl	%r1,.LC2
				mvc	1184(256,%r15),0(%r1)
				mvc	672(256,%r15),1184(%r15)
				mvc	1952(256,%r15),672(%r15)
		.LBE35:
		.LBB36:
		.LBB37:
				mvc	160(256,%r15),1952(%r15)
				aghik	%r11,%r15,160
				lgr	%r2,%r11
				brasl	%r14,_imp_printstring@PLT
		.LVL11:
		.LBE37:
		.LBE36:
		.LBB38:
		.LBB39:
				lgrl	%r10,_imp_event@GOTENT
		.LBE39:
		.LBE38:
   13 trap:
   14 printstring("event trapped ")
				j	.L4
		.LVL8:
		.L5:
		.LBB30:
   15 write(eventinf>>8,5); write(eventinf&255,5)
				l	%r2,8(%r10)
				lghi	%r3,5
				risbgn	%r2,%r2,64-24,128+63,32+24
				brasl	%r14,_imp_writeint@PLT
		.LVL12:
   16 newline
				lghi	%r3,5
				llgc	%r2,11(%r10)
				brasl	%r14,_imp_writeint@PLT
		.LVL13:
		.LBB40:
		.LBB41:
				brasl	%r14,_imp_newline@PLT
		.LVL14:
		.LBE41:
		.LBE40:
		.LBB42:
   17 printstring("Line of failure =")
				larl	%r1,.LC3
				mvc	1184(256,%r15),0(%r1)
				mvc	928(256,%r15),1184(%r15)
				mvc	2208(256,%r15),928(%r15)
		.LBE42:
		.LBB43:
		.LBB44:
				mvc	160(256,%r15),2208(%r15)
				lgr	%r2,%r11
				brasl	%r14,_imp_printstring@PLT
		.LVL15:
		.LBE44:
		.LBE43:
   18 write(eventline,4)
				lghi	%r3,4
				lgf	%r2,524(%r10)
				brasl	%r14,_imp_writeint@PLT
		.LVL16:
		.LBB45:
		.LBB46:
				brasl	%r14,_imp_newline@PLT
		.LVL17:
		.LBE46:
		.LBE45:
		.LBB47:
   19 newline
   20 printstring("Test OK")
				larl	%r1,.LC4
				mvc	1184(256,%r15),0(%r1)
				mvc	1440(256,%r15),1184(%r15)
				mvc	2464(256,%r15),1440(%r15)
		.LBE47:
		.LBB48:
		.LBB49:
				mvc	160(256,%r15),2464(%r15)
				lgr	%r2,%r11
				brasl	%r14,_imp_printstring@PLT
		.LVL18:
		.LBE49:
		.LBE48:
		.LBB50:
		.LBB51:
				lghi	%r2,0
				brasl	%r14,exit@PLT
		.LVL19:
				.section	.rodata
				.align	8
		.L14:
		.L16:
				.long	1055193269
				.long	-1998362383
		.L15:
				.long	1082130432
				.align	2
			.text
		.LBE51:
		.LBE50:
		.LFE185:
		.Letext0:
   21 %endofprogram
   22 Statements compiled
