📄 sysdep-cancel-arm-1.2-1.6.patch
字号:
I haven't built glibc-2.3.2 for arm myself, buthttp://sources.redhat.com/ml/bug-glibc/2003-05/msg00076.html andhttp://www.linux.org.uk/pipermail/linux-arm/2003-November/006560.htmlgive me the distinct impression that you need the latest sysdep-cancel.h fromcvs.Retrieved withhttp://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h.diff?cvsroot=glibc&r1=text&tr1=1.2&r2=text&tr2=1.6&f=u===================================================================RCS file: /cvs/glibc/libc/linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h,vretrieving revision 1.2retrieving revision 1.6diff -u -r1.2 -r1.6--- libc/linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h 2003/01/12 09:14:25 1.2+++ libc/linuxthreads/sysdeps/unix/sysv/linux/arm/sysdep-cancel.h 2003/06/06 17:31:40 1.6@@ -24,6 +24,17 @@ #if !defined NOT_IN_libc || defined IS_IN_libpthread +/* We push lr onto the stack, so we have to use ldmib instead of ldmia+ to find the saved arguments. */+# ifdef PIC+# undef DOARGS_5+# undef DOARGS_6+# undef DOARGS_7+# define DOARGS_5 str r4, [sp, $-4]!; ldr r4, [sp, $8];+# define DOARGS_6 mov ip, sp; stmfd sp!, {r4, r5}; ldmib ip, {r4, r5};+# define DOARGS_7 mov ip, sp; stmfd sp!, {r4, r5, r6}; ldmib ip, {r4, r5, r6};+# endif+ # undef PSEUDO_RET # define PSEUDO_RET \ ldrcc pc, [sp], $4; \@@ -34,7 +45,7 @@ # define PSEUDO(name, syscall_name, args) \ .section ".text"; \ PSEUDO_PROLOGUE; \- ENTRY (name) \+ ENTRY (name); \ SINGLE_THREAD_P_INT; \ bne .Lpseudo_cancel; \ DO_CALL (syscall_name, args); \@@ -110,7 +121,7 @@ ldr reg, 2b; \ 3: \ add ip, pc, ip; \- ldr ip, [ip, lr]; \+ ldr ip, [ip, reg]; \ teq ip, #0; # define SINGLE_THREAD_P_INT \ str lr, [sp, $-4]!; \
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -