http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54702
Markus Trippelsdorf <markus at trippelsdorf dot de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |markus at trippelsdorf dot | |de --- Comment #4 from Markus Trippelsdorf <markus at trippelsdorf dot de> 2012-09-25 12:52:53 UTC --- (In reply to comment #3) > Created attachment 28266 [details] > patch > > builtins should simply not be in the assembler name hash (that fixes the > issue). > That of course makes things more inconsistent even from the middle-end side, > but the asm hash forcefully computes assembler names (suspect for alloca, > too). > > Let's hope the rest of the middle-end doesn't care either way (and we don't > end up streaming loads of duplicate cgraph nodes for builtins). Guess Bug 54625 is dup of this issue. With your patch I'm getting: /var/tmp/gcc_build_dir/./gcc/xgcc -B/var/tmp/gcc_build_dir/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -DHAVE_CONFIG_H -I. -I/home/markus/gcc/libmudflap -Wall -ffunction-sections -fdata-sections -march=native -O3 -pipe -MT mf-hooks1.lo -MD -MP -MF .deps/mf-hooks1.Tpo -c /home/markus/gcc/libmudflap/mf-hooks1.c -fPIC -DPIC -o .libs/mf-hooks1.o In file included from /home/markus/gcc/libmudflap/mf-hooks1.c:59:0: /home/markus/gcc/libmudflap/mf-hooks1.c: In function ‘calloc’: /home/markus/gcc/libmudflap/mf-impl.h:346:15: warning: typedef ‘__mf_fn_memset’ locally defined but not used [-Wunused-local-typedefs] typedef ty (*__mf_fn_ ## fname) (__VA_ARGS__); \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:139:3: note: in expansion of macro 'DECLARE' DECLARE(void *, memset, void *, int, size_t); ^ /home/markus/gcc/libmudflap/mf-hooks1.c: At top level: /home/markus/gcc/libmudflap/mf-impl.h:340:5: error: ‘__wrap_malloc’ aliased to undefined symbol ‘malloc’ ret __wrap_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:98:1: note: in expansion of macro 'WRAPPER' WRAPPER(void *, malloc, size_t c) ^ /home/markus/gcc/libmudflap/mf-impl.h:342:5: error: ‘__real_alloca’ aliased to undefined symbol ‘alloca’ ret __real_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:551:1: note: in expansion of macro 'WRAPPER' WRAPPER(void *, alloca, size_t c) ^ /home/markus/gcc/libmudflap/mf-impl.h:340:5: error: ‘__wrap_alloca’ aliased to undefined symbol ‘alloca’ ret __wrap_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:551:1: note: in expansion of macro 'WRAPPER' WRAPPER(void *, alloca, size_t c) ^ /home/markus/gcc/libmudflap/mf-impl.h:342:5: error: ‘__real_free’ aliased to undefined symbol ‘free’ ret __real_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:233:1: note: in expansion of macro 'WRAPPER' WRAPPER(void, free, void *buf) ^ /home/markus/gcc/libmudflap/mf-impl.h:340:5: error: ‘__wrap_free’ aliased to undefined symbol ‘free’ ret __wrap_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:233:1: note: in expansion of macro 'WRAPPER' WRAPPER(void, free, void *buf) ^ /home/markus/gcc/libmudflap/mf-impl.h:342:5: error: ‘__real_realloc’ aliased to undefined symbol ‘realloc’ ret __real_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:176:1: note: in expansion of macro 'WRAPPER' WRAPPER(void *, realloc, void *buf, size_t c) ^ /home/markus/gcc/libmudflap/mf-impl.h:340:5: error: ‘__wrap_realloc’ aliased to undefined symbol ‘realloc’ ret __wrap_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:176:1: note: in expansion of macro 'WRAPPER' WRAPPER(void *, realloc, void *buf, size_t c) ^ /home/markus/gcc/libmudflap/mf-impl.h:342:5: error: ‘__real_calloc’ aliased to undefined symbol ‘calloc’ ret __real_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:134:1: note: in expansion of macro 'WRAPPER' WRAPPER(void *, calloc, size_t c, size_t n) ^ /home/markus/gcc/libmudflap/mf-impl.h:340:5: error: ‘__wrap_calloc’ aliased to undefined symbol ‘calloc’ ret __wrap_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:134:1: note: in expansion of macro 'WRAPPER' WRAPPER(void *, calloc, size_t c, size_t n) ^ /home/markus/gcc/libmudflap/mf-impl.h:342:5: error: ‘__real_malloc’ aliased to undefined symbol ‘malloc’ ret __real_ ## fname (__VA_ARGS__) \ ^ /home/markus/gcc/libmudflap/mf-hooks1.c:98:1: note: in expansion of macro 'WRAPPER' WRAPPER(void *, malloc, size_t c) ^