2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / gcc.c-torture / compile / 980408-1.c
blob09bf430406e775124bd464e7dc484656684575b1
1 typedef struct _RunlengthPacket
3 unsigned short
4 red,
5 green,
6 blue,
7 length;
8 unsigned short
9 index;
10 } RunlengthPacket;
11 typedef struct _Image
13 int
14 status,
15 temporary;
16 char
17 filename[1664 ];
18 long int
19 filesize;
20 int
21 pipe;
22 char
23 magick[1664 ],
24 *comments,
25 *label,
26 *text;
27 unsigned int
28 matte;
29 unsigned int
30 columns,
31 rows,
32 depth;
33 unsigned int
34 scene,
35 number_scenes;
36 char
37 *montage,
38 *directory;
39 unsigned int
40 colors;
41 double
42 gamma;
43 float
44 x_resolution,
45 y_resolution;
46 unsigned int
47 mean_error_per_pixel;
48 double
49 normalized_mean_error,
50 normalized_maximum_error;
51 unsigned long
52 total_colors;
53 char
54 *signature;
55 unsigned int
56 packets,
57 runlength,
58 packet_size;
59 unsigned char
60 *packed_pixels;
61 long int
62 magick_time;
63 char
64 magick_filename[1664 ];
65 unsigned int
66 magick_columns,
67 magick_rows;
68 char
69 *geometry,
70 *page;
71 unsigned int
72 dispose,
73 delay,
74 iterations;
75 unsigned int
76 orphan;
77 struct _Image
78 *previous,
79 *list,
80 *next;
81 } Image;
82 Image *MinifyImage(Image *image)
84 Image
85 *minified_image;
86 register RunlengthPacket
87 *q,
88 *s,
89 *s0,
90 *s1,
91 *s2,
92 *s3;
93 register unsigned int
95 unsigned int
96 blue,
97 green,
98 red;
99 unsigned long
100 total_matte,
101 total_blue,
102 total_green,
103 total_red;
104 unsigned short
105 index;
106 for (x=0; x < (image->columns-1); x+=2)
108 total_red=0;
109 total_green=0;
110 total_blue=0;
111 total_matte=0;
112 s=s0;
113 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++; ;
114 s=s1;
115 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++; ;
116 s=s2;
117 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++; ;
118 s=s3;
119 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++; ;
120 red=(unsigned short) ((total_red+63) >> 7);
121 green=(unsigned short) ((total_green+63) >> 7);
122 blue=(unsigned short) ((total_blue+63) >> 7);
123 index=(unsigned short) ((total_matte+63) >> 7);
124 if ((red == q->red) && (green == q->green) && (blue == q->blue) &&
125 (index == q->index) && ((int) q->length < 65535L ))
126 q->length++;
128 return(minified_image);