From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20887 invoked by alias); 5 Jun 2008 21:41:14 -0000 Received: (qmail 19954 invoked by uid 48); 5 Jun 2008 21:40:26 -0000 Date: Thu, 05 Jun 2008 21:41:00 -0000 Subject: [Bug middle-end/36445] New: [4.4 Regression] ICE in expand_expr_real_1 with -O1 with vector registers X-Bugzilla-Reason: CC Message-ID: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "pinskia at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2008-06/txt/msg00225.txt.bz2 Another fallout due to the using VCE more patch: #define vector __attribute__((vector_size(16) )) struct struct1 { union { float a[3]; } vmx; struct struct2 { struct2(const struct2& r) {} } w; } __attribute__((aligned(16))); struct struct3 { vector float vmx; operator const struct1& () const{ return *reinterpret_cast(this); } }; struct3 func3( struct3 V1); struct3 func2( void ); void func1( ) { struct1 vVec = func2() ; func3 ( (struct3&)vVec ); } --- CUT --- This time you need to compile with -O2 -maltivec and it does not happen under x86 for some reason. -- Summary: [4.4 Regression] ICE in expand_expr_real_1 with -O1 with vector registers Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pinskia at gcc dot gnu dot org GCC target triplet: powerpc*-*-* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36445