optimization/7429: SEGV in linuxthreads with gcc 3.1.1 and omit-fp or -O3
Thorsten@meinl.bnv-bamberg.de
Thorsten@meinl.bnv-bamberg.de
Mon Jul 29 04:36:00 GMT 2002
>Number: 7429
>Category: optimization
>Synopsis: SEGV in linuxthreads with gcc 3.1.1 and omit-fp or -O3
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Jul 29 03:36:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: Thorsten@meinl.bnv-bamberg.de
>Release: gcc 3.1.1
>Organization:
>Environment:
Linux 2.4.18, glibc 2.2.5, gcc 3.1.1, Athlon XP 1800+
>Description:
When compiling linuxthreads with omit-fp or optimization level > -O2 applications linked against it segfault, e.g. ls from fileutils. I tracked down the error place to __errno_location (it happens for example when you call opendir). When you do not link against it everything works fine with all optimization levels. Also statical linkage works.
Also the test ex1 for linuxthreads does not work (but this may be another problem).
>How-To-Repeat:
Compile glibc-2.2.5 + linuxthreads with "-O3 -fomit-frame-pointer -march=athlon -pipe" and afterwards fileutils. ls will the segfault in __errno_location.
Or use opendir in any program and link it dynamically against pthreads.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the Gcc-bugs
mailing list