This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/19858] New: ICE on simple SSE code (works in gcc 3.3)
- From: "gcc-bugzilla at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 9 Feb 2005 17:11:21 -0000
- Subject: [Bug c/19858] New: ICE on simple SSE code (works in gcc 3.3)
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
The code below, when compiled by "gcc -O3 -msse", gives the following
error (same code compiles fine in gcc 3.3.5):
bug2.c: In function 'main':
bug2.c:17: error: Invalid reference prefix.
&fooD.1292;
bug2.c:17: internal compiler error: verify_stmts failed.
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
Environment:
System: Linux fftw.org 2.6.3-1-686-smp #2 SMP Tue Feb 24 20:29:08 EST 2004 i686 GNU/Linux
Architecture: i686
host: i686-pc-linux-gnu
build: i686-pc-linux-gnu
target: i686-pc-linux-gnu
configured with: ../configure --prefix=/home/stevenj/gcc4
How-To-Repeat:
Compile the following code with 'gcc -O3 -msse -o bug2 bug2.c'
typedef float V __attribute__ ((vector_size (16)));
union fvec {
float f[4];
V v;
};
typedef unsigned int uintptr_t;
#define ALIGNMENT 8
#define TAINT_BIT 1
#define PTRINT(p) ((uintptr_t)(p))
#define ALIGNED(p) \
(((PTRINT(p) % ALIGNMENT) == 0) && !(PTRINT(p) & TAINT_BIT))
const union fvec foo = {{-0.0, 0.0, -0.0, 0.0}};
int main(void)
{
return !ALIGNED(&foo);
}
--
Summary: ICE on simple SSE code (works in gcc 3.3)
Product: gcc
Version: 4.0.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: stevenj at fftw dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19858