         Edinburgh IMP77 Compiler - Version 8.4
    1 ! In the C translation, local should be 'static' not external or auto...
		.Ltext0:
				.align	2
				.global	FRED
		FRED:
		.LFB185:
    2 %routinespec local(%integer i)
    3
    4 %externalroutine fred
				stp	x29, x30, [sp, -16]!
				add	x29, sp, 0
		.LVL0:
		.LBB10:
		.LBB11:
    5   local(2)
    6 %end
    7
				ldp	x29, x30, [sp], 16
				ret
		.LFE185:
				.align	2
				.global	main
		main:
		.LFB187:
    8 %routine local(%integer i)
    9   write(i,0); newline
				mov	w1, 0
				mov	w0, 2
				bl	_imp_writeint
		.LVL1:
		.LBB12:
		.LBB13:
				bl	_imp_newline
		.LVL2:
		.LBE13:
		.LBE12:
		.LBE11:
		.LBE10:
   10 %end
   11
   12 %begin
		.LVL3:
				stp	x29, x30, [sp, -16]!
				add	x29, sp, 0
   13   %routinespec jim(%integer i)
				bl	_imp_initialise
		.LVL4:
		.LBB18:
		.LBB19:
   14   jim(22)
   15   %routine jim(%integer i)
   16     fred
				bl	FRED
		.LVL5:
		.LBE19:
		.LBE18:
		.LBB20:
		.LBB21:
				mov	w0, 0
				bl	exit
		.LVL6:
		.LBE21:
		.LBE20:
		.LFE187:
		.Letext0:
   17   %end
?I unused
   18 %end
   19
   20 %endoffile
   16 Statements compiled
