1 2006-05-04 Bernd Schmidt <bernds_cb1@t-online.de>
3 * include/libc-symbols.h [HAVE_ASM_SET_DIRECTIVE]: Update weak_alias()
4 to utilize .set where appropriate.
6 --- include/libc-symbols.h
7 +++ include/libc-symbols.h
10 # else /* ! HAVE_ASM_WEAKEXT_DIRECTIVE */
12 -# ifdef HAVE_ASM_GLOBAL_DOT_NAME
13 -# define weak_alias(original, alias) \
14 +# ifdef HAVE_ASM_SET_DIRECTIVE
15 +# ifdef HAVE_ASM_GLOBAL_DOT_NAME
16 +# define weak_alias(original, alias) \
17 + .weak C_SYMBOL_NAME (alias) ASM_LINE_SEP \
18 + .set C_SYMBOL_NAME (alias), C_SYMBOL_NAME (original) ASM_LINE_SEP \
19 + .weak C_SYMBOL_DOT_NAME (alias) ASM_LINE_SEP \
20 + .set C_SYMBOL_DOT_NAME (alias), C_SYMBOL_DOT_NAME (original)
22 +# define weak_alias(original, alias) \
23 + .weak C_SYMBOL_NAME (alias) ASM_LINE_SEP \
24 + .set C_SYMBOL_NAME (alias), C_SYMBOL_NAME (original)
26 +# else /* ! HAVE_ASM_SET_DIRECTIVE */
27 +# ifdef HAVE_ASM_GLOBAL_DOT_NAME
28 +# define weak_alias(original, alias) \
29 .weak C_SYMBOL_NAME (alias) ASM_LINE_SEP \
30 C_SYMBOL_NAME (alias) = C_SYMBOL_NAME (original) ASM_LINE_SEP \
31 .weak C_SYMBOL_DOT_NAME (alias) ASM_LINE_SEP \
32 C_SYMBOL_DOT_NAME (alias) = C_SYMBOL_DOT_NAME (original)
34 -# define weak_alias(original, alias) \
36 +# define weak_alias(original, alias) \
37 .weak C_SYMBOL_NAME (alias) ASM_LINE_SEP \
38 C_SYMBOL_NAME (alias) = C_SYMBOL_NAME (original)
42 # define weak_extern(symbol) \
43 .weak C_SYMBOL_NAME (symbol)