Bug 37091 - Rev 138207 causes ICE using bootstrap for crt for win64
Summary: Rev 138207 causes ICE using bootstrap for crt for win64
Status: RESOLVED DUPLICATE of bug 37086
Alias: None
Product: gcc
Classification: Unclassified
Component: bootstrap (show other bugs)
Version: tree-ssa
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-08-12 04:42 UTC by nightstrike
Modified: 2008-08-12 08:42 UTC (History)
3 users (show)

See Also:
Host:
Target: *-mingw*, *-cygwin
Build: *-mingw*, *-cygwin
Known to work:
Known to fail:
Last reconfirmed: 2008-08-12 05:02:15


Attachments
Preprocessed source (9.38 KB, text/plain)
2008-08-12 04:46 UTC, nightstrike
Details

Note You need to log in before you can comment on or make changes to this bug.
Description nightstrike 2008-08-12 04:42:52 UTC
Building for a target of win64 on cygwin results in an ICE while building the crt for the toolchain.  Using this sequence:

binutils
all-gcc
crt
gcc

The crt phase dies as follows:

x86_64-pc-mingw32-gcc -DHAVE_CONFIG_H -I. -I/var/lib/buildbot/slave-vista64-cyg32/cygwin-x86/build/mingw/obj/../mingw-w64-crt -I/var/lib/buildbot/slave-vista64-cyg32/cygwin-x86/build/mingw/obj/../mingw-w64-crt/include64 -D_CRTBLD -I/var/lib/buildbot/slave-vista64-cyg32/cygwin-x86/build/root/mingw/include
 -pipe  -Wall -std=gnu99 -g -O2 -MT gdtoa/lib64_libmingwex_a-gethex.o -MD -MP -MF gdtoa/.deps/lib64_libmingwex_a-gethex.Tpo -c -o gdtoa/lib64_libmingwex_a-gethex.o `test -f 'gdtoa/gethex.c' || echo '/var/lib/buildbot/slave-vista64-cyg32/cygwin-x86/build/mingw/obj/../mingw-w64-crt/'`gdtoa/gethex.c
/var/lib/buildbot/slave-vista64-cyg32/cygwin-x86/build/mingw/obj/../mingw-w64-crt/gdtoa/gethex.c:
In function '__gethex_D2A':
/var/lib/buildbot/slave-vista64-cyg32/cygwin-x86/build/mingw/obj/../mingw-w64-crt/gdtoa/gethex.c:45:
internal compiler error: tree check: accessed elt 4 of tree_vec with 3
elts in find_switch_asserts, at tree-vrp.c:4346
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make[1]: *** [gdtoa/lib64_libmingwex_a-gethex.o] Error 1
make[1]: Leaving directory
`/var/lib/buildbot/slave-vista64-cyg32/cygwin-x86/build/mingw/obj'
make: *** [all] Error 2


Here's the file:

http://mingw-w64.svn.sourceforge.net/viewvc/mingw-w64/trunk/mingw-w64-crt/gdtoa/gethex.c?view=markup


At this stage, the newly built gcc is used to build the crt, so it's the stage 1 gcc that is dying.
Comment 1 nightstrike 2008-08-12 04:46:18 UTC
Created attachment 16057 [details]
Preprocessed source

This is the preprocessed source for the file that causes the ICE
Comment 2 nightstrike 2008-08-12 04:46:35 UTC
Preprocessed source added as attachment.  Also note that the bootstrap gcc was built with cygwin's gcc, which is a modified 3.4.4.
Comment 3 Aaron W. LaFramboise 2008-08-12 05:02:13 UTC
This failure comes up whenever GCC 3.4.x is used to build GCC 4.4 on Windows.  I'm not sure if it affects any non-Windows targets.
Comment 4 Aaron W. LaFramboise 2008-08-12 05:04:01 UTC
To clarify, GCC 3.4.x miscompiles GCC 4.4 when not being bootstrapped.  A normal bootstrap won't show this failure, but a cross build or --disable-bootstrap will.
Comment 5 Richard Biener 2008-08-12 08:42:58 UTC

*** This bug has been marked as a duplicate of 37086 ***