This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
target/9680: powerpc64 ICE for unrecog insn with vector_size attr
- From: janis187 at us dot ibm dot com
- To: gcc-gnats at gcc dot gnu dot org
- Date: 12 Feb 2003 23:26:56 -0000
- Subject: target/9680: powerpc64 ICE for unrecog insn with vector_size attr
- Reply-to: janis187 at us dot ibm dot com
>Number: 9680
>Category: target
>Synopsis: powerpc64 ICE for unrecog insn with vector_size attr
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: ice-on-legal-code
>Submitter-Id: net
>Arrival-Date: Wed Feb 12 23:36:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: Janis Johnson
>Release: 3.3 20030210 (prerelease)
>Organization:
>Environment:
powerpc64-linux; SUSE SLES8
>Description:
gcc.c-torture/compile/simd-5.c fails with an ICE for an
unrecognized instruction with mainline, 3.3-branch, and
3-2.branch for powerpc64-linux, either a cross compiler or
a native 64-bit compiler. Compiler output:
simd-5.c: In function `main':
simd-5.c:12: error: unrecognizable insn:
(insn 68 67 33 0 (nil) (set (subreg:DI (reg:V2SI 9 r9) 0)
(subreg:DI (mem:V2SI (plus:DI (reg/f:DI 31 r31)
(const_int 136 [0x88])) [0 S8 A8]) 0)) -1 (nil)
(nil))
simd-5.c:12: internal compiler error: in extract_insn, at recog.c:2175
Please submit a full bug report,
Full text of the test case:
#define vector64 __attribute__((vector_size(8)))
main(){
vector64 int c;
vector64 int a = {1, -1};
vector64 int b = {2, -2};
c = -a + b*b*(-1LL);
/* c is now {5, 3} */
printf("result is %llx\n", (long long)c);
}
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: