         Edinburgh IMP77 Compiler - Version 8.4
    1 %begin
				.section	".text"
		.Ltext0:
				.align 4
				.global main
				.proc	04
		main:
		.LFB185:
		.LVL0:
				save	%sp, -176, %sp
		.LVL1:
    2   %integer data
				mov	%i1, %o1
				call	_imp_initialise, 0
				 mov	%i0, %o0
		.LVL2:
		.LBB4:
		.LBB5:
				call	exit, 0
				 mov	0, %o0
		.LVL3:
		.LBE5:
		.LBE4:
				nop
		.LFE185:
		.Letext0:
    3   %integername pointer
    4   %integermap mapresult
    5     %owninteger data2
    6     %result == data2
    7   %end
    8
    9   %integermap test(%integer n)
   10      %result == data %if n = 1
   11      %result == pointer %if n = 2
   12      %result == mapresult
   13   %end
   14
   15   %integer q
   16
   17   q = test(4)
   18
   19 %endofprogram
   15 Statements compiled
