UML on i386 is now the only case where fastcall/FASTCALL is not a noop. There are two use cases for fastcall/FASTCALL in UML on i386:
1. optimization for C code A faster calling convention is used for the functions annotated this way. 2. interfacing with assembler code But include/asm-um/linkage.h contains the following: <-- snip --> #ifndef __ASM_UM_LINKAGE_H #define __ASM_UM_LINKAGE_H #include "asm/arch/linkage.h" /* <linux/linkage.h> will pick sane defaults */ #ifdef CONFIG_GPROF #undef FASTCALL #undef fastcall #endif #endif <-- snip --> E.g. if CONFIG_SMP was still available on UML, CONFIG_SMP=y, CONFIG_GPROF=y would have some horrible effects when calling the functions in arch/i386/lib/semaphore.S. Are there any benchmark numbers that the existing fastcall/FASTCALL annotations in the kernel really make a measurable difference for C code? Otherwise, we could use it only for assembler code using this calling convention (if there is any used by UML) - and CONFIG_GPROF mustn't change this. cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/