.file "prog1.pas" .text .balign 16 # [prog1.pas] # [5] begin {tester} .globl main .type main,@function main: .globl PASCALMAIN .type PASCALMAIN,@function PASCALMAIN: .globl program_init .type program_init,@function program_init: pushl %ebp movl %esp,%ebp subl $4,%esp call FPC_INITIALIZEUNITS .L3: # [6] Writeln(); Writeln(); leal U_SYSLINUX_OUTPUT,%edi movl %edi,-4(%ebp) pushl -4(%ebp) call FPC_WRITELN_END pushl $.L3 call FPC_IOCHECK .L4: leal U_SYSLINUX_OUTPUT,%edi movl %edi,-4(%ebp) pushl -4(%ebp) call FPC_WRITELN_END pushl $.L4 call FPC_IOCHECK .L5: # [7] Write('Please enter an integer value for I: '); leal U_SYSLINUX_OUTPUT,%edi movl %edi,-4(%ebp) pushl $.L8 pushl -4(%ebp) pushl $0 call FPC_WRITE_TEXT_SHORTSTR pushl -4(%ebp) call FPC_WRITE_END pushl $.L5 call FPC_IOCHECK .L9: # [8] Read(I); leal U_SYSLINUX_INPUT,%edi movl %edi,-4(%ebp) pushl -4(%ebp) call FPC_READ_TEXT_SINT movw %ax,_I pushl -4(%ebp) call FPC_READ_END pushl $.L9 call FPC_IOCHECK # [9] I := I + 1; movswl _I,%eax incl %eax movw %ax,_I .L12: # [10] Writeln('The current value of I is ', I:0); leal U_SYSLINUX_OUTPUT,%edi movl %edi,-4(%ebp) pushl $.L15 pushl -4(%ebp) pushl $0 call FPC_WRITE_TEXT_SHORTSTR movswl _I,%eax pushl %eax pushl -4(%ebp) pushl $0 call FPC_WRITE_TEXT_SINT pushl -4(%ebp) call FPC_WRITELN_END pushl $.L12 call FPC_IOCHECK .L20: # [11] Writeln(); Writeln() leal U_SYSLINUX_OUTPUT,%edi movl %edi,-4(%ebp) pushl -4(%ebp) call FPC_WRITELN_END pushl $.L20 call FPC_IOCHECK .L21: leal U_SYSLINUX_OUTPUT,%edi movl %edi,-4(%ebp) pushl -4(%ebp) call FPC_WRITELN_END pushl $.L21 call FPC_IOCHECK # [12] end. {tester} call FPC_DO_EXIT leave ret .Le0: .size main, .Le0 - main .balign 16 .data # [13] .ascii "FPC 1.0.6 [2002/05/23] for i386 - LINUX" .balign 4 .globl FPC_RESOURCESTRINGTABLES .type FPC_RESOURCESTRINGTABLES,@object FPC_RESOURCESTRINGTABLES: .long 0 .Le1: .size FPC_RESOURCESTRINGTABLES, .Le1 - FPC_RESOURCESTRINGTABLES .globl INITFINAL .type INITFINAL,@object INITFINAL: .long 1,0 .long INIT$$SYSLINUX .long 0 .Le2: .size INITFINAL, .Le2 - INITFINAL .globl HEAPSIZE .type HEAPSIZE,@object HEAPSIZE: .long 262144 .globl __stklen .type __stklen,@object __stklen: .long 8192 .data .L8: .ascii "%Please enter an integer value for I: \000" .L15: .ascii "\032The current value of I is \000" .data .bss # [3] var I: Integer; .lcomm _I,2 .comm HEAP,262144