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
