Re: preprocessing by gcc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi
I read the following:
Preprocessing - The *as* internal preprocessor:It does not do macro
processing, include file handling, or anything else you may get from
your C compiler's preprocessor.
Yes, that's true. The preprocessor of GNU as is not a pre-processor in the sense of the C compiler.
Now the way the toolchains are used, it appears that .S files are
preprocessed by the Assembler, because my MACROs in the .S are never
getting defined&  in the make files I see that the .S files are given
to Assembler.
There is a "convention" that .s are pure assembler-files which could be passed to the assembler directly, but .S files do contain pre-processor macros (known from C). So, the .S must be passed to the pre-processor before passing the output to the assembler.

The usual way is to NOT pass the .S file to 'as' but to pass it to 'gcc', e.g. gcc <file>.S -c. gcc will then do the steps as described above (preprocessor -> assembler).

Best regards,
Andi


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux