ICE with 4.6 when using neon intrinsics

Reported by Ken Werner on 2012-06-14
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Linaro Android
High
Bernhard Rosenkraenzer
Linaro GCC
High
Ramana Radhakrishnan

Bug Description

The current Linaro GCC 4.6 gets an ICE when compiling Qt in case neon support is enabled:
  gcc -fpreprocessed -c testcase.i -march=armv7-a -mfloat-abi=hard -mfpu=neon -O1
  testcase.i: In function 'foo':
  testcase.i:7:29: internal compiler error: in expand_expr_real_1, at expr.c:8936
  Please submit a full bug report,
  with preprocessed source if appropriate.
  See <http://gcc.gnu.org/bugs.html> for instructions.

Here's a reduced testcase (thanks Uli):
  $ cat testcase.i
  void foo (void)
  {
    __builtin_neon_hi buffer[2048];
    int f;

    for (f = 0; f < 128; f += 8)
      __builtin_neon_vst1v8hi (&buffer[f], (__builtin_neon_hi __attribute__ ((__vector_size__ (16)))) {0});
  }

Related branches

Ken Werner (kwerner) wrote :

It looks like the issue has been introduced by:
http://bazaar.launchpad.net/~linaro-toolchain-dev/gcc-linaro/4.6/revision/106893
which is a fix for: bug #990530

Linaro GCC 4.7 is not affected.

Ken Werner (kwerner) on 2012-06-14
description: updated
Ramana Radhakrishnan (ramana) wrote :

I have been able to reproduce this for Linaro GCC 4.6 and there is something going on in the way in which the backend expands these builtins.

Ramana

Changed in gcc-linaro:
importance: Undecided → High
assignee: nobody → Ramana Radhakrishnan (ramana)
status: New → Triaged
Changed in gcc-linaro:
status: Triaged → In Progress
milestone: none → 4.6-2012.07
Changed in linaro-android:
assignee: nobody → Bernhard Rosenkraenzer (berolinux)
status: New → Triaged
Ramana Radhakrishnan (ramana) wrote :

Bero can you now try tip of tree.

Ramana

Changed in gcc-linaro:
status: In Progress → Fix Committed
Changed in gcc-linaro:
status: Fix Committed → Fix Released
Paul Larson (pwlars) on 2012-07-12
Changed in linaro-android:
milestone: none → 12.07
Zach Pfeffer (pfefferz) on 2012-07-24
Changed in linaro-android:
status: Triaged → Fix Committed
status: Fix Committed → Triaged
milestone: 12.07 → 12.08
importance: Undecided → High
Changed in linaro-android:
milestone: 12.08 → 12.07
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers