Non-gcc compilers

Alexander Leidinger Alexander at Leidinger.net
Sun Nov 16 14:25:42 PST 2003


Matthew Dillon schrieb:

    Hi Alexander.  This is very interesting work.
Please check if you have the patch with the in_cksum.c diff (using the 
asm version doesn't work with icc, ATM I don't know if this is a bug in 
the asm or in icc).

    Jeroen, I don't think it can be committed straight, there are some
    issues I would like to rework... the __INTEL_COMPILER stuff, for
    example, is a pretty bad hack.   I would prefer creating a
    __INLINES_SUPPORTED__ def in sys/cdefs.h.
The cdefs.h changes are because of gcc extensions. And I'm not sure if 
every place where I use __INTEL_COMPILER or __ICC includes cdefs.h, so 
it may be necessary to include the "__INLINES_SUPPORTED__" detection 
into more than one file.

    Let me do a first test/commit pass on it to try to reduce the size of 
    the external patch set.  This may break the patch set for a short
    period until Alexander can catch up.
I tried to make the patch short and non-intrusive. Not every compiler is 
supposed to know about gcc extensions or the syntax of gcc inlines, so I 
think you should name the defines __GCC_STYLE_INLINES_SUPPORTED__ and 
__GCC_EXTENSIONS_SUPPORTED__ (the last one may be misleading, as not 
every extension may be used, e.g. the printf0 attribute is FreeBSD 
specific, and icc doesn't know about it). As icc is supposed to be 
usable as a replacement for gcc (and icc v8 will define __GNUC__ when it 
gets released), I extended the actual compiler specific parts instead of 
creating "general" feature tests.

I'm open to suggestions.

Bye,
Alexander.





More information about the Kernel mailing list