Re: Why is get_current() not const function?

From: Manfred Spraul (manfred@colorfullife.com)
Date: Mon Mar 17 2003 - 14:11:06 EST


Is it possible to use __attribute__((const) with inline functions?
I tried that, but it seems that gcc ignores __attribute__((const) and
looks at the contents of the function instead.

I've tried the attached test app: With gcc-3.2.1 (gcc -O3), and
"inlconst" was called 10 times, constfnc only once.

--
    Manfred

#include <stdio.h> #include <stdlib.h>

static int constfnc(int x) __attribute__((const));

static inline int inlconst(int x) __attribute__((const));

static void dummy(int i);

static inline int inlconst(int x) { printf("in inlconst.\n"); return 2; }

int main(void) { int i; for(i=0;i<10;i++) { dummy(constfnc(0)); } for (i=0;i<10;i++) { dummy(inlconst(0)); } }

int constfnc(int x) { printf("in const.\n"); return 1; }

void dummy(int i) { }

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Mar 23 2003 - 22:00:20 EST