Internal compiler error in function insert_save_restore egcs-1.1

Jeffrey A Law law@cygnus.com
Tue Nov 10 00:40:00 GMT 1998


  In message < E0zbs9b-0001Vf-00@hns.com >you write:
  > --Multipart_Fri_Nov__6_15:06:43_1998-1
  > Content-Type: text/plain; charset=US-ASCII
  > 
  > egcs1.1 i686-pc-linux-gnu
  > [nbecker@nbeckerpc /usr/local/src/teTeX-0.9/texk/oxdvik]$ gcc -DHAVE_CONFIG
  > _H  -I. -I. -I../../libs/libwww -I./../../libs/libwww -DHAVE_LIBWWW -DHAVE_
  > WWWLIB_H -DPS_GS -I/usr/X11R6/include -DOmega -I.. -I./..  -g -O2 -c specia
  > l.c -save-temps
  > ../../../egcs-1.1a/gcc/caller-save.c:657: Internal compiler error in functi
  > on insert_save_restore
  > 
  > Here is special.i.gz:
Here's a simpler testcase.  It doesn't fail in the mainline tree, but I don't
know if that is by accident or design.  Compile with -O2 on an x86.


extern __inline  double floor (double __x);
extern __inline  double
floor (double __x)
{
  register double __value;
  __volatile unsigned short int __cw, __cwtmp;
  __asm __volatile ("fnstcw %0" : "=m" (__cw));
  __asm __volatile ("fldcw %0" : : "m" (__cwtmp));
  __asm __volatile ("frndint" : "=t" (__value) : "0" (__x));
}
void
draw_bbox()
{
        float   cos_a   = cos(2.0);
        float   a, b, c, d;
        XDrawLine(floor(a) , floor(b));
        XDrawLine(floor(a) , floor(b + 0.5));
}



More information about the Gcc-bugs mailing list