[fpc-pascal] Assembler file generate by compiler

Mark Morgan Lloyd markMLl.fpc-pascal at telemetry.co.uk
Sun Aug 19 11:14:05 CEST 2012

Jonas Maebe wrote:
> On 19 Aug 2012, at 10:55, Rainer Stratmann wrote:
>> Am Saturday 18 August 2012 23:53:36 schrieb Jonas Maebe:
>>> On 18 Aug 2012, at 22:48, Rainer Stratmann wrote:
>>>> I did option -a, the compiler needs longer now, but where can I see the
>>>> generated file(s)?
>>> In the same directory that contains the generated .o and .ppu files.
>> They are not there.
>> In the fpc.cfg is a switch that the assembler has to feed by a pipe.
>> Is that the reason?
> No, because command line switches override the switches in the configuration file, and "-a" means "leave the generated assembler files behind". When asking for help, it's also always a good idea to provide all information that may be relevant, such as the actual command line you are using and platform you are on.

On Linux:

$ fpc -h |head -12
Free Pascal Compiler version 2.7.1 [2012/07/17] for sparc
Copyright (c) 1993-2012 by Florian Klaempfl and others
/usr/local/bin/fpc [options] <inputfile> [options]
Put + after a boolean switch option to enable it, - to disable it
   -a     The compiler doesn't delete the generated assembler file
       -al        List sourcecode lines in assembler file
       -an        List node info in assembler file (-dEXTDEBUG compiler)
       -ap        Use pipes instead of creating temporary assembler files
       -ar        List register allocation/release info in assembler file
       -at        List temp allocation/release info in assembler file
   -A<x>  Output format:

$ fpc -a testSockAddrConv.pas
Free Pascal Compiler version 2.7.1 [2012/07/17] for sparc
Copyright (c) 1993-2012 by Florian Klaempfl and others
Target OS: Linux for SPARC
Compiling testSockAddrConv.pas
Assembling testsockaddrconv
Linking testSockAddrConv
29 lines compiled, 2.1 sec
0 2>markMLl at pye-dev-01:~$ ls -lt |head
total 6984356
-rwxr-xr-x 1 markMLl markMLl      55572 2012-08-19 09:09 testSockAddrConv
-rw-r--r-- 1 markMLl markMLl       8896 2012-08-19 09:09 testSockAddrConv.o
-rw-r--r-- 1 markMLl markMLl      12957 2012-08-19 09:09 testSockAddrConv.s
-rw-r--r-- 1 markMLl markMLl   67338240 2012-08-13 10:30 cos_117.img

$ head<testSockAddrConv.s -12
         .file "testSockAddrConv.pas"
# Begin asmlist al_begin
# End asmlist al_begin
# Begin asmlist al_stabs
# End asmlist al_stabs
# Begin asmlist al_procedures

.section .text.n_main
         .balign 4
         .type   PASCALMAIN, at function

Your mileage might vary for other OSes.

Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

More information about the fpc-pascal mailing list