Force inline without -O2
isuru herath
isuru81@yahoo.com
Tue Dec 22 17:55:00 GMT 2009
Dear All,
I am writing a C code with inline method.
static inline unsigned int READ()
{
unsigned long data;
asm volatile ("movl %%eax, %0" : "=g" (data) : );
return (unsigned int) data;
}
I dont want to this appear as a method call in the executable. I want to
make in inlined to the code. I tried different methods.
1. I compiled with -finline-functions. Still it apears as a method call in
the assembly generated.
2. Used the attribute __attribute__((always_inline));. Still it appears as
a method call.
But when I compiled with -O2 it doesnot make it a method call. But for my
current work I cannot have optimizations enabled. Therefore I am looking
for a way to inline this function in the assembly generated. I am not sure
I can achieve this behavior with macros since I need to return data from
it.
Any help/ advice on this regard is greatly appreciated.
sincerely,
Isuru
More information about the Gcc-help
mailing list