This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: [PATCH] ppc64 libc-start changes
- From: "Steve Munroe" <sjmunroe at us dot ibm dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: aj at suse dot de, geoffk at geoffk dot org, libc-alpha at sources dot redhat dot com, roland at frob dot com
- Date: Fri, 20 Sep 2002 15:50:08 -0500
- Subject: Re: [PATCH] ppc64 libc-start changes
> On Fri, Sep 20, 2002 at 03:32:09PM -0500, Steve Munroe wrote:
> > 2002-09-20 Steven Munroe <sjmunroe@us.ibm.com>
> >
> > * sysdeps/powerpc/elf/libc-start.c: Stack references must be
> > double word aligned for powerpc64. Remove unnecessary
ElfW(auxv_t)
> > casts.
> >
> > - argc = *(int *__unbounded) stack_on_entry;
> > + /* 32/64-bit agnostic load from stack */
> > + temp_argc = *(long *__unbounded) stack_on_entry;
> > + argc = (int)temp_argc;
>
> Any reason why argc = *(long *__unbounded) stack_on_entry;
> doesn't work?
Because argc is an int and sizeof(int) != sizeof(long) and powerpc is
bigendian (I need the lower 32-bits of a 64-bit dword).
I suppose argc = (int)(*(long *__unbounded) stack_on_entry); might work.
Is it really that important?