This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Set __libc_stack_end earlier on all arches, export back at GLIBC_2.1


>>>>> On Wed, 24 Sep 2003 15:47:04 +0200, Jakub Jelinek <jakub@redhat.com> said:

  Jakub> Also, for ia64, the __libc_stack_end setting code in
  Jakub> RTLD_START should be removed, but removing of that requires
  Jakub> rebundling the whole assembly.

You mean something along these lines?  (In my opinion, the explicit
bundling should be removed in such assembly code.  It only hurts
readability.)

	--david

Index: sysdeps/ia64/dl-machine.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/ia64/dl-machine.h,v
retrieving revision 1.28
diff -u -r1.28 dl-machine.h
--- sysdeps/ia64/dl-machine.h	18 Aug 2003 22:04:56 -0000	1.28
+++ sysdeps/ia64/dl-machine.h	24 Sep 2003 18:57:03 -0000
@@ -318,21 +318,14 @@
 "	 .save ar.pfs, r32\n"						      \
 "	 .body\n"							      \
 "	{ .mii\n"							      \
-"	  /* Save the pointer to the user entry point fptr in loc2.  */\n"    \
-"	  mov loc2 = ret0\n"						      \
-"	  /* Store the highest stack address.  */\n"			      \
-"	  addl r2 = @ltoff(__libc_stack_end#), gp\n"			      \
 "	  addl r3 = @gprel(_dl_skip_args), gp\n"			      \
-"	  ;;\n"								      \
-"	}\n"								      \
-"	{ .mmi\n"							      \
-"	  ld8 r2 = [r2]\n"						      \
-"	  ld4 r3 = [r3]\n"						      \
 "	  adds r11 = 24, sp	/* Load the address of argv. */\n"	      \
+"	  /* Save the pointer to the user entry point fptr in loc2.  */\n"    \
+"	  mov loc2 = ret0\n"						      \
 "	  ;;\n"								      \
 "	}\n"								      \
 "	{ .mii\n"							      \
-"	  st8 [r2] = sp\n"						      \
+"	  ld4 r3 = [r3]\n"						      \
 "	  adds r10 = 16, sp	/* Load the address of argc. */\n"	      \
 "	  mov out2 = r11\n"						      \
 "	  ;;\n"								      \
@@ -401,7 +394,7 @@
 "	  br.call.sptk.many b0 = _dl_init_internal#\n"			      \
 "	  ;;\n"								      \
 "	}\n"								      \
-"	/* Pass our finializer function to the user,\n"			      \
+"	/* Pass our finalizer function to the user,\n"			      \
 "	   and jump to the user's entry point.  */\n"			      \
 "	{ .mmi\n"							      \
 "	  ld8 r3 = [loc2], 8\n"						      \


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]