This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
problems with -O2 and sparc-solaris 2.51
- To: egcs-bugs at cygnus dot com
- Subject: problems with -O2 and sparc-solaris 2.51
- From: "Anthony J Heading" <heading_anthony at jpmorgan dot com>
- Date: Sat, 29 Aug 1998 22:54:15 +0800
Hi,
With 19980824 (and at least a few snapshots earlier), -O2 on sparc
Solaris still appears to have problems. The following results from a
compilation of jwz's xscreensaver-2.27 - there's a bus error seemingly
in the middle of some innocuous looking floating-point calcs. Dropping
the -O2 causes the problem to go away.
If there's anything useful I could do to help isolate the problem, please
let me know.
Regards
Anthony
% gdb hacks/xroger
GNU gdb 4.17
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.5.1"...
(gdb) run
Starting program: /opt/research/build/xscreensaver-2.27/hacks/xroger
Program received signal SIGBUS, Bus error.
0x1558c in add_bezier_arc (s=0xeffff1e8, x0=135.16666666666669,
y0=292.16666666666669,
x1=136.33333333333334, y1=288.66666666666669, x2=138.66666666666666,
y2=286.33333333333331,
x3=149.16666666666666, y3=285.16666666666663) at spline.c:162
162 if (can_approx_with_line (cx, cy, midx23, midy23, x3, y3))
(gdb) where
#0 0x1558c in add_bezier_arc (s=0xeffff1e8, x0=135.16666666666669,
y0=292.16666666666669,
x1=136.33333333333334, y1=288.66666666666669, x2=138.66666666666666,
y2=286.33333333333331,
x3=149.16666666666666, y3=285.16666666666663) at spline.c:162
#1 0x15878 in calc_section (s=0xeffff1e8, cminus1x=134,
cminus1y=-3.0985570937468609e+231, cx=134, cy=291,
cplus1x=141, cplus1y=284, cplus2x=197, cplus2y=284) at spline.c:185
#2 0x15b14 in compute_closed_spline (s=0xeffff1e8) at spline.c:229
#3 0x1487c in skull (dpy=0x2d930, window=96468993, draw_gc=0x31e58,
erase_gc=0x31de0, x=134, y=255, w=117,
h=117) at xroger.c:84
#4 0x13d14 in screenhack (dpy=0x2d930, window=96468993) at
xroger-hack.c:75
#5 0x12604 in main (argc=1, argv=0x21) at screenhack.c:378
(gdb) list
157 add_line (s, x0, y0, cx, cy);
158 else if ((midx01 != x1) || (midy01 != y1) || (midlsegx != x2)
159 || (midlsegy != y2) || (cx != x3) || (cy != y3))
160 add_bezier_arc (s, x0, y0, midx01, midy01, midlsegx, midlsegy,
cx, cy);
161
162 if (can_approx_with_line (cx, cy, midx23, midy23, x3, y3))
163 add_line (s, cx, cy, x3, y3);
164 else if ((cx != x0) || (cy != y0) || (midrsegx != x1) ||
(midrsegy != y1)
165 || (midx23 != x2) || (midy23 != y2))
166 add_bezier_arc (s, cx, cy, midrsegx, midrsegy, midx23, midy23,
x3, y3);