[Bug target/10984] New: x86/sse2 ICEs on vector intrinsics (gcc 3.3 / 3.3.1)

kf@iki.fi gcc-bugzilla@gcc.gnu.org
Mon May 26 20:28:00 GMT 2003


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10984

           Summary: x86/sse2 ICEs on vector intrinsics (gcc 3.3 / 3.3.1)
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: kf@iki.fi
                CC: gcc-bugs@gcc.gnu.org
  GCC host triplet: RH Linux 2.4.18-27.8.0, Pentium4

The following code causes ICE:

# 1 "foo.C"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "foo.C"
typedef int v2di __attribute__ ((mode(V2DI)));

int main(void)
{
        v2di a;

        a = __builtin_ia32_psllqi128( a, 1 );

        return 0;
}

> gcc -msse2 foo.C
foo.C: In function `int main()':
foo.C:7: internal compiler error: in ix86_expand_binop_builtin, at 
   config/i386/i386.c:13029
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

> gcc -v
Reading specs from
/staff/kfredrik/local/gcc-snapshot/lib/gcc-lib/i686-pc-linux-gnu/3.3.1/specs
Configured with: ../gcc-20030519/configure
--prefix=/staff/kfredrik/local/gcc-snapshot --enable-languages=c,c++
Thread model: posix
gcc version 3.3.1 20030519 (prerelease)

The same thing happens with all optimization levels. An easy fix is to put the 
constant 1 in a variable:

        v2di    a; 
        int     i = 1;

        a = __builtin_ia32_psllqi128( a, i );

This "fixes" the bug.



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the Gcc-bugs mailing list