GCC ICE on arm/xscale

Bug #721021 reported by Khem Raj on 2011-02-17
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linaro GCC
Fix Released
Chung-Lin Tang
Linaro GCC Tracking
Fix Released
Fix Released
gcc-4.5 (Ubuntu)

Bug Description

Attached testcase reproduces a gcc ICE when compiled with -O2 -mtune=xscale

If r99475 is reverted then the ICE goes away

Related branches

Khem Raj (khem-raj) wrote :
Chung-Lin Tang (cltang) wrote :

I cannot reproduce an ICE, on my machine the compiler goes into an infinite loop... :P

There's obviously something wrong though.
Khem, what version of GCC was the build compiler? Was this on i686 or x86_64?
(I'll see if I can reproduce this)

Khem Raj (khem-raj) wrote :

Yes exactly it runs for a while here too and eventually dumps the core.If I replace line arm.c:10117 in
  if (low_irq_latency || (arm_tune_xscale && count <= 2 && ! optimize_size))

if (low_irq_latency)

It starts to work again and compiles instantly

build is done on natty/x86_64 box. which has gcc 4.5.2

Chung-Lin Tang (cltang) wrote :

Found it, I think this is: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45177
Backport in progress.

Changed in gcc-linaro:
assignee: nobody → Chung-Lin Tang (cltang)
Khem Raj (khem-raj) wrote :

yes I verified that this patch indeed fixes the problem

Michael Hope (michaelh1) on 2011-02-28
Changed in gcc-linaro:
status: New → In Progress
importance: Undecided → Medium

Chung-Lin's has now been committed to Linaro GCC 4.5.

Changed in gcc-linaro:
milestone: none → 4.5-2011.03-0
status: In Progress → Fix Committed

This patch is backported from upstream.

Changed in gcc-linaro-tracking:
milestone: none → 4.6.0
status: New → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gcc-4.5 - 4.5.2-5ubuntu1

gcc-4.5 (4.5.2-5ubuntu1) natty; urgency=low

  * For the natty release, do not pass --as-needed by default to the linker.
    The --as-needed flag will be default again for the o-series.

gcc-4.5 (4.5.2-5) unstable; urgency=low

  * Update to SVN 20110305 (r170696) from the gcc-4_5-branch.
    - Fix PR target/43810, PR fortran/47886, PR tree-optimization/47615,
      PR middle-end/47639, PR tree-optimization/47890, PR libfortran/47830,
      PR tree-optimization/46723, PR target/45261, PR target/45808,
      PR c++/46159, PR c++/47904, PR fortran/47886, PR libstdc++/47433,
      PR target/42240, PR fortran/47878, PR libfortran/47694.
  * Update the Linaro support to the 4.5-2011.03-0 release.
    - Fix LP: #705689, LP: #695302, LP: #710652, LP: #710623, LP: #721021,
      LP: #721021, LP: #709453.

gcc-4.5 (4.5.2-4) unstable; urgency=low

  * Update to SVN 20110222 (r170382) from the gcc-4_5-branch.
    - Fix PR target/43653, PR fortran/47775, PR target/47840,
      PR libfortran/47830.

  [ Matthias Klose ]
  * Don't apply a patch twice.
  * Build libgcc_s with -fno-stack-protector, when not building from the
    Linaro branch.
  * Backport proposed fix for PR tree-optimization/46723 from the trunk.

  [ Steve Langasek ]
  * debian/control.m4: add missing Multi-Arch: same for libgcc4; make sure
    Multi-Arch: same doesn't get set for libmudflap when building an
    Architecture: all cross-compiler package.
  * debian/rules2: use $libdir for libiberty.a.
  * debian/patches/gcc-multiarch-*.diff: make sure we're using the same
    set_multiarch_path definition for all variants.

  [ Sebastian Andrzej Siewior ]
  * PR target/44364
  * Remove -many on powerpcspe (__SPE__)
  * Remove classic FPU opcodes from libgcc if target has no support for them
 -- Matthias Klose <email address hidden> Sun, 06 Mar 2011 12:22:47 +0100

Changed in gcc-4.5 (Ubuntu):
status: New → Fix Released
Michael Hope (michaelh1) on 2011-03-08
Changed in gcc-linaro:
status: Fix Committed → Fix Released
Changed in gcc-linaro-tracking:
status: Fix Committed → Fix Released
Changed in gcc:
importance: Unknown → Medium
status: Unknown → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

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