This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: [PATCH] PowerPC64 port part 4 of 7
> Date: Mon, 19 Aug 2002 14:38:34 -0500
> From: Tom Gall <tom_gall@vnet.ibm.com>
> The memset patch should have been in a month ago as it was posted to the
> libc-alpha list early in July! That fixes a problem which has been a constant
> thorn in the PPC backside for a LOOOOOOONNNNNNNGGGGGGGG time.
>
> Any particular reason why that wasn't accepted?
Lack of time to review the patch, and lower priority for reviewing
this patch.
The patch had lower priority because:
- It isn't going to be accepted as-is. Patches that can be accepted
get higher priority because they take less time to review and
contribute more to ongoing development.
- It was posted with an ibm.com address without a note as to the
copyright status of the patch. I understand that patches from IBM
need to go through IBM's legal review process before they can be
assigned and therefore accepted.
However, now that you mention it, here are some comments.
1.
+ .section ".sdata","aw"
is wrong, it fills up the user's .sdata section (when linking
statically), use .data instead;
2.
+ /* Establishes GOT addressability so we can load
__cache_line_size
+ from static. This value was set from the aux vector during
startup. */
+ bl _GLOBAL_OFFSET_TABLE_@local-4
+ mflr rGOT
+ lwz rGOT,__cache_line_size@got(rGOT)
+ lwz rCLS,0(rGOT)
+ mtlr rTMP
doesn't handle the -fno-pic case, plus it fills the user's .got
section (when linking statically).
3. Formatting, see Roland's comments on the more recent patches.
4. Can you explain
+ dcbt 0,rMEMP
more? I think it should probably be 'dcbtst'.
5. This chunk is not C code; could use an explanation; and contains a
Mysterious Whitespace Change.
***************
*** 75,80 ****
auxvec = ubp_ev;
while (*(char *__unbounded *__unbounded) auxvec != NULL)
! ++auxvec;
! ++auxvec;
#ifndef SHARED
_dl_aux_init ((ElfW(auxv_t) *) auxvec);
--- 97,103 ----
auxvec = ubp_ev;
while (*(char *__unbounded *__unbounded) auxvec != NULL)
! ++(char**)auxvec;
! ++(char**)auxvec;
!
#ifndef SHARED
_dl_aux_init ((ElfW(auxv_t) *) auxvec);
--
- Geoffrey Keating <geoffk@geoffk.org> <geoffk@redhat.com>