[Bug lto/50602] ICE in tree_nrv, at tree-nrv.c:155 during large LTO build
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri May 4 11:01:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50602
--- Comment #19 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-05-04 11:00:36 UTC ---
Patch I am testing:
Index: gcc/lto-wrapper.c
===================================================================
--- gcc/lto-wrapper.c (revision 187148)
+++ gcc/lto-wrapper.c (working copy)
@@ -414,6 +414,16 @@ merge_and_complain (struct cl_decoded_op
if (j == *decoded_options_count)
append_option (decoded_options, decoded_options_count, foption);
break;
+
+ case OPT_freg_struct_return:
+ case OPT_fpcc_struct_return:
+ for (j = 0; j < *decoded_options_count; ++j)
+ if ((*decoded_options)[j].opt_index == foption->opt_index)
+ break;
+ if (j == *decoded_options_count)
+ fatal ("Option %s not used consistently in all LTO input files",
+ foption->orig_option_with_args_text);
+ break;
}
}
}
@@ -558,6 +568,8 @@ run_gcc (unsigned argc, char *argv[])
case OPT_fcommon:
case OPT_fexceptions:
case OPT_fgnu_tm:
+ case OPT_freg_struct_return:
+ case OPT_fpcc_struct_return:
break;
default:
@@ -619,6 +631,12 @@ run_gcc (unsigned argc, char *argv[])
/* We've handled these LTO options, do not pass them on. */
continue;
+ case OPT_freg_struct_return:
+ case OPT_fpcc_struct_return:
+ /* Ignore these, they are determined by the input files.
+ ??? We fail to diagnose a possible mismatch here. */
+ continue;
+
default:
break;
}
More information about the Gcc-bugs
mailing list