diff options
Diffstat (limited to 'nptl')
-rw-r--r-- | nptl/ChangeLog | 5 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h | 35 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h | 2 |
3 files changed, 11 insertions, 31 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 47a0dd8ff3..0b22326e6e 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 5d6d7fb9ff..109ffd1cf6 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 b880238a93..b7771318a6 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 |