         Edinburgh IMP77 Compiler - Version 8.4
    1 %external %integer fred
		.Ltext0:
				.globl	BERT
		BERT:
		.LFB185:
    2 %external %routine bert(%integer i)
		.LVL0:
    3   fred = i
				movl	%edi, FRED(%rip)
				movl	$22, FRED(%rip)
		.LVL5:
		.LBE9:
		.LBE8:
    4 %end
    5
				ret
		.LFE185:
				.globl	SHIELA
		SHIELA:
		.LFB186:
    6
    7 %external %routine shiela(%integer k)
		.LVL1:
    8 %own %integer local = 42
    9   k = local
   10   local = local + 1
				addl	$1, LOCAL.6390(%rip)
		.LVL2:
   11 %end
   12
				ret
		.LFE186:
				.globl	main
		main:
		.LFB187:
   13 %begin
		.LVL3:
				subq	$8, %rsp
   14   bert(22)
				call	_imp_initialise@PLT
		.LVL4:
		.LBB8:
		.LBB9:
   15   shiela(fred)
				movl	$22, %edi
				call	SHIELA
		.LVL6:
		.LBB10:
		.LBB11:
				movl	$0, %edi
				call	exit@PLT
		.LVL7:
		.LBE11:
		.LBE10:
		.LFE187:
				.data
				.align 4
		LOCAL.6390:
				.long	42
				.comm	FRED,4,4
		.Letext0:
   16 %end %of %programm
   13 Statements compiled
