Update of /cvsroot/linux-vax/glibc/sysdeps/vax
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6664
Modified Files:
dl-machine.h
Log Message:
cleanup and pass _dl_fini to the main
Index: dl-machine.h
===================================================================
RCS file: /cvsroot/linux-vax/glibc/sysdeps/vax/dl-machine.h,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- dl-machine.h 29 Feb 2004 05:04:55 -0000 1.12
+++ dl-machine.h 29 Feb 2004 07:44:26 -0000 1.13
@@ -130,8 +130,6 @@
We get here with the offset into the relocation table pushed on stack,
and the link map in MOF. */
-#if 1
-//"; Trampoline for " #fixup_name "
#define TRAMPOLINE_TEMPLATE(tramp_name, fixup_name) \
asm( ".text\n\
.globl " #tramp_name "\n\t \
@@ -158,27 +156,6 @@
");
-#if 0
-" #tramp_name ":
- push $r13
- push $r12
- push $r11
- push $r10
- push $r9
- push $srp
- move.d [$sp+6*4],$r11
- move $mof,$r10
- " CALL_FN (fixup_name) "
- move.d $r10,[$sp+6*4]
- pop $srp
- pop $r9
- pop $r10
- pop $r11
- pop $r12
- pop $r13
- jump [$sp+]
-#endif
-
#ifndef PROF
#define ELF_MACHINE_RUNTIME_TRAMPOLINE \
TRAMPOLINE_TEMPLATE (_dl_runtime_resolve, fixup) \
@@ -189,10 +166,7 @@
asm( ".globl _dl_runtime_profile\n" \
".set _dl_runtime_profile, _dl_runtime_resolve");
#endif
-#endif
-/* FIXME */
-//#define ELF_MACHINE_RUNTIME_TRAMPOLINE
/* Mask identifying addresses reserved for the user program,
where the dynamic linker should not map anything. */
#define ELF_MACHINE_USER_ADDRESS_MASK 0x80000000UL
@@ -225,6 +199,9 @@
addl2 %r2, %sp\n\
subl2 %r0, %r1
pushl %r1\n\
+ pushal _dl_loaded\n\
+ calls $4, _dl_init\n\
+ moval _dl_fini, %r0\n\
jmp (%r6)\n\
.size _dl_start_user, . - _dl_start_user\n \
.previous");
@@ -354,19 +331,6 @@
case R_VAX_16:
*(short *) reloc_addr = value;
break;
-#if 0
- case R_VAX_8_PCREL:
- *(char *) reloc_addr
- = value + reloc->r_addend - (Elf32_Addr) reloc_addr - 1;
- break;
- case R_VAX_16_PCREL:
- *(short *) reloc_addr
- = value + reloc->r_addend - (Elf32_Addr) reloc_addr - 2;
- break;
- case R_VAX_32_PCREL:
- *reloc_addr = value + reloc->r_addend - (Elf32_Addr) reloc_addr - 4;
- break;
-#endif
#endif
case R_VAX_NONE:
break;
|