public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* optimization/6193: -funroll-loops leads to bootstrap failure in gcc-3.0.4
@ 2002-04-05 13:26 nirkko
  0 siblings, 0 replies; only message in thread
From: nirkko @ 2002-04-05 13:26 UTC (permalink / raw)
  To: gcc-gnats


>Number:         6193
>Category:       optimization
>Synopsis:       -funroll-loops leads to bootstrap failure in gcc-3.0.4
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Apr 05 13:26:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     nirkko
>Release:        gcc version 3.0.4
>Organization:
>Environment:
Sun SPARC Solaris 2.6
>Description:
bootstrap of gcc-3.0.4 fails with -funroll-loops.
other optimizations including -O3 are alright.
(gcc-3.0.1 bootstrap worked also with -funroll-loops,
as far as I remember...)

The failure is a stage 2/3 comparison failure
for 8 files, as indicated on the output log below.

using the script below, the following setting works:
  set _CFLAGS = "-fPIC -O3 -msupersparc"
and the following setting doesn't:
  set _CFLAGS = "-fPIC -O3 -funroll-loops -msupersparc"

configuration/make used:

    ../$DIRSRC_BUILD/configure \
        --prefix=${DIR_PREFIX} --disable-shared \
        --with-gnu-as --with-as=/usr/local/bin/as \
        --with-gnu-ld --with-ld=/usr/local/bin/ld \
        --enable-threads \
        --with-cpu=supersparc --enable-cpp \
        --enable-version-specific-runtime-libs \
        --disable-nls |& /bin/tee $FILE_OUTPUTLOG \
      && gmake CONFIG_SHELL=/bin/ksh \
             BOOT_CFLAGS="$_CFLAGS" \
             CFLAGS="$_CFLAGS" \
             LIBCFLAGS="$_CFLAGS" \
             LIBCXXFLAGS="$_CFLAGS -no-implicit-templates" \
             bootstrap |& /bin/tee -a $FILE_OUTPUTLOG


output generated (last lines):
...
...
...
if [ -f .bad_compare ]; then \
  echo "Bootstrap comparison failure!"; \
  cat .bad_compare; \
  exit 1; \
else \
  case "compare" in \
    *-lean ) rm -rf stage$stage ;; \
    *) ;; \
  esac; true; \
fi
Bootstrap comparison failure!
crtbegin.o differs
gcov.o differs
ggc-common.o differs
global.o differs
gmon.o differs
local-alloc.o differs
profile.o differs
toplev.o differs
gmake[1]: *** [compare] Error 1
gmake[1]: Leaving directory `/_mnt/hd2/package/gcc/gcc-3.0.4-static-bimbo2.6-obj/gcc'
gmake: *** [bootstrap] Error 2
>How-To-Repeat:
bootstrap with -funroll-loops
(preprocessed input of these files are identical for stage 2 and 3,
but assembly output differs for the stage 2 and 3 compilations.
the difference is mainly in temporary labels, but also has
other strange differences)
>Fix:
workaround:
bootstrap without -funroll-loops

however, will other programs compiled with -funroll-loops
be erroneous?

this bug report replaces #5888 (where I didn't identify
the -funroll-loops as the source of the problem yet).
>Release-Note:
>Audit-Trail:
>Unformatted:
 
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="none (bootstrap failure, needs whole gcc-3.0.4 build)"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="none (bootstrap failure, needs whole gcc-3.0.4 build)"


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-04-05 21:26 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-04-05 13:26 optimization/6193: -funroll-loops leads to bootstrap failure in gcc-3.0.4 nirkko

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).