This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: c/7723: Internal compiler error - Pentium3 sse - gcc 3.2


The following reply was made to PR middle-end/7723; it has been noted by GNATS.

From: Marco Morandini <morandini@aero.polimi.it>
To: tprince@computer.org
Cc: gcc-gnats@gcc.gnu.org
Subject: Re: c/7723: Internal compiler error - Pentium3 sse - gcc 3.2
Date: Mon, 26 Aug 2002 16:19:06 +0200

 Tim Prince wrote:
 > On Monday 26 August 2002 03:01, morandini@aero.polimi.it wrote:
 > 
 >>>Number:         7723
 >>>Category:       c
 >>>Synopsis:       Internal compiler error - Pentium3 sse - gcc 3.2
 >>>Confidential:   no
 >>>Severity:       serious
 >>>Priority:       medium
 >>>Responsible:    unassigned
 >>>State:          open
 >>>Class:          ice-on-legal-code
 >>
 >>>Description:
 >>
 >>1)
 >>with this code:
 >>/*-------------------*/
 >>typedef int v4sf __attribute__ ((mode(V4SF)));
 >>int main(void) {
 >>	v4sf a={0.,0.,0.,0.};
 >>	return 0;
 >>};
 >>/*------------------*/
 >>
 >>marco@pc-31c:~> gcc -msse -march=pentium3 -mfpmath=sse main1.c: In function
 >>`main': main1.c:5: Internal compiler error in instantiate_virtual_regs_1,
 >>at function.c:3972
 >>
 >>2)this code is compiled, but the program gives a SIGSEGV. What's wrong?
 >>(binutils  2.13.90.0.4 20020814)
 >>/*------------------*/
 >>typedef int v4sf __attribute__ ((mode(V4SF)));
 >>int main(void) {
 >>	v4sf a={1.,1.,1.,1.};
 >>	v4sf b={2.,2.,2.,2.};
 >>	v4sf c;
 >>	c=__builtin_ia32_addss (a, b);
 >>	return 0;
 >>};
 > 
 > Some might argue about characterizing this as "legal code."  Perhaps it 
 > should be flagged as an error.  gcc doesn't support alignment in main(), so 
 > it seems that any code which is not standard C and depends on alignment might 
 > not be "legal."
 
 
 Opsss.....
 Yes, I do not get the SIGSEGV after moving everything to a function
 (If I understand correctly your answer, but I'm definitely not a
 good programmer)
 
 However, I'm still getting the ICE with this:
 /*-------------------*/
 typedef int v4sf __attribute__ ((mode(V4SF)));
 void dummy(void) {
 	v4sf c={0.,0.,0.,0.};
 	return;
 };
 /*-----------------*/
 
 
 Perhaps I'm simply not smart enough to use SIMD gcc support :(
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]