[PR39461] ICE compiling qt4-x11 on powerpc

Bug #342335 reported by Colin Watson on 2009-03-13
Affects Status Importance Assigned to Milestone
Fix Released
gcc-4.3 (Ubuntu)
qt4-x11 (Ubuntu)

Bug Description

Binary package hint: gcc-4.3

g++ ICEs when building qt4-x11 on powerpc. The complete build log is here:


I've reduced the ICE to a reasonably minimal test case (although there were still two #includes that would have taken rather more effort to pare down), and preprocessed source is attached to this bug.

$ gcc -v
Using built-in specs.
Target: powerpc-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.3.3-5ubuntu1' --with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3 --program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr --disable-softfloat --enable-secureplt --enable-targets=powerpc-linux,powerpc64-linux --with-cpu=default32 --with-long-double-128 --enable-checking=release --build=powerpc-linux-gnu --host=powerpc-linux-gnu --target=powerpc-linux-gnu
Thread model: posix
gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu1)

Command line that triggers the ICE with minimal test case:

$ g++ -c -g -pthread -O2 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -fPIC -I. -I../../include -I../../include/QtCore -o .obj/release-shared/qstring.o -save-temps tools/qstring-minimal.cpp
tools/qstring-minimal.cpp: In function 'int qFindString(const QChar*, int, int, const QChar*, int, Qt::CaseSensitivity)':
tools/qstring-minimal.cpp:56: internal compiler error: in output_460, at config/rs6000/rs6000.md:11495
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.3/README.Bugs> for instructions.

Colin Watson (cjwatson) wrote :
Matthias Klose (doko) wrote :

- work around available lowering optimization to -O1
- fixed in GCC-4.4

Changed in gcc-4.3:
importance: Undecided → Medium
status: New → Triaged
Colin Watson (cjwatson) wrote :

Using -O1 instead of -O2 does not reproduce this bug, but using -O1 -foptimize-sibling-calls instead of -O2 does.

On Fri, Mar 13, 2009 at 04:03:57PM -0000, Colin Watson wrote:
> Using -O1 instead of -O2 does not reproduce this bug, but using -O1
> -foptimize-sibling-calls instead of -O2 does.

Can we use -O2 -fno-optimize-sibling-calls? I'd prefer not to use -O1
(which would lose all the fortify protections) on this package.

Kees Cook
Ubuntu Security Team

Yes, -O2 -fno-optimize-sibling-calls works here. I'm just trying to figure out how to glue that into qmake.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qt4-x11 - 4.5.0-0ubuntu2

qt4-x11 (4.5.0-0ubuntu2) jaunty; urgency=low

  * kubuntu_09_powerpc_opts.patch: Build with
    -fno-optimize-sibling-calls on powerpc, until such time as we start
    using GCC 4.4 (LP: #342335).

 -- Colin Watson <email address hidden> Sat, 14 Mar 2009 13:33:52 +0000

Changed in qt4-x11:
status: New → Fix Released
Changed in gcc:
status: Unknown → New
Changed in gcc:
status: New → Invalid
Kees Cook (kees) on 2009-03-15
Changed in gcc:
status: Invalid → Unknown
Changed in gcc:
status: Unknown → In Progress
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gcc-4.3 - 4.3.3-5ubuntu4

gcc-4.3 (4.3.3-5ubuntu4) jaunty; urgency=low

  * Rebuild to fix dependencies on shared libs on lpia. LP: #343724.
  * Update to SVN 20090316 from the gcc-4_3-branch.
    - Fix PR fortran/39295, PR fortran/39292, PR c++/9634, PR c++/29469,
      PR c++/29607, PR target/39327.
    - Remove libjava-xulrunner-1.9, integrated upstream.
  * Fix PR target/39175, taken from the trunk. LP: #342335.
  * Update the spu cross compiler from the cell-gcc-4_3-branch 20090314.

 -- Matthias Klose <email address hidden> Mon, 16 Mar 2009 20:12:34 +0100

Changed in gcc-4.3:
status: Triaged → Fix Released
Changed in gcc:
status: In Progress → Fix Released
Changed in gcc:
importance: Unknown → Medium
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.