public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* egcs 1.0.2 is broken on alpha
       [not found] <19980408194926.28017@dot.cygnus.com>
@ 1998-04-09  3:09 ` H.J. Lu
  1998-04-10  0:15   ` Jeffrey A Law
  0 siblings, 1 reply; 2+ messages in thread
From: H.J. Lu @ 1998-04-09  3:09 UTC (permalink / raw)
  To: rth; +Cc: law, egcs

Hi,

I think egcs 1.0.2 is broken on alpha. I got

# gcc -S -O2 980408-1.c
gcc: Internal compiler error: program cc1 got fatal signal 11

Is there a fix for egcs 1.0.2?


H.J.
--
Program received signal SIGSEGV, Segmentation fault.
find_reloads (insn=0x12030f360, replace=0, ind_levels=0, live_known=1, 
    reload_reg_p=0x1202bc938) at
/home/work/misc/gnu/src/egcs/gcc/reload.c:2536
2536          register RTX_CODE code = GET_CODE (recog_operand[i]);
(gdb) bt
#0  find_reloads (insn=0x12030f360, replace=0, ind_levels=0, live_known=1, 
    reload_reg_p=0x1202bc938) at /home/work/misc/gnu/src/egcs/gcc/reload.c:2536
#1  0x120125f7c in reload (first=0x1202ce9f0, global=1, dumpfile=0x0)
    at /home/work/misc/gnu/src/egcs/gcc/reload1.c:1120
#2  0x120114a90 in global_alloc (file=0x0)
    at /home/work/misc/gnu/src/egcs/gcc/global.c:584
#3  0x12002f118 in rest_of_compilation (decl=0x1202f4b80)
    at /home/work/misc/gnu/src/egcs/gcc/toplev.c:3534
#4  0x120017384 in finish_function (nested=0)
    at /home/work/misc/gnu/src/egcs/gcc/c-decl.c:7050
#5  0x1200020ec in yyparse () at c-parse.y:316
#6  0x12002ccb8 in compile_file (name=0x1202a5080 "")
    at /home/work/misc/gnu/src/egcs/gcc/toplev.c:2513
#7  0x1200309d0 in main (argc=7, argv=0x1202a60c0, envp=0x1202ed888)
    at /home/work/misc/gnu/src/egcs/gcc/toplev.c:4416
(gdb) call debug_rtx (insn)
(insn 662 651 673 (set (mem:DI (plus:DI (reg:DI 30 $30)
                (const_int 104)))
        (subreg:DI (minus:SI (mult:SI (reg:SI 514)
                    (const_int 4))
                (reg:SI 514)) 0)) 28 {subdi3+1} (insn_list 656 (nil))
    (expr_list:REG_DEAD (reg:SI 514)
        (nil)))

---
Wed Apr  8 19:55:10 1998  H.J. Lu  (hjl@gnu.org)

	* compile/980408-1.c: New.

