On Monday 12 November 2007 03:28, Paul Mackerras wrote:
>
> It's now used as the TLS pointer.  [...]

Thanks for the info.

After hours of frustratingly chasing undefined values around vast
nameless blocks of machine code, I discovered the large numbers of
uninitialised values are a result of having /lib/ld-2.6.1.so being 
almost completely devoid of symbol table info.

On ppc32, ld.so has its own strlen/strcmp/strchr functions, which do
strange things with carry bits that fool Memcheck.  (or something
that it can't handle - I can't remember).  

For glibc <= 2.5 V simply supplied its own non-optimised replacements
for these functions in ld.so, and used them.  That worked fine, but 
now fails because the strlen/strcmp/strchr symbols on ld.so are no
longer present.  Installing the debuginfo package provides that info,
so V's replacements kick in, and the problem goes away.

Result is that on ppc32-linux and ppc64-linux, for glibc 2.6 and later,
Valgrind will be unusable unless glibc-2.6-debuginfo.rpm is installed.

J

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Valgrind-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/valgrind-developers

Reply via email to