aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-06-16 05:29:24 +0000
committerUlrich Drepper <drepper@redhat.com>2003-06-16 05:29:24 +0000
commit452aea842fc43f2652ec352ab71e855e69057e5d (patch)
tree8f9b46645e4d3c1f1df228b9c9b5cc4618aba5b9
parent7a1147946ecd5fe962e2959afe69c25c7a553672 (diff)
downloadglibc-452aea842fc43f2652ec352ab71e855e69057e5d.zip
glibc-452aea842fc43f2652ec352ab71e855e69057e5d.tar.gz
glibc-452aea842fc43f2652ec352ab71e855e69057e5d.tar.bz2
Update.
* sysdeps/unix/sysv/linux/i386/dl-sysdep.h (DL_SYSINFO_IMPLEMENTATION): Use CFI opcodes. * sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h (DL_SYSINFO_IMPLEMENTATION): Likewise.
-rw-r--r--nptl/ChangeLog5
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h35
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h2
3 files changed, 11 insertions, 31 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index 47a0dd8..0b22326 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,5 +1,10 @@
2003-06-15 Ulrich Drepper <drepper@redhat.com>
+ * sysdeps/unix/sysv/linux/i386/dl-sysdep.h
+ (DL_SYSINFO_IMPLEMENTATION): Use CFI opcodes.
+ * sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
+ (DL_SYSINFO_IMPLEMENTATION): Likewise.
+
* pthreadP.h (LIBC_CANCEL_ASYNC): Also define for librt.
(LIBC_CANCEL_RESET): Likewise.
Declare __librt_enable_asynccancel and __librt_disable_asynccancel.
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h b/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h
index 5d6d7fb..109ffd1 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h
+++ b/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h
@@ -51,41 +51,14 @@ extern void _dl_sysinfo_int80 (void) attribute_hidden;
# define DL_SYSINFO_IMPLEMENTATION \
asm (".text\n\t" \
".type _dl_sysinfo_int80,@function\n\t" \
- ".hidden _dl_sysinfo_int80\n" \
+ ".hidden _dl_sysinfo_int80\n\t" \
+ CFI_STARTPROC "\n" \
"_dl_sysinfo_int80:\n\t" \
"int $0x80;\n\t" \
"ret;\n\t" \
- ".LEND_dl_sysinfo_int80\n\t" \
+ CFI_ENDPROC "\n" \
".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \
- ".previous;\n\t" \
- ".section .eh_frame,\"a\",@progbits\n" \
- ".LSTARTFRAMEDLSI:\n\t" \
- ".long .LENDCIEDLSI-.LSTARTCIEDLSI\n" \
- ".LSTARTCIEDLSI:\n\t" \
- ".long 0\n\t" /* CIE ID */ \
- ".byte 1\n\t" /* Version number */ \
- ".string \"zR\"\n\t" /* NUL-terminated augmentation string */ \
- ".uleb128 1\n\t" /* Code alignment factor */ \
- ".sleb128 -4\n\t" /* Data alignment factor */ \
- ".byte 8\n\t" /* Return address register column */ \
- ".uleb128 1\n\t" /* Augmentation value length */ \
- ".byte 0x1b\n\t" /* DW_EH_PE_pcrel|DW_EH_PE_sdata4. */ \
- ".byte 0x0c\n\t" /* DW_CFA_def_cfa */ \
- ".uleb128 4\n\t" \
- ".uleb128 4\n\t" \
- ".byte 0x88\n\t" /* DW_CFA_offset, column 0x8 */ \
- ".uleb128 1\n\t" \
- ".align 4\n" \
- ".LENDCIEDLSI:\n\t" \
- ".long .LENDFDEDLSI-.LSTARTFDEDLSI\n" /* Length FDE */ \
- ".LSTARTFDEDLSI:\n\t" \
- ".long .LSTARTFDEDLSI-.LSTARTFRAMEDLSI\n\t" /* CIE pointer */ \
- ".long _dl_sysinfo_int80-.\n\t" /* PC-relative start address */ \
- ".long .LEND_dl_sysinfo_int80-_dl_sysinfo_int80\n\t" \
- ".uleb128 0\n\t" \
- ".align 4\n" \
- ".LENDFDEDLSI:\n\t" \
- ".previous");
+ ".previous;");
#endif
#endif /* dl-sysdep.h */
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h b/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
index b880238..b777131 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
@@ -49,9 +49,11 @@ extern void _dl_sysinfo_int80 (void) attribute_hidden;
asm (".text\n\t" \
".type _dl_sysinfo_int80,@function\n\t" \
".hidden _dl_sysinfo_int80\n" \
+ CFI_STARTPROC "\n" \
"_dl_sysinfo_int80:\n\t" \
"int $0x80;\n\t" \
"ret;\n\t" \
+ CFI_ENDPROC "\n" \
".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \
".previous");
#endif