c33fe44443
Within one C file, current gcc can optimize the global static variables according to the C code, but it will skip assembly code -- it will pass them to gas directly. if the static variable is used between C code and assembly code in one C file (e.g. is_dyn_brkp in kgdb.c), it needs '__used' to let gcc know it should be still used, or gcc may remove it for optimization. The related error in this case: LD init/built-in.o arch/cris/arch-v10/kernel/built-in.o: In function `kgdb_handle_breakpoint': (.text+0x2aca): undefined reference to `is_dyn_brkp' arch/cris/arch-v10/kernel/built-in.o: In function `is_static': kgdb.c:(.text+0x2ada): undefined reference to `is_dyn_brkp' Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com> Signed-off-by: Jesper Nilsson <jespern@axis.com> |
||
---|---|---|
.. | ||
crisksyms.c | ||
debugport.c | ||
dma.c | ||
entry.S | ||
fasttimer.c | ||
head.S | ||
io_interface_mux.c | ||
irq.c | ||
kgdb.c | ||
Makefile | ||
process.c | ||
ptrace.c | ||
setup.c | ||
shadows.c | ||
signal.c | ||
time.c | ||
traps.c |