diff options
70 files changed, 301 insertions, 321 deletions
diff --git a/ChangeLog b/ChangeLog index 386eeb5d26..f79463f404 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,84 @@ +2012-08-02 Marek Polacek <polacek@redhat.com> + + [BZ#14150] + * configure.in (libc_cv_asm_type_prefix): Remove test. Replace + libc_cv_asm_type_prefix with %. + * configure: Regenerated. + * include/libc-symbols.h: Remove comment about ASM_TYPE_DIRECTIVE_PREFIX. + Replace ASM_TYPE_DIRECTIVE_PREFIX with %. + (declare_symbol_alias_1_paste) [__ASSEMBLER__]: Do not define. + (declare_symbol_alias_1_paste_1) [__ASSEMBLER__]: Likewise. + (declare_symbol_alias_1_stringify) [!__ASSEMBLER__]: Likewise. + (declare_symbol_alias_1_stringify_1) [!__ASSEMBLER__]: Likewise. + * elf/tst-unique2mod2.c: Replace ASM_TYPE_DIRECTIVE_PREFIX with %. + [HAVE_ASM_UNIQUE_OBJECT]: Do not define S. + [HAVE_ASM_UNIQUE_OBJECT]: Do not define _S. + * elf/tst-unique2mod1.c: Likewise. + * elf/tst-unique1mod2.c: Likewise. + * elf/tst-unique1mod1.c: Likewise. + * config.h.in: Do not undef ASM_TYPE_DIRECTIVE_PREFIX. + * sysdeps/s390/s390-32/sysdep.h: Do not define ASM_TYPE_DIRECTIVE. + Replace ASM_TYPE_DIRECTIVE with .type. + * sysdeps/s390/s390-64/sysdep.h: Likewise. + * sysdeps/i386/sysdep.h: Likewise. + * sysdeps/x86_64/sysdep.h: Likewise. + * sysdeps/sh/sysdep.h: Likewise. + * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Do not define ASM_TYPE_DIRECTIVE. + * sysdeps/powerpc/sysdep.h: Likewise. + * sysdeps/powerpc/powerpc32/sysdep.h: Replace ASM_TYPE_DIRECTIVE with .type. + * sysdeps/s390/s390-32/s390-mcount.S: Likewise. + * sysdeps/s390/s390-64/s390x-mcount.S: Likewise. + * sysdeps/i386/fpu/e_powf.S: Likewise. + * sysdeps/i386/fpu/e_expl.S: Likewise. + * sysdeps/i386/fpu/e_atanhf.S: Likewise. + * sysdeps/i386/fpu/e_acosh.S: Likewise. + * sysdeps/i386/fpu/e_pow.S: Likewise. + * sysdeps/i386/fpu/s_asinhl.S: Likewise. + * sysdeps/i386/fpu/e_acoshl.S: Likewise. + * sysdeps/i386/fpu/s_expm1.S: Likewise. + * sysdeps/i386/fpu/s_frexpf.S: Likewise. + * sysdeps/i386/fpu/e_log2.S: Likewise. + * sysdeps/i386/fpu/e_log2l.S: Likewise. + * sysdeps/i386/fpu/e_scalb.S: Likewise. + * sysdeps/i386/fpu/e_powl.S: Likewise. + * sysdeps/i386/fpu/e_log10f.S: Likewise. + * sysdeps/i386/fpu/s_cbrtf.S: Likewise. + * sysdeps/i386/fpu/e_logl.S: Likewise. + * sysdeps/i386/fpu/s_cbrt.S: Likewise. + * sysdeps/i386/fpu/s_frexpl.S: Likewise. + * sysdeps/i386/fpu/s_expm1f.S: Likewise. + * sysdeps/i386/fpu/e_log2f.S: Likewise. + * sysdeps/i386/fpu/e_acoshf.S: Likewise. + * sysdeps/i386/fpu/e_log.S: Likewise. + * sysdeps/i386/fpu/e_scalbf.S: Likewise. + * sysdeps/i386/fpu/e_logf.S: Likewise. + * sysdeps/i386/fpu/e_log10l.S: Likewise. + * sysdeps/i386/fpu/e_atanh.S: Likewise. + * sysdeps/i386/fpu/s_asinhf.S: Likewise. + * sysdeps/i386/fpu/e_log10.S: Likewise. + * sysdeps/i386/fpu/s_frexp.S: Likewise. + * sysdeps/i386/fpu/e_atanhl.S: Likewise. + * sysdeps/i386/fpu/s_asinh.S: Likewise. + * sysdeps/i386/fpu/s_cbrtl.S: Likewise. + * sysdeps/i386/fpu/e_scalbl.S: Likewise. + * sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.S: Likewise. + * sysdeps/i386/i686/fpu/e_logl.S: Likewise. + * sysdeps/i386/i686/strtok.S: Likewise. + * sysdeps/i386/i386-mcount.S: Likewise. + * sysdeps/i386/strtok.S: Likewise. + * sysdeps/x86_64/fpu/e_expl.S: Likewise. + * sysdeps/x86_64/fpu/e_log2l.S: Likewise. + * sysdeps/x86_64/fpu/e_powl.S: Likewise. + * sysdeps/x86_64/fpu/e_logl.S: Likewise. + * sysdeps/x86_64/fpu/e_expf.S: Likewise. + * sysdeps/x86_64/fpu/e_log10l.S: Likewise. + * sysdeps/x86_64/fpu/s_copysignf.S: Likewise. + * sysdeps/x86_64/fpu/s_copysign.S: Likewise. + * sysdeps/x86_64/fpu/e_scalbl.S: Likewise. + * sysdeps/x86_64/_mcount.S: Likewise. + * sysdeps/x86_64/strtok.S: Likewise. + * sysdeps/sh/_mcount.S: Likewise. + 2012-08-01 Roland McGrath <roland@hack.frob.com> * libio/iofopen.c: Include <fcntl.h>. diff --git a/NEWS b/NEWS index 3c12922faf..5759eddbfd 100644 --- a/NEWS +++ b/NEWS @@ -9,8 +9,8 @@ Version 2.17 * The following bugs are resolved with this release: - 6778, 6808, 14042, 14151, 14154, 14157, 14173, 14283, 14298, 14328, 14331, - 14337, 14347, 14349 + 6778, 6808, 14042, 14150, 14151, 14154, 14157, 14173, 14283, 14298, 14328, + 14331, 14337, 14347, 14349 * Support for STT_GNU_IFUNC symbols added for s390 and s390x. Optimized versions of memcpy, memset, and memcmp added for System z10 and diff --git a/config.h.in b/config.h.in index 22c62db9e0..40b47173e1 100644 --- a/config.h.in +++ b/config.h.in @@ -37,10 +37,6 @@ /* Define if the assembler supports the `.set' directive. */ #undef HAVE_ASM_SET_DIRECTIVE -/* Define to the prefix before `object' or `function' in the - assembler's `.type' directive, if it has one. */ -#undef ASM_TYPE_DIRECTIVE_PREFIX - /* Define if the assembler supports the gnu_unique_object symbol type. */ #undef HAVE_ASM_UNIQUE_OBJECT diff --git a/configure b/configure index db070c1a4b..facb6a5bbb 100755 --- a/configure +++ b/configure @@ -4076,43 +4076,7 @@ else $as_echo "yes" >&6; } fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for assembler .type directive prefix" >&5 -$as_echo_n "checking for assembler .type directive prefix... " >&6; } -if ${libc_cv_asm_type_prefix+:} false; then : - $as_echo_n "(cached) " >&6 -else - libc_cv_asm_type_prefix=no -for ac_try_prefix in '@' '%' '#'; do - cat > conftest.s <<EOF - ${libc_cv_dot_text} - .globl foo - .type foo, ${ac_try_prefix}object - .size foo, 1 -foo: - .byte 1 -EOF - if { ac_try='${CC-cc} $ASFLAGS -c conftest.s 1>&5' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; }; then - libc_cv_asm_type_prefix=${ac_try_prefix} - fi - rm -f conftest* - test "x$libc_cv_asm_type_prefix" != xno && break -done -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_asm_type_prefix" >&5 -$as_echo "$libc_cv_asm_type_prefix" >&6; } -if test "x$libc_cv_asm_type_prefix" != xno; then - cat >>confdefs.h <<_ACEOF -#define ASM_TYPE_DIRECTIVE_PREFIX ${libc_cv_asm_type_prefix} -_ACEOF - -fi - -if test x"$libc_cv_asm_gnu_indirect_function" != xyes -o x"$libc_cv_asm_type_prefix" = xno; then +if test x"$libc_cv_asm_gnu_indirect_function" != xyes; then if test x"$multi_arch" = xyes; then as_fn_error $? "--enable-multi-arch support requires assembler and linker support" "$LINENO" 5 else @@ -5728,7 +5692,7 @@ else cat > conftest.s <<EOF ${libc_cv_dot_text} _sym: -.type _sym, ${libc_cv_asm_type_prefix}gnu_unique_object +.type _sym, %gnu_unique_object EOF if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5; then libc_cv_asm_unique_object=yes diff --git a/configure.in b/configure.in index 037ee1e485..1219b9fb8a 100644 --- a/configure.in +++ b/configure.in @@ -581,29 +581,7 @@ else AC_MSG_RESULT(yes) fi -AC_CACHE_CHECK(for assembler .type directive prefix, - libc_cv_asm_type_prefix, [dnl -libc_cv_asm_type_prefix=no -for ac_try_prefix in '@' '%' '#'; do - cat > conftest.s <<EOF - ${libc_cv_dot_text} - .globl foo - .type foo, ${ac_try_prefix}object - .size foo, 1 -foo: - .byte 1 -EOF - if AC_TRY_COMMAND(${CC-cc} $ASFLAGS -c conftest.s 1>&AS_MESSAGE_LOG_FD); then - libc_cv_asm_type_prefix=${ac_try_prefix} - fi - rm -f conftest* - test "x$libc_cv_asm_type_prefix" != xno && break -done]) -if test "x$libc_cv_asm_type_prefix" != xno; then - AC_DEFINE_UNQUOTED(ASM_TYPE_DIRECTIVE_PREFIX, ${libc_cv_asm_type_prefix}) -fi - -if test x"$libc_cv_asm_gnu_indirect_function" != xyes -o x"$libc_cv_asm_type_prefix" = xno; then +if test x"$libc_cv_asm_gnu_indirect_function" != xyes; then if test x"$multi_arch" = xyes; then AC_MSG_ERROR([--enable-multi-arch support requires assembler and linker support]) else @@ -1125,7 +1103,7 @@ AC_CACHE_CHECK(for assembler gnu_unique_object symbol type, cat > conftest.s <<EOF ${libc_cv_dot_text} _sym: -.type _sym, ${libc_cv_asm_type_prefix}gnu_unique_object +.type _sym, %gnu_unique_object EOF if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then libc_cv_asm_unique_object=yes diff --git a/elf/tst-unique1mod1.c b/elf/tst-unique1mod1.c index ccc74fae3e..f59029d055 100644 --- a/elf/tst-unique1mod1.c +++ b/elf/tst-unique1mod1.c @@ -1,12 +1,9 @@ #include <config.h> #ifdef HAVE_ASM_UNIQUE_OBJECT -# define S(s) _S (s) -# define _S(s) #s - asm (".data;" ".globl var\n" - ".type var, " S (ASM_TYPE_DIRECTIVE_PREFIX) "gnu_unique_object\n" + ".type var, %gnu_unique_object\n" ".size var, 4\n" "var:.zero 4\n" ".previous"); diff --git a/elf/tst-unique1mod2.c b/elf/tst-unique1mod2.c index 4f1fec0087..aa28f29ba9 100644 --- a/elf/tst-unique1mod2.c +++ b/elf/tst-unique1mod2.c @@ -1,12 +1,9 @@ #include <config.h> #ifdef HAVE_ASM_UNIQUE_OBJECT -# define S(s) _S (s) -# define _S(s) #s - asm (".data;" ".globl var\n" - ".type var, " S (ASM_TYPE_DIRECTIVE_PREFIX) "gnu_unique_object\n" + ".type var, %gnu_unique_object\n" ".size var, 4\n" "var:.zero 4\n" ".previous"); diff --git a/elf/tst-unique2mod1.c b/elf/tst-unique2mod1.c index 18b14db433..b7e491b2e5 100644 --- a/elf/tst-unique2mod1.c +++ b/elf/tst-unique2mod1.c @@ -1,12 +1,9 @@ #include <config.h> #ifdef HAVE_ASM_UNIQUE_OBJECT -# define S(s) _S (s) -# define _S(s) #s - asm (".data;" ".globl var\n" - ".type var, " S (ASM_TYPE_DIRECTIVE_PREFIX) "gnu_unique_object\n" + ".type var, %gnu_unique_object\n" ".size var, 4\n" "var:.zero 4\n" ".previous"); diff --git a/elf/tst-unique2mod2.c b/elf/tst-unique2mod2.c index 4f1fec0087..aa28f29ba9 100644 --- a/elf/tst-unique2mod2.c +++ b/elf/tst-unique2mod2.c @@ -1,12 +1,9 @@ #include <config.h> #ifdef HAVE_ASM_UNIQUE_OBJECT -# define S(s) _S (s) -# define _S(s) #s - asm (".data;" ".globl var\n" - ".type var, " S (ASM_TYPE_DIRECTIVE_PREFIX) "gnu_unique_object\n" + ".type var, %gnu_unique_object\n" ".size var, 4\n" "var:.zero 4\n" ".previous"); diff --git a/include/libc-symbols.h b/include/libc-symbols.h index da8730d2bc..a626d593db 100644 --- a/include/libc-symbols.h +++ b/include/libc-symbols.h @@ -27,8 +27,6 @@ It should define for us the following symbols: * HAVE_ASM_SET_DIRECTIVE if we have `.set B, A' instead of `A = B'. - * ASM_TYPE_DIRECTIVE_PREFIX with `@' or `#' or whatever for .type, - or leave it undefined if there is no .type directive. * HAVE_ASM_WEAK_DIRECTIVE if we have weak symbols using `.weak'. * HAVE_ASM_WEAKEXT_DIRECTIVE if we have weak symbols using `.weakext'. @@ -252,37 +250,26 @@ for linking") thinks it is. */ #define declare_symbol_alias(symbol, original, type, size) \ declare_symbol_alias_1 (symbol, original, type, size) -#ifdef ASM_TYPE_DIRECTIVE_PREFIX -# ifdef __ASSEMBLER__ -# define declare_symbol_alias_1(symbol, original, type, size) \ - strong_alias (original, symbol); \ - .type C_SYMBOL_NAME (symbol), \ - declare_symbol_alias_1_paste (ASM_TYPE_DIRECTIVE_PREFIX, type); \ - .size C_SYMBOL_NAME (symbol), size -# define declare_symbol_alias_1_paste(a, b) \ - declare_symbol_alias_1_paste_1 (a,b) -# define declare_symbol_alias_1_paste_1(a,b) a##b -# else /* Not __ASSEMBLER__. */ -# define declare_symbol_alias_1(symbol, original, type, size) \ - asm (".globl " __SYMBOL_PREFIX #symbol \ - "\n\t" declare_symbol_alias_1_alias (symbol, original) \ - "\n\t.type " __SYMBOL_PREFIX #symbol ", " \ - declare_symbol_alias_1_stringify (ASM_TYPE_DIRECTIVE_PREFIX) #type \ - "\n\t.size " __SYMBOL_PREFIX #symbol ", " #size); -# define declare_symbol_alias_1_stringify(x) \ - declare_symbol_alias_1_stringify_1 (x) -# define declare_symbol_alias_1_stringify_1(x) #x -# ifdef HAVE_ASM_SET_DIRECTIVE -# define declare_symbol_alias_1_alias(symbol, original) \ - ".set " __SYMBOL_PREFIX #symbol ", " __SYMBOL_PREFIX #original -# else -# define declare_symbol_alias_1_alias(symbol, original) \ - __SYMBOL_PREFIX #symbol " = " __SYMBOL_PREFIX #original -# endif /* HAVE_ASM_SET_DIRECTIVE */ -# endif /* __ASSEMBLER__ */ -#else -# define declare_symbol_1(symbol, type, size) /* Nothing. */ -#endif +#ifdef __ASSEMBLER__ +# define declare_symbol_alias_1(symbol, original, type, size) \ + strong_alias (original, symbol); \ + .type C_SYMBOL_NAME (symbol), %##type; \ + .size C_SYMBOL_NAME (symbol), size +#else /* Not __ASSEMBLER__. */ +# define declare_symbol_alias_1(symbol, original, type, size) \ + asm (".globl " __SYMBOL_PREFIX #symbol \ + "\n\t" declare_symbol_alias_1_alias (symbol, original) \ + "\n\t.type " __SYMBOL_PREFIX #symbol ", " \ + "%" #type \ + "\n\t.size " __SYMBOL_PREFIX #symbol ", " #size); +# ifdef HAVE_ASM_SET_DIRECTIVE +# define declare_symbol_alias_1_alias(symbol, original) \ + ".set " __SYMBOL_PREFIX #symbol ", " __SYMBOL_PREFIX #original +# else +# define declare_symbol_alias_1_alias(symbol, original) \ + __SYMBOL_PREFIX #symbol " = " __SYMBOL_PREFIX #original +# endif /* HAVE_ASM_SET_DIRECTIVE */ +#endif /* __ASSEMBLER__ */ /* diff --git a/sysdeps/i386/fpu/e_acosh.S b/sysdeps/i386/fpu/e_acosh.S index f1970f6112..474f5c9352 100644 --- a/sysdeps/i386/fpu/e_acosh.S +++ b/sysdeps/i386/fpu/e_acosh.S @@ -22,10 +22,10 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_acoshf.S b/sysdeps/i386/fpu/e_acoshf.S index 5c17e345a2..456fe46990 100644 --- a/sysdeps/i386/fpu/e_acoshf.S +++ b/sysdeps/i386/fpu/e_acoshf.S @@ -22,10 +22,10 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_acoshl.S b/sysdeps/i386/fpu/e_acoshl.S index 05dbdfdbfb..d9b3add138 100644 --- a/sysdeps/i386/fpu/e_acoshl.S +++ b/sysdeps/i386/fpu/e_acoshl.S @@ -25,13 +25,13 @@ /* Please note that we use double value for 1.0. This number has an exact representation and so we don't get accuracy problems. The advantage is that the code is simpler. */ - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_atanh.S b/sysdeps/i386/fpu/e_atanh.S index bef30de38d..b8ae6ef358 100644 --- a/sysdeps/i386/fpu/e_atanh.S +++ b/sysdeps/i386/fpu/e_atanh.S @@ -22,16 +22,16 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(half,@object) + .type half,@object half: .double 0.5 ASM_SIZE_DIRECTIVE(half) - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) - ASM_TYPE_DIRECTIVE(ln2_2,@object) + .type ln2_2,@object ln2_2: .tfloat 0.3465735902799726547086160 ASM_SIZE_DIRECTIVE(ln2_2) diff --git a/sysdeps/i386/fpu/e_atanhf.S b/sysdeps/i386/fpu/e_atanhf.S index edb6053840..c63748537d 100644 --- a/sysdeps/i386/fpu/e_atanhf.S +++ b/sysdeps/i386/fpu/e_atanhf.S @@ -22,17 +22,17 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(half,@object) + .type half,@object half: .double 0.5 ASM_SIZE_DIRECTIVE(half) - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(ln2_2,@object) + .type ln2_2,@object ln2_2: .tfloat 0.3465735902799726547086160 ASM_SIZE_DIRECTIVE(ln2_2) diff --git a/sysdeps/i386/fpu/e_atanhl.S b/sysdeps/i386/fpu/e_atanhl.S index 3d74f366fb..9e22e89f80 100644 --- a/sysdeps/i386/fpu/e_atanhl.S +++ b/sysdeps/i386/fpu/e_atanhl.S @@ -25,20 +25,20 @@ /* Please note that we use double values for 0.5 and 1.0. These numbers have exact representations and so we don't get accuracy problems. The advantage is that the code is simpler. */ - ASM_TYPE_DIRECTIVE(half,@object) + .type half,@object half: .double 0.5 ASM_SIZE_DIRECTIVE(half) - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(ln2_2,@object) + .type ln2_2,@object ln2_2: .tfloat 0.3465735902799726547086160 ASM_SIZE_DIRECTIVE(ln2_2) diff --git a/sysdeps/i386/fpu/e_expl.S b/sysdeps/i386/fpu/e_expl.S index e42c9a1213..af339f0ff4 100644 --- a/sysdeps/i386/fpu/e_expl.S +++ b/sysdeps/i386/fpu/e_expl.S @@ -42,26 +42,26 @@ .p2align 4 #ifdef USE_AS_EXP10L - ASM_TYPE_DIRECTIVE(c0,@object) + .type c0,@object c0: .byte 0, 0, 0, 0, 0, 0, 0x9a, 0xd4, 0x00, 0x40 .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(c0) - ASM_TYPE_DIRECTIVE(c1,@object) + .type c1,@object c1: .byte 0x58, 0x92, 0xfc, 0x15, 0x37, 0x9a, 0x97, 0xf0, 0xef, 0x3f .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(c1) #else - ASM_TYPE_DIRECTIVE(c0,@object) + .type c0,@object c0: .byte 0, 0, 0, 0, 0, 0, 0xaa, 0xb8, 0xff, 0x3f .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(c0) - ASM_TYPE_DIRECTIVE(c1,@object) + .type c1,@object c1: .byte 0x20, 0xfa, 0xee, 0xc2, 0x5f, 0x70, 0xa5, 0xec, 0xed, 0x3f .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(c1) #endif #ifndef USE_AS_EXPM1L - ASM_TYPE_DIRECTIVE(csat,@object) + .type csat,@object csat: .byte 0, 0, 0, 0, 0, 0, 0, 0x80, 0x0e, 0x40 .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(csat) diff --git a/sysdeps/i386/fpu/e_log.S b/sysdeps/i386/fpu/e_log.S index e4fffb80d3..0877924998 100644 --- a/sysdeps/i386/fpu/e_log.S +++ b/sysdeps/i386/fpu/e_log.S @@ -10,13 +10,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_log10.S b/sysdeps/i386/fpu/e_log10.S index b54bf0ed0e..ce6a81abb6 100644 --- a/sysdeps/i386/fpu/e_log10.S +++ b/sysdeps/i386/fpu/e_log10.S @@ -10,13 +10,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_log10f.S b/sysdeps/i386/fpu/e_log10f.S index 344110c1a4..8c20723555 100644 --- a/sysdeps/i386/fpu/e_log10f.S +++ b/sysdeps/i386/fpu/e_log10f.S @@ -11,13 +11,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_log10l.S b/sysdeps/i386/fpu/e_log10l.S index eeb49c6636..cde987b137 100644 --- a/sysdeps/i386/fpu/e_log10l.S +++ b/sysdeps/i386/fpu/e_log10l.S @@ -12,13 +12,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_log2.S b/sysdeps/i386/fpu/e_log2.S index cc377637f6..a202bc731d 100644 --- a/sysdeps/i386/fpu/e_log2.S +++ b/sysdeps/i386/fpu/e_log2.S @@ -11,13 +11,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_log2f.S b/sysdeps/i386/fpu/e_log2f.S index 59f4f212e3..f4f9a8c3bf 100644 --- a/sysdeps/i386/fpu/e_log2f.S +++ b/sysdeps/i386/fpu/e_log2f.S @@ -11,13 +11,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_log2l.S b/sysdeps/i386/fpu/e_log2l.S index 4693f6c717..bd51b5651e 100644 --- a/sysdeps/i386/fpu/e_log2l.S +++ b/sysdeps/i386/fpu/e_log2l.S @@ -11,13 +11,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_logf.S b/sysdeps/i386/fpu/e_logf.S index e277a2f5ec..485180e909 100644 --- a/sysdeps/i386/fpu/e_logf.S +++ b/sysdeps/i386/fpu/e_logf.S @@ -11,13 +11,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_logl.S b/sysdeps/i386/fpu/e_logl.S index 7b52b3b2d4..d7a459a627 100644 --- a/sysdeps/i386/fpu/e_logl.S +++ b/sysdeps/i386/fpu/e_logl.S @@ -11,13 +11,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/e_pow.S b/sysdeps/i386/fpu/e_pow.S index 73d2421162..de850226db 100644 --- a/sysdeps/i386/fpu/e_pow.S +++ b/sysdeps/i386/fpu/e_pow.S @@ -23,31 +23,31 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) - ASM_TYPE_DIRECTIVE(p63,@object) + .type p63,@object p63: .byte 0, 0, 0, 0, 0, 0, 0xe0, 0x43 ASM_SIZE_DIRECTIVE(p63) - ASM_TYPE_DIRECTIVE(p10,@object) + .type p10,@object p10: .byte 0, 0, 0, 0, 0, 0, 0x90, 0x40 ASM_SIZE_DIRECTIVE(p10) .section .rodata.cst16,"aM",@progbits,16 .p2align 3 - ASM_TYPE_DIRECTIVE(infinity,@object) + .type infinity,@object inf_zero: infinity: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x7f ASM_SIZE_DIRECTIVE(infinity) - ASM_TYPE_DIRECTIVE(zero,@object) + .type zero,@object zero: .double 0.0 ASM_SIZE_DIRECTIVE(zero) - ASM_TYPE_DIRECTIVE(minf_mzero,@object) + .type minf_mzero,@object minf_mzero: minfinity: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0xff diff --git a/sysdeps/i386/fpu/e_powf.S b/sysdeps/i386/fpu/e_powf.S index 529a96f953..4c622fc569 100644 --- a/sysdeps/i386/fpu/e_powf.S +++ b/sysdeps/i386/fpu/e_powf.S @@ -23,28 +23,28 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) - ASM_TYPE_DIRECTIVE(p31,@object) + .type p31,@object p31: .byte 0, 0, 0, 0, 0, 0, 0xe0, 0x41 ASM_SIZE_DIRECTIVE(p31) .section .rodata.cst16,"aM",@progbits,16 .p2align 3 - ASM_TYPE_DIRECTIVE(infinity,@object) + .type infinity,@object inf_zero: infinity: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x7f ASM_SIZE_DIRECTIVE(infinity) - ASM_TYPE_DIRECTIVE(zero,@object) + .type zero,@object zero: .double 0.0 ASM_SIZE_DIRECTIVE(zero) - ASM_TYPE_DIRECTIVE(minf_mzero,@object) + .type minf_mzero,@object minf_mzero: minfinity: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0xff diff --git a/sysdeps/i386/fpu/e_powl.S b/sysdeps/i386/fpu/e_powl.S index 5b166eab4b..933418cf82 100644 --- a/sysdeps/i386/fpu/e_powl.S +++ b/sysdeps/i386/fpu/e_powl.S @@ -23,34 +23,34 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) - ASM_TYPE_DIRECTIVE(p63,@object) + .type p63,@object p63: .byte 0, 0, 0, 0, 0, 0, 0xe0, 0x43 ASM_SIZE_DIRECTIVE(p63) - ASM_TYPE_DIRECTIVE(p64,@object) + .type p64,@object p64: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x43 ASM_SIZE_DIRECTIVE(p64) - ASM_TYPE_DIRECTIVE(p78,@object) + .type p78,@object p78: .byte 0, 0, 0, 0, 0, 0, 0xd0, 0x44 ASM_SIZE_DIRECTIVE(p78) .section .rodata.cst16,"aM",@progbits,16 .p2align 3 - ASM_TYPE_DIRECTIVE(infinity,@object) + .type infinity,@object inf_zero: infinity: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x7f ASM_SIZE_DIRECTIVE(infinity) - ASM_TYPE_DIRECTIVE(zero,@object) + .type zero,@object zero: .double 0.0 ASM_SIZE_DIRECTIVE(zero) - ASM_TYPE_DIRECTIVE(minf_mzero,@object) + .type minf_mzero,@object minf_mzero: minfinity: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0xff diff --git a/sysdeps/i386/fpu/e_scalb.S b/sysdeps/i386/fpu/e_scalb.S index 1d8d2dd01f..20d489efde 100644 --- a/sysdeps/i386/fpu/e_scalb.S +++ b/sysdeps/i386/fpu/e_scalb.S @@ -10,7 +10,7 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(zero_nan,@object) + .type zero_nan,@object zero_nan: .double 0.0 nan: .byte 0, 0, 0, 0, 0, 0, 0xff, 0x7f diff --git a/sysdeps/i386/fpu/e_scalbf.S b/sysdeps/i386/fpu/e_scalbf.S index 0967dbdc2d..b6dd02122a 100644 --- a/sysdeps/i386/fpu/e_scalbf.S +++ b/sysdeps/i386/fpu/e_scalbf.S @@ -11,7 +11,7 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(zero_nan,@object) + .type zero_nan,@object zero_nan: .double 0.0 nan: .byte 0, 0, 0, 0, 0, 0, 0xff, 0x7f diff --git a/sysdeps/i386/fpu/e_scalbl.S b/sysdeps/i386/fpu/e_scalbl.S index 434fce46f3..83f17b233b 100644 --- a/sysdeps/i386/fpu/e_scalbl.S +++ b/sysdeps/i386/fpu/e_scalbl.S @@ -12,7 +12,7 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(zero_nan,@object) + .type zero_nan,@object zero_nan: .double 0.0 nan: .byte 0, 0, 0, 0, 0, 0, 0xff, 0x7f diff --git a/sysdeps/i386/fpu/s_asinh.S b/sysdeps/i386/fpu/s_asinh.S index f101f36d60..8bdcfcc92f 100644 --- a/sysdeps/i386/fpu/s_asinh.S +++ b/sysdeps/i386/fpu/s_asinh.S @@ -22,13 +22,13 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(huge,@object) + .type huge,@object huge: .double 1e+300 ASM_SIZE_DIRECTIVE(huge) - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/s_asinhf.S b/sysdeps/i386/fpu/s_asinhf.S index aa72676b4a..86a49a3fa9 100644 --- a/sysdeps/i386/fpu/s_asinhf.S +++ b/sysdeps/i386/fpu/s_asinhf.S @@ -22,13 +22,13 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(huge,@object) + .type huge,@object huge: .double 1e+36 ASM_SIZE_DIRECTIVE(huge) - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/s_asinhl.S b/sysdeps/i386/fpu/s_asinhl.S index ec24343642..4ec5c10213 100644 --- a/sysdeps/i386/fpu/s_asinhl.S +++ b/sysdeps/i386/fpu/s_asinhl.S @@ -22,20 +22,20 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(huge,@object) + .type huge,@object huge: .tfloat 1e+4930 ASM_SIZE_DIRECTIVE(huge) .align ALIGNARG(4) /* Please note that we use double value for 1.0. This number has an exact representation and so we don't get accuracy problems. The advantage is that the code is simpler. */ - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/fpu/s_cbrt.S b/sysdeps/i386/fpu/s_cbrt.S index 15b25a42ad..aca0b5a92b 100644 --- a/sysdeps/i386/fpu/s_cbrt.S +++ b/sysdeps/i386/fpu/s_cbrt.S @@ -23,25 +23,25 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f7,@object) + .type f7,@object f7: .double -0.145263899385486377 ASM_SIZE_DIRECTIVE(f7) - ASM_TYPE_DIRECTIVE(f6,@object) + .type f6,@object f6: .double 0.784932344976639262 ASM_SIZE_DIRECTIVE(f6) - ASM_TYPE_DIRECTIVE(f5,@object) + .type f5,@object f5: .double -1.83469277483613086 ASM_SIZE_DIRECTIVE(f5) - ASM_TYPE_DIRECTIVE(f4,@object) + .type f4,@object f4: .double 2.44693122563534430 ASM_SIZE_DIRECTIVE(f4) - ASM_TYPE_DIRECTIVE(f3,@object) + .type f3,@object f3: .double -2.11499494167371287 ASM_SIZE_DIRECTIVE(f3) - ASM_TYPE_DIRECTIVE(f2,@object) + .type f2,@object f2: .double 1.50819193781584896 ASM_SIZE_DIRECTIVE(f2) - ASM_TYPE_DIRECTIVE(f1,@object) + .type f1,@object f1: .double 0.354895765043919860 ASM_SIZE_DIRECTIVE(f1) @@ -50,7 +50,7 @@ f1: .double 0.354895765043919860 #define SQR_CBRT2 1.5874010519681994748 #define ONE_SQR_CBRT2 0.629960524947436582364439673883 - ASM_TYPE_DIRECTIVE(factor,@object) + .type factor,@object factor: .double ONE_SQR_CBRT2 .double ONE_CBRT2 .double 1.0 @@ -58,7 +58,7 @@ factor: .double ONE_SQR_CBRT2 .double SQR_CBRT2 ASM_SIZE_DIRECTIVE(factor) - ASM_TYPE_DIRECTIVE(two54,@object) + .type two54,@object two54: .byte 0, 0, 0, 0, 0, 0, 0x50, 0x43 ASM_SIZE_DIRECTIVE(two54) diff --git a/sysdeps/i386/fpu/s_cbrtf.S b/sysdeps/i386/fpu/s_cbrtf.S index be16b3cb73..c3ba2fa2ec 100644 --- a/sysdeps/i386/fpu/s_cbrtf.S +++ b/sysdeps/i386/fpu/s_cbrtf.S @@ -23,13 +23,13 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f3,@object) + .type f3,@object f3: .double 0.191502161678719066 ASM_SIZE_DIRECTIVE(f3) - ASM_TYPE_DIRECTIVE(f2,@object) + .type f2,@object f2: .double 0.697570460207922770 ASM_SIZE_DIRECTIVE(f2) - ASM_TYPE_DIRECTIVE(f1,@object) + .type f1,@object f1: .double 0.492659620528969547 ASM_SIZE_DIRECTIVE(f1) @@ -38,7 +38,7 @@ f1: .double 0.492659620528969547 #define SQR_CBRT2 1.5874010519681994748 #define ONE_SQR_CBRT2 0.629960524947436582364439673883 - ASM_TYPE_DIRECTIVE(factor,@object) + .type factor,@object .align ALIGNARG(4) factor: .double ONE_SQR_CBRT2 .double ONE_CBRT2 @@ -47,7 +47,7 @@ factor: .double ONE_SQR_CBRT2 .double SQR_CBRT2 ASM_SIZE_DIRECTIVE(factor) - ASM_TYPE_DIRECTIVE(two25,@object) + .type two25,@object two25: .byte 0, 0, 0, 0x4c ASM_SIZE_DIRECTIVE(two25) diff --git a/sysdeps/i386/fpu/s_cbrtl.S b/sysdeps/i386/fpu/s_cbrtl.S index e92547e8ad..8b50ba4b69 100644 --- a/sysdeps/i386/fpu/s_cbrtl.S +++ b/sysdeps/i386/fpu/s_cbrtl.S @@ -23,35 +23,35 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f8,@object) + .type f8,@object f8: .tfloat 0.161617097923756032 ASM_SIZE_DIRECTIVE(f8) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f7,@object) + .type f7,@object f7: .tfloat -0.988553671195413709 ASM_SIZE_DIRECTIVE(f7) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f6,@object) + .type f6,@object f6: .tfloat 2.65298938441952296 ASM_SIZE_DIRECTIVE(f6) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f5,@object) + .type f5,@object f5: .tfloat -4.11151425200350531 ASM_SIZE_DIRECTIVE(f5) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f4,@object) + .type f4,@object f4: .tfloat 4.09559907378707839 ASM_SIZE_DIRECTIVE(f4) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f3,@object) + .type f3,@object f3: .tfloat -2.82414939754975962 ASM_SIZE_DIRECTIVE(f3) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f2,@object) + .type f2,@object f2: .tfloat 1.67595307700780102 ASM_SIZE_DIRECTIVE(f2) .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(f1,@object) + .type f1,@object f1: .tfloat 0.338058687610520237 ASM_SIZE_DIRECTIVE(f1) @@ -62,7 +62,7 @@ f1: .tfloat 0.338058687610520237 /* We make the entries in the following table all 16 bytes wide to avoid having to implement a multiplication by 10. */ - ASM_TYPE_DIRECTIVE(factor,@object) + .type factor,@object .align ALIGNARG(4) factor: .tfloat ONE_SQR_CBRT2 .byte 0, 0, 0, 0, 0, 0 @@ -75,7 +75,7 @@ factor: .tfloat ONE_SQR_CBRT2 .tfloat SQR_CBRT2 ASM_SIZE_DIRECTIVE(factor) - ASM_TYPE_DIRECTIVE(two64,@object) + .type two64,@object .align ALIGNARG(4) two64: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x43 ASM_SIZE_DIRECTIVE(two64) diff --git a/sysdeps/i386/fpu/s_expm1.S b/sysdeps/i386/fpu/s_expm1.S index d2754de911..2aad34c055 100644 --- a/sysdeps/i386/fpu/s_expm1.S +++ b/sysdeps/i386/fpu/s_expm1.S @@ -27,13 +27,13 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(minus1,@object) + .type minus1,@object minus1: .double -1.0 ASM_SIZE_DIRECTIVE(minus1) - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(l2e,@object) + .type l2e,@object l2e: .tfloat 1.442695040888963407359924681002 ASM_SIZE_DIRECTIVE(l2e) diff --git a/sysdeps/i386/fpu/s_expm1f.S b/sysdeps/i386/fpu/s_expm1f.S index fc82b92341..b039049bd5 100644 --- a/sysdeps/i386/fpu/s_expm1f.S +++ b/sysdeps/i386/fpu/s_expm1f.S @@ -27,13 +27,13 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(minus1,@object) + .type minus1,@object minus1: .double -1.0 ASM_SIZE_DIRECTIVE(minus1) - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(l2e,@object) + .type l2e,@object l2e: .tfloat 1.442695040888963407359924681002 ASM_SIZE_DIRECTIVE(l2e) diff --git a/sysdeps/i386/fpu/s_frexp.S b/sysdeps/i386/fpu/s_frexp.S index 27c494ef00..e76732dc8b 100644 --- a/sysdeps/i386/fpu/s_frexp.S +++ b/sysdeps/i386/fpu/s_frexp.S @@ -24,7 +24,7 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(two54,@object) + .type two54,@object two54: .byte 0, 0, 0, 0, 0, 0, 0x50, 0x43 ASM_SIZE_DIRECTIVE(two54) diff --git a/sysdeps/i386/fpu/s_frexpf.S b/sysdeps/i386/fpu/s_frexpf.S index 18bc7615a0..af0dc8ee3d 100644 --- a/sysdeps/i386/fpu/s_frexpf.S +++ b/sysdeps/i386/fpu/s_frexpf.S @@ -24,7 +24,7 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(two25,@object) + .type two25,@object two25: .byte 0, 0, 0, 0x4c ASM_SIZE_DIRECTIVE(two25) diff --git a/sysdeps/i386/fpu/s_frexpl.S b/sysdeps/i386/fpu/s_frexpl.S index e683c2bac2..6f464a89d6 100644 --- a/sysdeps/i386/fpu/s_frexpl.S +++ b/sysdeps/i386/fpu/s_frexpl.S @@ -24,7 +24,7 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(two64,@object) + .type two64,@object two64: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x43 ASM_SIZE_DIRECTIVE(two64) diff --git a/sysdeps/i386/i386-mcount.S b/sysdeps/i386/i386-mcount.S index 11f7493c3a..dfe19a280a 100644 --- a/sysdeps/i386/i386-mcount.S +++ b/sysdeps/i386/i386-mcount.S @@ -27,7 +27,7 @@ - some (future) systems might want to pass parameters in registers. */ .globl C_SYMBOL_NAME(_mcount) - ASM_TYPE_DIRECTIVE(C_SYMBOL_NAME(_mcount), @function) + .type C_SYMBOL_NAME(_mcount), @function .align ALIGNARG(4) C_LABEL(_mcount) /* Save the caller-clobbered registers. */ @@ -55,7 +55,7 @@ weak_alias (_mcount, mcount) /* Same as above, but doesn't require a frame pointer */ .globl C_SYMBOL_NAME(__fentry__) - ASM_TYPE_DIRECTIVE(C_SYMBOL_NAME(__fentry__), @function) + .type C_SYMBOL_NAME(__fentry__), @function .align ALIGNARG(4) C_LABEL(__fentry__) /* Save the caller-clobbered registers. */ diff --git a/sysdeps/i386/i686/fpu/e_logl.S b/sysdeps/i386/i686/fpu/e_logl.S index be2116cb36..8a86222b13 100644 --- a/sysdeps/i386/i686/fpu/e_logl.S +++ b/sysdeps/i386/i686/fpu/e_logl.S @@ -12,13 +12,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.S b/sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.S index 31cdffdb00..111838aab6 100644 --- a/sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.S +++ b/sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.S @@ -243,82 +243,82 @@ L(DP_T): /* table of double precision values 2^(j/K) for j=[0..K-1] */ .long 0xee615a27, 0x3ffefa1b .long 0x5b6e4540, 0x3fff5076 .long 0x819e90d8, 0x3fffa7c1 - ASM_TYPE_DIRECTIVE(L(DP_T), @object) + .type L(DP_T), @object ASM_SIZE_DIRECTIVE(L(DP_T)) .section .rodata.cst8,"aM",@progbits,8 .p2align 3 L(DP_KLN2): /* double precision K/log(2) */ .long 0x652b82fe, 0x40571547 - ASM_TYPE_DIRECTIVE(L(DP_KLN2), @object) + .type L(DP_KLN2), @object ASM_SIZE_DIRECTIVE(L(DP_KLN2)) .p2align 3 L(DP_NLN2K): /* double precision -log(2)/K */ .long 0xfefa39ef, 0xbf862e42 - ASM_TYPE_DIRECTIVE(L(DP_NLN2K), @object) + .type L(DP_NLN2K), @object ASM_SIZE_DIRECTIVE(L(DP_NLN2K)) .p2align 3 L(DP_RS): /* double precision 2^23+2^22 */ .long 0x00000000, 0x41680000 - ASM_TYPE_DIRECTIVE(L(DP_RS), @object) + .type L(DP_RS), @object ASM_SIZE_DIRECTIVE(L(DP_RS)) .p2align 3 L(DP_P3): /* double precision polynomial coefficient P3 */ .long 0xeb78fa85, 0x3fa56420 - ASM_TYPE_DIRECTIVE(L(DP_P3), @object) + .type L(DP_P3), @object ASM_SIZE_DIRECTIVE(L(DP_P3)) .p2align 3 L(DP_P1): /* double precision polynomial coefficient P1 */ .long 0x008d6118, 0x3fe00000 - ASM_TYPE_DIRECTIVE(L(DP_P1), @object) + .type L(DP_P1), @object ASM_SIZE_DIRECTIVE(L(DP_P1)) .p2align 3 L(DP_P2): /* double precision polynomial coefficient P2 */ .long 0xda752d4f, 0x3fc55550 - ASM_TYPE_DIRECTIVE(L(DP_P2), @object) + .type L(DP_P2), @object ASM_SIZE_DIRECTIVE(L(DP_P2)) .p2align 3 L(DP_P0): /* double precision polynomial coefficient P0 */ .long 0xffffe7c6, 0x3fefffff - ASM_TYPE_DIRECTIVE(L(DP_P0), @object) + .type L(DP_P0), @object ASM_SIZE_DIRECTIVE(L(DP_P0)) .p2align 2 L(SP_INF_0): .long 0x7f800000 /* single precision Inf */ .long 0 /* single precision zero */ - ASM_TYPE_DIRECTIVE(L(SP_INF_0), @object) + .type L(SP_INF_0), @object ASM_SIZE_DIRECTIVE(L(SP_INF_0)) .section .rodata.cst4,"aM",@progbits,4 .p2align 2 L(SP_RS): /* single precision 2^23+2^22 */ .long 0x4b400000 - ASM_TYPE_DIRECTIVE(L(SP_RS), @object) + .type L(SP_RS), @object ASM_SIZE_DIRECTIVE(L(SP_RS)) .p2align 2 L(SP_SMALL): /* single precision small value 2^(-100) */ .long 0x0d800000 - ASM_TYPE_DIRECTIVE(L(SP_SMALL), @object) + .type L(SP_SMALL), @object ASM_SIZE_DIRECTIVE(L(SP_SMALL)) .p2align 2 L(SP_LARGE): /* single precision large value 2^100 */ .long 0x71800000 - ASM_TYPE_DIRECTIVE(L(SP_LARGE), @object) + .type L(SP_LARGE), @object ASM_SIZE_DIRECTIVE(L(SP_LARGE)) .p2align 2 L(SP_ONE): /* single precision 1.0 */ .long 0x3f800000 - ASM_TYPE_DIRECTIVE(L(SP_ONE), @object) + .type L(SP_ONE), @object ASM_SIZE_DIRECTIVE(L(SP_ONE)) strong_alias (__ieee754_expf_sse2, __expf_finite_sse2) diff --git a/sysdeps/i386/i686/strtok.S b/sysdeps/i386/i686/strtok.S index 92d52556dc..5589ae5360 100644 --- a/sysdeps/i386/i686/strtok.S +++ b/sysdeps/i386/i686/strtok.S @@ -1,6 +1,6 @@ /* strtok (str, delim) -- Return next DELIM separated token from STR. For Intel 80686. - Copyright (C) 1998, 2000, 2001, 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 1998-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. @@ -43,7 +43,7 @@ #else .bss .local save_ptr - ASM_TYPE_DIRECTIVE (save_ptr, @object) + .type save_ptr, @object .size save_ptr, 4 save_ptr: # if __BOUNDED_POINTERS__ diff --git a/sysdeps/i386/strtok.S b/sysdeps/i386/strtok.S index e936fc19f1..3b222aff3d 100644 --- a/sysdeps/i386/strtok.S +++ b/sysdeps/i386/strtok.S @@ -1,6 +1,6 @@ /* strtok (str, delim) -- Return next DELIM separated token from STR. For Intel 80x86, x>=3. - Copyright (C) 1996-1998,2000,2001,2005,2006 Free Software Foundation, Inc. + Copyright (C) 1996-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996. @@ -43,7 +43,7 @@ #else .bss .local save_ptr - ASM_TYPE_DIRECTIVE (save_ptr, @object) + .type save_ptr, @object .size save_ptr, 4 save_ptr: # if __BOUNDED_POINTERS__ diff --git a/sysdeps/i386/sysdep.h b/sysdeps/i386/sysdep.h index 01e6817919..2e547e6ea0 100644 --- a/sysdeps/i386/sysdep.h +++ b/sysdeps/i386/sysdep.h @@ -50,8 +50,6 @@ /* ELF uses byte-counts for .align, most others use log2 of count of bytes. */ #define ALIGNARG(log2) 1<<log2 -/* For ELF we need the `.type' directive to make shared libs work right. */ -#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg; #define ASM_SIZE_DIRECTIVE(name) .size name,.-name; @@ -63,8 +61,8 @@ #define ENTRY(name) \ STABS_CURRENT_FILE1("") \ STABS_CURRENT_FILE(name) \ - .globl C_SYMBOL_NAME(name); \ - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ .align ALIGNARG(4); \ STABS_FUN(name) \ C_LABEL(name) \ diff --git a/sysdeps/powerpc/powerpc32/sysdep.h b/sysdeps/powerpc/powerpc32/sysdep.h index 811ebf2aed..02917a8677 100644 --- a/sysdeps/powerpc/powerpc32/sysdep.h +++ b/sysdeps/powerpc/powerpc32/sysdep.h @@ -30,15 +30,15 @@ # define CALL_MCOUNT \ mflr r0; \ stw r0,4(r1); \ - cfi_offset (lr, 4); \ + cfi_offset (lr, 4); \ bl JUMPTARGET(_mcount); #else /* PROF */ # define CALL_MCOUNT /* Do nothing. */ #endif /* PROF */ #define ENTRY(name) \ - .globl C_SYMBOL_NAME(name); \ - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ .align ALIGNARG(2); \ C_LABEL(name) \ cfi_startproc; \ @@ -46,7 +46,7 @@ /* helper macro for accessing the 32-bit powerpc GOT. */ -#define SETUP_GOT_ACCESS(regname,GOT_LABEL) \ +#define SETUP_GOT_ACCESS(regname,GOT_LABEL) \ bcl 20,31,GOT_LABEL ; \ GOT_LABEL: ; \ mflr (regname) @@ -64,8 +64,8 @@ GOT_LABEL: ; \ past a 2^align boundary. */ #ifdef PROF # define EALIGN(name, alignt, words) \ - .globl C_SYMBOL_NAME(name); \ - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ .align ALIGNARG(2); \ C_LABEL(name) \ cfi_startproc; \ @@ -76,8 +76,8 @@ GOT_LABEL: ; \ 0: #else /* PROF */ # define EALIGN(name, alignt, words) \ - .globl C_SYMBOL_NAME(name); \ - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ .align ALIGNARG(alignt); \ EALIGN_W_##words; \ C_LABEL(name) \ @@ -89,7 +89,7 @@ GOT_LABEL: ; \ cfi_endproc; \ ASM_SIZE_DIRECTIVE(name) -#define DO_CALL(syscall) \ +#define DO_CALL(syscall) \ li 0,syscall; \ sc diff --git a/sysdeps/powerpc/sysdep.h b/sysdeps/powerpc/sysdep.h index 7682ae9188..302f559702 100644 --- a/sysdeps/powerpc/sysdep.h +++ b/sysdeps/powerpc/sysdep.h @@ -147,8 +147,6 @@ /* This seems to always be the case on PPC. */ #define ALIGNARG(log2) log2 -/* For ELF we need the `.type' directive to make shared libs work right. */ -#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg; #define ASM_SIZE_DIRECTIVE(name) .size name,.-name #endif /* __ASSEMBLER__ */ diff --git a/sysdeps/s390/s390-32/s390-mcount.S b/sysdeps/s390/s390-32/s390-mcount.S index 1c8c79adac..04e14ebd8f 100644 --- a/sysdeps/s390/s390-32/s390-mcount.S +++ b/sysdeps/s390/s390-32/s390-mcount.S @@ -48,7 +48,7 @@ */ .globl C_SYMBOL_NAME(_mcount) - ASM_TYPE_DIRECTIVE(C_SYMBOL_NAME(_mcount), @function) + .type C_SYMBOL_NAME(_mcount), @function cfi_startproc .align ALIGNARG(4) C_LABEL(_mcount) diff --git a/sysdeps/s390/s390-32/sysdep.h b/sysdeps/s390/s390-32/sysdep.h index 24a07a2a90..78749ee161 100644 --- a/sysdeps/s390/s390-32/sysdep.h +++ b/sysdeps/s390/s390-32/sysdep.h @@ -25,15 +25,13 @@ /* ELF uses byte-counts for .align, most others use log2 of count of bytes. */ #define ALIGNARG(log2) 1<<log2 -/* For ELF we need the `.type' directive to make shared libs work right. */ -#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg; #define ASM_SIZE_DIRECTIVE(name) .size name,.-name; /* Define an entry point visible from C. */ #define ENTRY(name) \ - .globl C_SYMBOL_NAME(name); \ - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ .align ALIGNARG(2); \ C_LABEL(name) \ cfi_startproc; \ diff --git a/sysdeps/s390/s390-64/s390x-mcount.S b/sysdeps/s390/s390-64/s390x-mcount.S index 5d8ef91178..3d43929892 100644 --- a/sysdeps/s390/s390-64/s390x-mcount.S +++ b/sysdeps/s390/s390-64/s390x-mcount.S @@ -44,7 +44,7 @@ _mcount may not modify any register. */ .globl C_SYMBOL_NAME(_mcount) - ASM_TYPE_DIRECTIVE(C_SYMBOL_NAME(_mcount), @function) + .type C_SYMBOL_NAME(_mcount), @function cfi_startproc .align ALIGNARG(4) C_LABEL(_mcount) diff --git a/sysdeps/s390/s390-64/sysdep.h b/sysdeps/s390/s390-64/sysdep.h index b7449b6b15..e62191c2a2 100644 --- a/sysdeps/s390/s390-64/sysdep.h +++ b/sysdeps/s390/s390-64/sysdep.h @@ -25,15 +25,13 @@ /* ELF uses byte-counts for .align, most others use log2 of count of bytes. */ #define ALIGNARG(log2) 1<<log2 -/* For ELF we need the `.type' directive to make shared libs work right. */ -#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg; #define ASM_SIZE_DIRECTIVE(name) .size name,.-name; /* Define an entry point visible from C. */ #define ENTRY(name) \ - .globl C_SYMBOL_NAME(name); \ - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ .align ALIGNARG(2); \ C_LABEL(name) \ cfi_startproc; \ diff --git a/sysdeps/sh/_mcount.S b/sysdeps/sh/_mcount.S index 878788b599..7c9f6d132e 100644 --- a/sysdeps/sh/_mcount.S +++ b/sysdeps/sh/_mcount.S @@ -20,7 +20,7 @@ #include <sysdep.h> .globl C_SYMBOL_NAME(_mcount) - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(_mcount),function) + .type C_SYMBOL_NAME(_mcount),@function cfi_startproc .align 5 C_LABEL(_mcount) diff --git a/sysdeps/sh/sysdep.h b/sysdeps/sh/sysdep.h index 66a1982887..1111b8bd42 100644 --- a/sysdeps/sh/sysdep.h +++ b/sysdeps/sh/sysdep.h @@ -23,8 +23,6 @@ /* Syntactic details of assembler. */ #define ALIGNARG(log2) log2 -/* For ELF we need the `.type' directive to make shared libs work right. */ -#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,@##typearg; #define ASM_SIZE_DIRECTIVE(name) .size name,.-name #ifdef SHARED @@ -36,8 +34,8 @@ /* Define an entry point visible from C. */ #define ENTRY(name) \ - .globl C_SYMBOL_NAME(name); \ - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),function) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ .align ALIGNARG(5); \ C_LABEL(name) \ cfi_startproc; \ diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h b/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h index 0f4fe53343..9b0693a195 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h @@ -58,8 +58,6 @@ /* This seems to always be the case on PPC. */ # define ALIGNARG(log2) log2 -/* For ELF we need the `.type' directive to make shared libs work right. */ -# define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg; # define ASM_SIZE_DIRECTIVE(name) .size name,.-name #endif /* __ASSEMBLER__ */ diff --git a/sysdeps/x86_64/_mcount.S b/sysdeps/x86_64/_mcount.S index c919865b4d..3adfe031ff 100644 --- a/sysdeps/x86_64/_mcount.S +++ b/sysdeps/x86_64/_mcount.S @@ -25,7 +25,7 @@ #include <sysdep.h> .globl C_SYMBOL_NAME(_mcount) - ASM_TYPE_DIRECTIVE(C_SYMBOL_NAME(_mcount), @function) + .type C_SYMBOL_NAME(_mcount), @function .align ALIGNARG(4) C_LABEL(_mcount) /* Allocate space for 7 registers. */ @@ -66,7 +66,7 @@ C_LABEL(_mcount) weak_alias (_mcount, mcount) .globl C_SYMBOL_NAME(__fentry__) - ASM_TYPE_DIRECTIVE(C_SYMBOL_NAME(__fentry__), @function) + .type C_SYMBOL_NAME(__fentry__), @function .align ALIGNARG(4) C_LABEL(__fentry__) /* Allocate space for 7 registers. */ diff --git a/sysdeps/x86_64/fpu/e_expf.S b/sysdeps/x86_64/fpu/e_expf.S index 340a1c2f07..9b13304358 100644 --- a/sysdeps/x86_64/fpu/e_expf.S +++ b/sysdeps/x86_64/fpu/e_expf.S @@ -251,89 +251,89 @@ L(DP_T): /* table of double precision values 2^(j/K) for j=[0..K-1] */ .long 0xee615a27, 0x3ffefa1b .long 0x5b6e4540, 0x3fff5076 .long 0x819e90d8, 0x3fffa7c1 - ASM_TYPE_DIRECTIVE(L(DP_T), @object) + .type L(DP_T), @object ASM_SIZE_DIRECTIVE(L(DP_T)) .section .rodata.cst8,"aM",@progbits,8 .p2align 3 L(DP_KLN2): /* double precision K/log(2) */ .long 0x652b82fe, 0x40571547 - ASM_TYPE_DIRECTIVE(L(DP_KLN2), @object) + .type L(DP_KLN2), @object ASM_SIZE_DIRECTIVE(L(DP_KLN2)) .p2align 3 L(DP_NLN2K): /* double precision -log(2)/K */ .long 0xfefa39ef, 0xbf862e42 - ASM_TYPE_DIRECTIVE(L(DP_NLN2K), @object) + .type L(DP_NLN2K), @object ASM_SIZE_DIRECTIVE(L(DP_NLN2K)) .p2align 3 L(DP_RS): /* double precision 2^23+2^22 */ .long 0x00000000, 0x41680000 - ASM_TYPE_DIRECTIVE(L(DP_RS), @object) + .type L(DP_RS), @object ASM_SIZE_DIRECTIVE(L(DP_RS)) .p2align 3 L(DP_P3): /* double precision polynomial coefficient P3 */ .long 0xeb78fa85, 0x3fa56420 - ASM_TYPE_DIRECTIVE(L(DP_P3), @object) + .type L(DP_P3), @object ASM_SIZE_DIRECTIVE(L(DP_P3)) .p2align 3 L(DP_P1): /* double precision polynomial coefficient P1 */ .long 0x008d6118, 0x3fe00000 - ASM_TYPE_DIRECTIVE(L(DP_P1), @object) + .type L(DP_P1), @object ASM_SIZE_DIRECTIVE(L(DP_P1)) .p2align 3 L(DP_P2): /* double precision polynomial coefficient P2 */ .long 0xda752d4f, 0x3fc55550 - ASM_TYPE_DIRECTIVE(L(DP_P2), @object) + .type L(DP_P2), @object ASM_SIZE_DIRECTIVE(L(DP_P2)) .p2align 3 L(DP_P0): /* double precision polynomial coefficient P0 */ .long 0xffffe7c6, 0x3fefffff - ASM_TYPE_DIRECTIVE(L(DP_P0), @object) + .type L(DP_P0), @object ASM_SIZE_DIRECTIVE(L(DP_P0)) .p2align 2 L(SP_RANGE): /* single precision overflow/underflow bounds */ .long 0x42b17217 /* if x>this bound, then result overflows */ .long 0x42cff1b4 /* if x<this bound, then result underflows */ - ASM_TYPE_DIRECTIVE(L(SP_RANGE), @object) + .type L(SP_RANGE), @object ASM_SIZE_DIRECTIVE(L(SP_RANGE)) .p2align 2 L(SP_INF_0): .long 0x7f800000 /* single precision Inf */ .long 0 /* single precision zero */ - ASM_TYPE_DIRECTIVE(L(SP_INF_0), @object) + .type L(SP_INF_0), @object ASM_SIZE_DIRECTIVE(L(SP_INF_0)) .section .rodata.cst4,"aM",@progbits,4 .p2align 2 L(SP_RS): /* single precision 2^23+2^22 */ .long 0x4b400000 - ASM_TYPE_DIRECTIVE(L(SP_RS), @object) + .type L(SP_RS), @object ASM_SIZE_DIRECTIVE(L(SP_RS)) .p2align 2 L(SP_SMALL): /* single precision small value 2^(-100) */ .long 0x0d800000 - ASM_TYPE_DIRECTIVE(L(SP_SMALL), @object) + .type L(SP_SMALL), @object ASM_SIZE_DIRECTIVE(L(SP_SMALL)) .p2align 2 L(SP_LARGE): /* single precision large value 2^100 */ .long 0x71800000 - ASM_TYPE_DIRECTIVE(L(SP_LARGE), @object) + .type L(SP_LARGE), @object ASM_SIZE_DIRECTIVE(L(SP_LARGE)) .p2align 2 L(SP_ONE): /* single precision 1.0 */ .long 0x3f800000 - ASM_TYPE_DIRECTIVE(L(SP_ONE), @object) + .type L(SP_ONE), @object ASM_SIZE_DIRECTIVE(L(SP_ONE)) strong_alias (__ieee754_expf, __expf_finite) diff --git a/sysdeps/x86_64/fpu/e_expl.S b/sysdeps/x86_64/fpu/e_expl.S index 1c37c86f7f..a919780390 100644 --- a/sysdeps/x86_64/fpu/e_expl.S +++ b/sysdeps/x86_64/fpu/e_expl.S @@ -42,26 +42,26 @@ .p2align 4 #ifdef USE_AS_EXP10L - ASM_TYPE_DIRECTIVE(c0,@object) + .type c0,@object c0: .byte 0, 0, 0, 0, 0, 0, 0x9a, 0xd4, 0x00, 0x40 .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(c0) - ASM_TYPE_DIRECTIVE(c1,@object) + .type c1,@object c1: .byte 0x58, 0x92, 0xfc, 0x15, 0x37, 0x9a, 0x97, 0xf0, 0xef, 0x3f .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(c1) #else - ASM_TYPE_DIRECTIVE(c0,@object) + .type c0,@object c0: .byte 0, 0, 0, 0, 0, 0, 0xaa, 0xb8, 0xff, 0x3f .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(c0) - ASM_TYPE_DIRECTIVE(c1,@object) + .type c1,@object c1: .byte 0x20, 0xfa, 0xee, 0xc2, 0x5f, 0x70, 0xa5, 0xec, 0xed, 0x3f .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(c1) #endif #ifndef USE_AS_EXPM1L - ASM_TYPE_DIRECTIVE(csat,@object) + .type csat,@object csat: .byte 0, 0, 0, 0, 0, 0, 0, 0x80, 0x0e, 0x40 .byte 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(csat) diff --git a/sysdeps/x86_64/fpu/e_log10l.S b/sysdeps/x86_64/fpu/e_log10l.S index ebc809e831..6c07024c19 100644 --- a/sysdeps/x86_64/fpu/e_log10l.S +++ b/sysdeps/x86_64/fpu/e_log10l.S @@ -13,13 +13,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/x86_64/fpu/e_log2l.S b/sysdeps/x86_64/fpu/e_log2l.S index 140b93d101..956489fc3e 100644 --- a/sysdeps/x86_64/fpu/e_log2l.S +++ b/sysdeps/x86_64/fpu/e_log2l.S @@ -12,13 +12,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/x86_64/fpu/e_logl.S b/sysdeps/x86_64/fpu/e_logl.S index 8876dc2189..a8e31084ba 100644 --- a/sysdeps/x86_64/fpu/e_logl.S +++ b/sysdeps/x86_64/fpu/e_logl.S @@ -12,13 +12,13 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) /* It is not important that this constant is precise. It is only a value which is known to be on the safe side for using the fyl2xp1 instruction. */ - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) diff --git a/sysdeps/x86_64/fpu/e_powl.S b/sysdeps/x86_64/fpu/e_powl.S index 10ede22648..4fe23c06af 100644 --- a/sysdeps/x86_64/fpu/e_powl.S +++ b/sysdeps/x86_64/fpu/e_powl.S @@ -23,34 +23,34 @@ .section .rodata.cst8,"aM",@progbits,8 .p2align 3 - ASM_TYPE_DIRECTIVE(one,@object) + .type one,@object one: .double 1.0 ASM_SIZE_DIRECTIVE(one) - ASM_TYPE_DIRECTIVE(limit,@object) + .type limit,@object limit: .double 0.29 ASM_SIZE_DIRECTIVE(limit) - ASM_TYPE_DIRECTIVE(p63,@object) + .type p63,@object p63: .byte 0, 0, 0, 0, 0, 0, 0xe0, 0x43 ASM_SIZE_DIRECTIVE(p63) - ASM_TYPE_DIRECTIVE(p64,@object) + .type p64,@object p64: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x43 ASM_SIZE_DIRECTIVE(p64) - ASM_TYPE_DIRECTIVE(p78,@object) + .type p78,@object p78: .byte 0, 0, 0, 0, 0, 0, 0xd0, 0x44 ASM_SIZE_DIRECTIVE(p78) .section .rodata.cst16,"aM",@progbits,16 .p2align 3 - ASM_TYPE_DIRECTIVE(infinity,@object) + .type infinity,@object inf_zero: infinity: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x7f ASM_SIZE_DIRECTIVE(infinity) - ASM_TYPE_DIRECTIVE(zero,@object) + .type zero,@object zero: .double 0.0 ASM_SIZE_DIRECTIVE(zero) - ASM_TYPE_DIRECTIVE(minf_mzero,@object) + .type minf_mzero,@object minf_mzero: minfinity: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0xff diff --git a/sysdeps/x86_64/fpu/e_scalbl.S b/sysdeps/x86_64/fpu/e_scalbl.S index 8394310c97..c422d53b1c 100644 --- a/sysdeps/x86_64/fpu/e_scalbl.S +++ b/sysdeps/x86_64/fpu/e_scalbl.S @@ -13,7 +13,7 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(zero_nan,@object) + .type zero_nan,@object zero_nan: .double 0.0 nan: .byte 0, 0, 0, 0, 0, 0, 0xff, 0x7f diff --git a/sysdeps/x86_64/fpu/s_copysign.S b/sysdeps/x86_64/fpu/s_copysign.S index d96c3bd959..07ca075843 100644 --- a/sysdeps/x86_64/fpu/s_copysign.S +++ b/sysdeps/x86_64/fpu/s_copysign.S @@ -22,12 +22,12 @@ .section .rodata.cst16,"aM",@progbits,16 .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(signmask,@object) + .type signmask,@object signmask: .byte 0, 0, 0, 0, 0, 0, 0, 0x80 .byte 0, 0, 0, 0, 0, 0, 0, 0 ASM_SIZE_DIRECTIVE(signmask) - ASM_TYPE_DIRECTIVE(othermask,@object) + .type othermask,@object othermask: .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f .byte 0, 0, 0, 0, 0, 0, 0, 0 diff --git a/sysdeps/x86_64/fpu/s_copysignf.S b/sysdeps/x86_64/fpu/s_copysignf.S index 9dd3101c25..99c16e080e 100644 --- a/sysdeps/x86_64/fpu/s_copysignf.S +++ b/sysdeps/x86_64/fpu/s_copysignf.S @@ -22,7 +22,7 @@ .section .rodata .align ALIGNARG(4) - ASM_TYPE_DIRECTIVE(mask,@object) + .type mask,@object mask: .byte 0xff, 0xff, 0xff, 0x7f ASM_SIZE_DIRECTIVE(mask) diff --git a/sysdeps/x86_64/strtok.S b/sysdeps/x86_64/strtok.S index fe4a9475b3..4028a47f24 100644 --- a/sysdeps/x86_64/strtok.S +++ b/sysdeps/x86_64/strtok.S @@ -44,7 +44,7 @@ #else .bss .local save_ptr - ASM_TYPE_DIRECTIVE (save_ptr, @object) + .type save_ptr, @object .size save_ptr, LP_SIZE save_ptr: .space LP_SIZE diff --git a/sysdeps/x86_64/sysdep.h b/sysdeps/x86_64/sysdep.h index 258781d096..41c3eb2d31 100644 --- a/sysdeps/x86_64/sysdep.h +++ b/sysdeps/x86_64/sysdep.h @@ -27,15 +27,13 @@ /* ELF uses byte-counts for .align, most others use log2 of count of bytes. */ #define ALIGNARG(log2) 1<<log2 -/* For ELF we need the `.type' directive to make shared libs work right. */ -#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg; #define ASM_SIZE_DIRECTIVE(name) .size name,.-name; /* Define an entry point visible from C. */ #define ENTRY(name) \ - .globl C_SYMBOL_NAME(name); \ - ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \ + .globl C_SYMBOL_NAME(name); \ + .type C_SYMBOL_NAME(name),@function; \ .align ALIGNARG(4); \ C_LABEL(name) \ cfi_startproc; \ |