--- /dev/null	Wed Dec 31 16:00:00 1969
+++ compile/980408-1.c	Wed Apr  8 19:54:22 1998
@@ -0,0 +1,129 @@
+typedef struct _RunlengthPacket
+{
+  unsigned short
+    red,
+    green,
+    blue,
+    length;
+  unsigned short
+    index;
+} RunlengthPacket;
+typedef struct _Image
+{
+  int
+    status,
+    temporary;
+  char
+    filename[1664 ];
+  long int
+    filesize;
+  int
+    pipe;
+  char
+    magick[1664 ],
+    *comments,
+    *label,
+    *text;
+  unsigned int
+    matte;
+  unsigned int
+    columns,
+    rows,
+    depth;
+  unsigned int
+    scene,
+    number_scenes;
+  char
+    *montage,
+    *directory;
+  unsigned int
+    colors;
+  double
+    gamma;
+  float
+    x_resolution,
+    y_resolution;
+  unsigned int
+    mean_error_per_pixel;
+  double
+    normalized_mean_error,
+    normalized_maximum_error;
+  unsigned long
+    total_colors;
+  char
+    *signature;
+  unsigned int
+    packets,
+    runlength,
+    packet_size;
+  unsigned char
+    *packed_pixels;
+  long int
+    magick_time;
+  char
+    magick_filename[1664 ];
+  unsigned int
+    magick_columns,
+    magick_rows;
+  char
+    *geometry,
+    *page;
+  unsigned int
+    dispose,
+    delay,
+    iterations;
+  unsigned int
+    orphan;
+  struct _Image
+    *previous,
+    *list,
+    *next;
+} Image;
+  Image *MinifyImage(Image *image)
+{
+  Image
+    *minified_image;
+  register RunlengthPacket
+    *q,
+    *s,
+    *s0,
+    *s1,
+    *s2,
+    *s3;
+  register unsigned int
+    x;
+  unsigned int
+    blue,
+    green,
+    red;
+  unsigned long
+    total_matte,
+    total_blue,
+    total_green,
+    total_red;
+  unsigned short
+    index;
+    for (x=0; x < (image->columns-1); x+=2)
+    {
+      total_red=0;
+      total_green=0;
+      total_blue=0;
+      total_matte=0;
+      s=s0;
+      total_red+=( 3 )*(s->red); total_green+=( 3 )*(s->green); total_blue+=( 3 )*(s->blue); total_matte+=( 3 )*(s->index); s++; ; total_red+=( 7 )*(s->red); total_green+=( 7 )*(s->green); total_blue+=( 7 )*(s->blue); total_matte+=( 7 )*(s->index); s++; ;  total_red+=( 7 )*(s->red); total_green+=( 7 )*(s->green); total_blue+=( 7 )*(s->blue); total_matte+=( 7 )*(s->index); s++; ;  total_red+=( 3 )*(s->red); total_green+=( 3 )*(s->green); total_blue+=( 3 )*(s->blue); total_matte+=( 3 )*(s->index); s++; ;
+      s=s1;
+      total_red+=( 7 )*(s->red); total_green+=( 7 )*(s->green); total_blue+=( 7 )*(s->blue); total_matte+=( 7 )*(s->index); s++; ; total_red+=( 15 )*(s->red); total_green+=( 15 )*(s->green); total_blue+=( 15 )*(s->blue); total_matte+=( 15 )*(s->index); s++; ; total_red+=( 15 )*(s->red); total_green+=( 15 )*(s->green); total_blue+=( 15 )*(s->blue); total_matte+=( 15 )*(s->index); s++; ; total_red+=( 7 )*(s->red); total_green+=( 7 )*(s->green); total_blue+=( 7 )*(s->blue); total_matte+=( 7 )*(s->index); s++; ;
+      s=s2;
+      total_red+=( 7 )*(s->red); total_green+=( 7 )*(s->green); total_blue+=( 7 )*(s->blue); total_matte+=( 7 )*(s->index); s++; ; total_red+=( 15 )*(s->red); total_green+=( 15 )*(s->green); total_blue+=( 15 )*(s->blue); total_matte+=( 15 )*(s->index); s++; ; total_red+=( 15 )*(s->red); total_green+=( 15 )*(s->green); total_blue+=( 15 )*(s->blue); total_matte+=( 15 )*(s->index); s++; ; total_red+=( 7 )*(s->red); total_green+=( 7 )*(s->green); total_blue+=( 7 )*(s->blue); total_matte+=( 7 )*(s->index); s++; ;
+      s=s3;
+      total_red+=( 3 )*(s->red); total_green+=( 3 )*(s->green); total_blue+=( 3 )*(s->blue); total_matte+=( 3 )*(s->index); s++; ; total_red+=( 7 )*(s->red); total_green+=( 7 )*(s->green); total_blue+=( 7 )*(s->blue); total_matte+=( 7 )*(s->index); s++; ;  total_red+=( 7 )*(s->red); total_green+=( 7 )*(s->green); total_blue+=( 7 )*(s->blue); total_matte+=( 7 )*(s->index); s++; ;  total_red+=( 3 )*(s->red); total_green+=( 3 )*(s->green); total_blue+=( 3 )*(s->blue); total_matte+=( 3 )*(s->index); s++; ;
+      red=(unsigned short) ((total_red+63) >> 7);
+      green=(unsigned short) ((total_green+63) >> 7);
+      blue=(unsigned short) ((total_blue+63) >> 7);
+      index=(unsigned short) ((total_matte+63) >> 7);
+      if ((red == q->red) && (green == q->green) && (blue == q->blue) &&
+          (index == q->index) && ((int) q->length < 65535L ))
+        q->length++;
+    }
+  return(minified_image);
+}

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: egcs 1.0.2 is broken on alpha
  1998-04-09  3:09 ` egcs 1.0.2 is broken on alpha H.J. Lu
@ 1998-04-10  0:15   ` Jeffrey A Law
  0 siblings, 0 replies; 2+ messages in thread
From: Jeffrey A Law @ 1998-04-10  0:15 UTC (permalink / raw)
  To: H.J. Lu; +Cc: rth, egcs

  In message < m0yN7cu-00058wC@ocean.lucon.org >you write:
  > 	* compile/980408-1.c: New.
I've added this test to the testsuite.

jeff

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1998-04-10  0:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <19980408194926.28017@dot.cygnus.com>
1998-04-09  3:09 ` egcs 1.0.2 is broken on alpha H.J. Lu
1998-04-10  0:15   ` Jeffrey A Law

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).