c++/10060: ICE on huge file (300k lines)

Andrew Pinski pinskia@physics.uc.edu
Fri May 9 13:10:00 GMT 2003


This looks like a stack overflow, a temporary fix is to up the limit on  
the stacksize.
The real fix is to change copy_rtx_if_shared to be non-recursive.


Thanks,
Andrew Pinski


On Friday, May 9, 2003, at 08:56 US/Eastern, <andreas@florath.net>  
wrote:

>
> Hello!
>
>
>         The numbers are 74799 (which works) and 74800 (which failes).
>
>         Maybe one additional hint: I had a look at the stack from the
> core from 88511. It says:
>
>  00281958 ggc_alloc (55, 0, 0, 550404, 0, 0)
>  00129f98 copy_rtx_if_shared (0, 17527728, 0, 33a5c8, 2, 55) + 170
>  00129f10 copy_rtx_if_shared (17527710, 17527b60, 0, 1, 33a5c8, 4c) +  
> e8
>  00129f10 copy_rtx_if_shared (0, 17527f98, 0, 0, 33a5c8, 3) + e8
>  00129f10 copy_rtx_if_shared (0, 175303d8, 0, 0, 33a5c8, 3) + e8
>  00129f10 copy_rtx_if_shared (0, 17530810, 0, 0, 33a5c8, 3) + e8
> ***
> [there are 74816 lines with copy_rtx_if_shared only with different
> second argument.]
> ***
>  00129f10 copy_rtx_if_shared (0, 33e82498, 0, 0, 33a5c8, 3) + e8
>  00129f10 copy_rtx_if_shared (0, 33e828d0, 0, 0, 33a5c8, 3) + e8
>  00129f10 copy_rtx_if_shared (0, 33e82d08, 0, 0, 33a5c8, 3) + e8
>  00129f10 copy_rtx_if_shared (0, 3, 0, 0, 33a5c8, 3) + e8
>  00129f10 copy_rtx_if_shared (0, 2, 362cee40, 0, 33a5c8, 3) + e8
>  00129948 unshare_all_rtl (a895e80, 18b2a50, 18b2a50, 18b2a50,  
> 11df4a80,
> 1906e00) + 6c
>  002635f0 rest_of_compilation (a895e80, 40d4d, 3d2000, 3d2400, dbe04,
> 3b9000) + 478
>  000befc4 genrtl_finish_function (a895e80, a895e80, 0, 1906e00, 0,
> 40d4d) + 68
>  000bec60 expand_body (a895e80, a8aca80, a6, 0, 0, 0) + 230
>  00094868 yyparse  (3f1c08, ffbee710, 3e5000, 0, 31e000, ffbee71a) +  
> 9bc
>  000dc080 c_common_parse_file (0, ff33fa9c, 0, 3d2b38, dc048, 3b9000) +
> 38
>  00262bdc compile_file (32e058, ffbeeb20, 1, 0, 0, 393398) + 34
>  00267fa8 do_compile (3ebc00, ffbeead4, 0, 0, 0, 0) + 84
>  0026806c toplev_main (15, ffbeead4, ffbeeb2c, 3c8680, 0, 0) + 5c
>  0003d20c _start   (0, 0, 0, 0, 0, 0) + 5c
>
>
>         If I can help you (sending some file, try a patch, ...), just
> drop me a mail.
>
>
>         Best regards
>
>         Andreas Florath
>         andreas@florath.net
>
>
> http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit- 
> trail&database=gcc&pr=10060
>
>



More information about the Gcc-bugs mailing list