📄 pt-initfini-sh.patch
字号:
--- glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/sh/pt-initfini.c.old Wed May 28 09:29:55 2003+++ glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/sh/pt-initfini.c Wed May 28 09:30:11 2003@@ -36,134 +36,134 @@ * crtn.s puts the corresponding function epilogues in the .init and .fini sections. */ -__asm__ ("--#include \"defs.h\"-#define SHARED--/*@HEADER_ENDS*/--/*@TESTS_BEGIN*/--/*@TESTS_END*/--/*@_init_PROLOG_BEGINS*/- .section .init- .align 5- .global _init- .type _init,@function-_init:- mov.l r12,@-r15- mov.l r14,@-r15- sts.l pr,@-r15-#ifdef SHARED- mova .L22,r0- mov.l .L22,r12- add r0,r12- mova .L24,r0- mov.l .L24,r1- add r0,r1- jsr @r1- nop- mova .L23,r0- mov.l .L23,r1- add r0,r1-#else- mov.l .L24,r1- jsr @r1- nop- mov.l .L23,r1-#endif- jsr @r1- mov r15,r14- bra 1f- nop- .align 2-#ifdef SHARED-.L22:- .long _GLOBAL_OFFSET_TABLE_-.L23:- .long __gmon_start__@PLT-.L24:- .long __pthread_initialize_minimal@PLT-#else-.L23:- .long __gmon_start__-.L24:- .long __pthread_initialize_minimal-#endif- .data- .global __fpscr_values-__fpscr_values:- .long 0- .long 0x80000- .previous-1:- ALIGN- END_INIT-- -/*@_init_PROLOG_ENDS*/--/*@_init_EPILOG_BEGINS*/- .section .init- mov r14,r15- lds.l @r15+,pr- mov.l @r15+,r14- rts - mov.l @r15+,r12- END_INIT- .section .text- .align 5- .weak __gmon_start__- .type __gmon_start__,@function-__gmon_start__:- mov.l r14,@-r15- mov r15,r14- mov r14,r15- rts - mov.l @r15+,r14- -/*@_init_EPILOG_ENDS*/--/*@_fini_PROLOG_BEGINS*/- .section .fini- .align 5- .global _fini- .type _fini,@function-_fini:- mov.l r12,@-r15- mov.l r14,@-r15- sts.l pr,@-r15-#ifdef SHARED- mova .L27,r0- mov.l .L27,r12- add r0,r12-#endif- mov r15,r14- ALIGN- END_FINI-#ifdef SHARED- bra 1f- nop- .align 2-.L27:- .long _GLOBAL_OFFSET_TABLE_-#endif-1:-/*@_fini_PROLOG_ENDS*/--/*@_fini_EPILOG_BEGINS*/- .section .fini- mov r14,r15- lds.l @r15+,pr- mov.l @r15+,r14- rts - mov.l @r15+,r12-- END_FINI- -/*@_fini_EPILOG_ENDS*/--/*@TRAILER_BEGINS*/+__asm__ ("\n\+\n\+#include \"defs.h\"\n\+#define SHARED\n\+\n\+/*@HEADER_ENDS*/\n\+\n\+/*@TESTS_BEGIN*/\n\+\n\+/*@TESTS_END*/\n\+\n\+/*@_init_PROLOG_BEGINS*/\n\+ .section .init\n\+ .align 5\n\+ .global _init\n\+ .type _init,@function\n\+_init:\n\+ mov.l r12,@-r15\n\+ mov.l r14,@-r15\n\+ sts.l pr,@-r15\n\+#ifdef SHARED\n\+ mova .L22,r0\n\+ mov.l .L22,r12\n\+ add r0,r12\n\+ mova .L24,r0\n\+ mov.l .L24,r1\n\+ add r0,r1\n\+ jsr @r1\n\+ nop\n\+ mova .L23,r0\n\+ mov.l .L23,r1\n\+ add r0,r1\n\+#else\n\+ mov.l .L24,r1\n\+ jsr @r1\n\+ nop\n\+ mov.l .L23,r1\n\+#endif\n\+ jsr @r1\n\+ mov r15,r14\n\+ bra 1f\n\+ nop\n\+ .align 2\n\+#ifdef SHARED\n\+.L22:\n\+ .long _GLOBAL_OFFSET_TABLE_\n\+.L23:\n\+ .long __gmon_start__@PLT\n\+.L24:\n\+ .long __pthread_initialize_minimal@PLT\n\+#else\n\+.L23:\n\+ .long __gmon_start__\n\+.L24:\n\+ .long __pthread_initialize_minimal\n\+#endif\n\+ .data\n\+ .global __fpscr_values\n\+__fpscr_values:\n\+ .long 0\n\+ .long 0x80000\n\+ .previous\n\+1:\n\+ ALIGN\n\+ END_INIT\n\+\n\+ \n\+/*@_init_PROLOG_ENDS*/\n\+\n\+/*@_init_EPILOG_BEGINS*/\n\+ .section .init\n\+ mov r14,r15\n\+ lds.l @r15+,pr\n\+ mov.l @r15+,r14\n\+ rts \n\+ mov.l @r15+,r12\n\+ END_INIT\n\+ .section .text\n\+ .align 5\n\+ .weak __gmon_start__\n\+ .type __gmon_start__,@function\n\+__gmon_start__:\n\+ mov.l r14,@-r15\n\+ mov r15,r14\n\+ mov r14,r15\n\+ rts \n\+ mov.l @r15+,r14\n\+ \n\+/*@_init_EPILOG_ENDS*/\n\+\n\+/*@_fini_PROLOG_BEGINS*/\n\+ .section .fini\n\+ .align 5\n\+ .global _fini\n\+ .type _fini,@function\n\+_fini:\n\+ mov.l r12,@-r15\n\+ mov.l r14,@-r15\n\+ sts.l pr,@-r15\n\+#ifdef SHARED\n\+ mova .L27,r0\n\+ mov.l .L27,r12\n\+ add r0,r12\n\+#endif\n\+ mov r15,r14\n\+ ALIGN\n\+ END_FINI\n\+#ifdef SHARED\n\+ bra 1f\n\+ nop\n\+ .align 2\n\+.L27:\n\+ .long _GLOBAL_OFFSET_TABLE_\n\+#endif\n\+1:\n\+/*@_fini_PROLOG_ENDS*/\n\+\n\+/*@_fini_EPILOG_BEGINS*/\n\+ .section .fini\n\+ mov r14,r15\n\+ lds.l @r15+,pr\n\+ mov.l @r15+,r14\n\+ rts \n\+ mov.l @r15+,r12\n\+\n\+ END_FINI\n\+ \n\+/*@_fini_EPILOG_ENDS*/\n\+\n\+/*@TRAILER_BEGINS*/\n\ ");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -