         Edinburgh IMP77 Compiler - Version 8.4
    1 %begin
				.machinemode zarch
				.machine "zEC12"
		.text
		.Ltext0:
				.align	8
		DOSOMETHING.6691:
		.LFB186:
		.LVL2:
				stmg	%r14,%r15,112(%r15)
				lay	%r15,-176(%r15)
				ear	%r1,%a0
				sllg	%r1,%r1,32
				ear	%r1,%a1
				mvc	168(8,%r15),40(%r1)
    2   %integer i
				brasl	%r14,_imp_initialise@PLT
		.LVL3:
    3
    4   %routine dosomething(%integername p)
		.LVL0:
				stmg	%r14,%r15,112(%r15)
				lay	%r15,-160(%r15)
    5     p = p - 1
				l	%r1,0(%r2)
				ahi	%r1,-1
				st	%r1,0(%r2)
    6     dosomething(p) %if p>0
				cijh	%r1,0,.L7
				br	%r14
		.L7:
    7   %end
				brasl	%r14,DOSOMETHING.6691
		.LVL1:
		.L2:
    8
				lg	%r4,272(%r15)
				lmg	%r14,%r15,272(%r15)
				br	%r4
		.LFE186:
				.align	8
		.globl main
		main:
		.LFB185:
    9   i = 10
				mvhi	164(%r15),10
   10   dosomething(i)
				aghik	%r2,%r15,164
				brasl	%r14,DOSOMETHING.6691
		.LVL4:
		.LBB4:
		.LBB5:
				lghi	%r2,0
				brasl	%r14,exit@PLT
		.LVL5:
		.LBE5:
		.LBE4:
		.LFE185:
		.Letext0:
   11
   12 %endofprogram
    9 Statements compiled
