This is a regression from 4.6. What can I provide to help get this resolved? /home2/joel/build/b-powerpc-ada/./gcc/xgcc -B/home2/joel/build/b-powerpc-ada/./gcc/ -B/users/joel/test-gcc/install-svn/powerpc-rtems4.11/bin/ -B/users/joel/test-gcc/install-svn/powerpc-rtems4.11/lib/ -isystem /users/joel/test-gcc/install-svn/powerpc-rtems4.11/include -isystem /users/joel/test-gcc/install-svn/powerpc-rtems4.11/sys-include -c -g -O2 -W -Wall -gnatpg g-catiio.adb -o g-catiio.o +===========================GNAT BUG DETECTED==============================+ | 4.7.0 20110512 (experimental) (powerpc-unknown-rtems4.11) GCC error: | | vector VEC(use_pred_info_t,base) index domain error, in | | pred_chain_length_cmp at tree-ssa-uninit.c:1624 | | Error detected around g-catiio.adb:198:4 | | Please submit a bug report; see http://gcc.gnu.org/bugs.html. | | Use a subject line meaningful to you and us to track the bug. | | Include the entire contents of this bug box in the report. | | Include the exact gcc or gnatmake command that you entered. | | Also include sources listed below in gnatchop format | | (concatenated together with no headers between files). | +==========================================================================+
> What can I provide to help get this resolved? As always, a reduced testcase. Introduced by: 2011-03-15 Xinliang David Li <davidxl@google.com> PR c/47837 * tree-ssa-uninit.c (pred_chain_length_cmp): New function. (normalize_preds): New function. (is_use_properly_guarded): Normalize def predicates. I also saw it during an LTO bootstrap with Ada enabled at some point.
PR48799 shows an ICE in the same location
To reproduce on Linux, in the build dir: cp gcc/ada/rts/system.ads . chmod a+w system.ads edit system.ads and change ZCX_By_Default to False gcc/gnat1 gcc/ada/rts/g-catiio.adb -Igcc/ada/rts -Wall -O This breaks the compiler on all SJLJ platforms, e.g. arm-linux.
(In reply to comment #3) > To reproduce on Linux, in the build dir: > > cp gcc/ada/rts/system.ads . > chmod a+w system.ads > edit system.ads and change ZCX_By_Default to False > gcc/gnat1 gcc/ada/rts/g-catiio.adb -Igcc/ada/rts -Wall -O > > This breaks the compiler on all SJLJ platforms, e.g. arm-linux. On x86_linux, I can not reproduce the problem: Using the test case, got the following: GNAT.CALENDAR.TIME_IO.AM_PM GNAT.CALENDAR.TIME_IO.HOUR_12 GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.IMAGE.PAD_CHAR GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B96B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B107B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B118B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B129B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B140B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B151B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B162B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B173B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B184B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B195B GNAT.CALENDAR.TIME_IO.IMAGE.B_2.B224B GNAT.CALENDAR.TIME_IO.IMAGE.B_2.B239B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B250B GNAT.CALENDAR.TIME_IO.IMAGE.B_3.B282B GNAT.CALENDAR.TIME_IO.IMAGE.B_3.B295B GNAT.CALENDAR.TIME_IO.IMAGE.B_3.B308B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B319B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B342B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B359B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B376B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B392B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B408B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B420B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B432B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B444B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B455B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B478B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B489B GNAT.CALENDAR.TIME_IO.IMAGE.B_4.B500B GNAT.CALENDAR.TIME_IO.IMAGE.B_5.B511B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B522B GNAT.CALENDAR.TIME_IO.IMAGE.B_6.B534B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B545B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B558B GNAT.CALENDAR.TIME_IO.MONTH_NAME_TO_NUMBER GNAT.CALENDAR.TIME_IO.VALUE GNAT.CALENDAR.TIME_IO.VALUE.EXTRACT_DATE GNAT.CALENDAR.TIME_IO.VALUE.EXTRACT_TIME GNAT.CALENDAR.TIME_IO.PUT_TIME GNAT.CALENDAR.TIME_IO.PUT_TIME GNAT.CALENDAR.TIME_IO Analyzing compilation unit Performing interprocedural optimizations <*free_lang_data> <visibility> <early_local_cleanups> <whole-program> <ipa-profile> <inline> <pure-const> <static-var>Assembling functions: GNAT.CALENDAR.TIME_IO.PUT_TIME GNAT.CALENDAR.TIME_IO.HOUR_12 GNAT.CALENDAR.TIME_IO.MONTH_NAME_TO_NUMBER GNAT.CALENDAR.TIME_IO.VALUE.EXTRACT_TIME GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B96B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B107B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B118B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B129B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B140B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B151B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B162B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B173B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B184B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B195B GNAT.CALENDAR.TIME_IO.IMAGE.B_2.B224B GNAT.CALENDAR.TIME_IO.IMAGE.B_2.B239B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B250B GNAT.CALENDAR.TIME_IO.IMAGE.B_3.B282B GNAT.CALENDAR.TIME_IO.IMAGE.B_3.B295B GNAT.CALENDAR.TIME_IO.IMAGE.B_3.B308B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B319B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B342B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B359B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B376B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B392B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B408B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B420B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B432B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B444B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B455B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B478B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B489B GNAT.CALENDAR.TIME_IO.IMAGE.B_4.B500B GNAT.CALENDAR.TIME_IO.IMAGE.B_5.B511B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B522B GNAT.CALENDAR.TIME_IO.IMAGE.B_6.B534B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B545B GNAT.CALENDAR.TIME_IO.IMAGE.L_1.B558B GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.AM_PM GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.IMAGE GNAT.CALENDAR.TIME_IO.IMAGE raised STORAGE_ERROR : stack overflow (or erroneous memory access)
> On x86_linux, I can not reproduce the problem: Try to increase your ulimit settings.
Created attachment 24323 [details] fix
(In reply to comment #6) > Created attachment 24323 [details] > fix Please verify. Davdi
> Please verify. Works for me, thanks!
Wasn't this fixed in r174077? If so, can this be closed now?
Yep.