         Edinburgh IMP77 Compiler - Version 8.4
    1 %ownintegerarray IA(0:2)
		.Ltext0:
				.comm	IA,12,4
				.globl	IA_dv
				.section	.data.rel.local,"aw",@progbits
				.align 32
		IA_dv:
				.long	IA
				.long	4
				.zero	60
		IMP:
		.LFB189:
    2
    3 %integermap IMP(%integer N)
				pushl	%ebp
				movl	%esp, %ebp
				call	__x86.get_pc_thunk.ax
				addl	$_GLOBAL_OFFSET_TABLE_, %eax
    4   %result == IA(N)      ;! This is outputting *N rather than N
				movl	8(%ebp), %edx
				sall	$2, %edx
				leal	IA@GOTOFF(%eax), %eax
				addl	%edx, %eax
    5 %end
				popl	%ebp
				ret
		.LFE189:
				.comm	IN,4,4
				.section	.text.__x86.get_pc_thunk.ax,"axG",@progbits,__x86.get_pc_thunk.ax,comdat
				.globl	__x86.get_pc_thunk.ax
				.hidden	__x86.get_pc_thunk.ax
		__x86.get_pc_thunk.ax:
		.LFB190:
				movl	(%esp), %eax
				ret
		.LFE190:
		.Letext0:
    6
    7 %ownintegername IN      ;! Remove this statement and the "N" above is output correctly!
    8                         ;! implying a problem either with filter.c or with removing
    9                         ;! marked icodes incorrectly? (or something completely different)
   10
   11 %endoffile
    6 Statements compiled
