glibc 2.3.5 and gcc-4.0 4.0.3-6

Aurelien Jarno aurelien at aurel32.net
Thu Jan 12 17:08:48 UTC 2006


Aurelien Jarno a écrit :
> Petr Salinger a écrit :
> 
>>> Actually the problem is that all statically linked binaries segfault at
>>> runtime. During the build process, it is the case of elf/sln, but other
>>> binaries like ldconfig are also affected.
>>
>>
>>
>> I would bet on this:
>>
>>
>>>   * Configure --with-tune=i686 on ix86 architectures (on Ubuntu with
>>>     -mtune=pentium4). Remove the cpu-default-* patches..
>>
>>
>>
>> The defaults are a little bit strange:
>>
>> gcc-3.3    (3.3.6-12+kbsd)    -march=i486 -mtune=i686
>> gcc-3.4 (3.4.5-1)          -march=i386 -mtune=i486
>> gcc-4.0    (4.0.2-4+kbsd)    -march=i386 -mtune=i486
>> gcc-4.0 (4.0.2-6)    -march=i386 -mtune=i686        
>>
>> IMHO, the right one is
>>             -march=i486 -mtune=i686
>>
> Well that's strange yes.
> 
> Meanwhile, I made some progress on this bug (even if I have no time...). 
> It seems that the problem comes from brk.o, as using the one generated 
> with 4.0.2-6 in the tree built with 4.0.2-5 reproduces the problem. The 
> reverse is also true, ie copying brk.o built with 4.0.2-5 to the tree 
> built with 4.0.2-6 fixes the problem.
> 
You're right, the problem comes from the optimisation. Building brk.c 
with -mtune=i486 fixes the problem, both for -march=i386 and 
-march=i486. Now the question is about the C code being correct or not...

-- 
   .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
  : :' :  Debian developer           | Electrical Engineer
  `. `'   aurel32 at debian.org         | aurelien at aurel32.net
    `-    people.debian.org/~aurel32 | www.aurel32.net



More information about the Glibc-bsd-devel mailing list