[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 --- Comment #5 from Andreas Krebbel krebbel at gcc dot gnu.org 2012-06-18 07:09:04 UTC --- (In reply to comment #4) I don't see how r187965 could cause this, but I do see the problem. mark_sym_for_renaming (called via the s390 va_arg_expr expander) is called during, well, gimplification from GENERIC. At that point SSA isn't initialized yet, so cfun-gimple_df is still NULL, and so SYMS_TO_RENAME gives a segfault. You either have to guard the call to mark_sym_for_renaming with gimple_in_ssa_p(), or get rid of the call alltogether. I don't see how new va_arg expressions would be generated during SSA optimizers, so the latter solution would be safe. No other backend calls mark_sym_for_renaming either, so just remove it. ?! You appear to have added the call to mark_sym_for_renaming with your patch. Since it isn't mentioned in the changelog perhaps it is a leftover from something else in your tree? So the solution is to revert that change? svn diff -r 187964:187965 gcc/config/s390/s390.c Index: gcc/config/s390/s390.c === --- gcc/config/s390/s390.c (revision 187964) +++ gcc/config/s390/s390.c (revision 187965) @@ -9044,6 +9044,7 @@ lab_false = create_artificial_label (UNKNOWN_LOCATION); lab_over = create_artificial_label (UNKNOWN_LOCATION); addr = create_tmp_var (ptr_type_node, addr); + mark_sym_for_renaming (addr); t = fold_convert (TREE_TYPE (reg), size_int (max_reg)); t = build2 (GT_EXPR, boolean_type_node, reg, t);
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 --- Comment #6 from rguenther at suse dot de rguenther at suse dot de 2012-06-18 08:24:51 UTC --- On Mon, 18 Jun 2012, krebbel at gcc dot gnu.org wrote: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 --- Comment #5 from Andreas Krebbel krebbel at gcc dot gnu.org 2012-06-18 07:09:04 UTC --- (In reply to comment #4) I don't see how r187965 could cause this, but I do see the problem. mark_sym_for_renaming (called via the s390 va_arg_expr expander) is called during, well, gimplification from GENERIC. At that point SSA isn't initialized yet, so cfun-gimple_df is still NULL, and so SYMS_TO_RENAME gives a segfault. You either have to guard the call to mark_sym_for_renaming with gimple_in_ssa_p(), or get rid of the call alltogether. I don't see how new va_arg expressions would be generated during SSA optimizers, so the latter solution would be safe. No other backend calls mark_sym_for_renaming either, so just remove it. ?! You appear to have added the call to mark_sym_for_renaming with your patch. Since it isn't mentioned in the changelog perhaps it is a leftover from something else in your tree? So the solution is to revert that change? svn diff -r 187964:187965 gcc/config/s390/s390.c Index: gcc/config/s390/s390.c === --- gcc/config/s390/s390.c (revision 187964) +++ gcc/config/s390/s390.c (revision 187965) @@ -9044,6 +9044,7 @@ lab_false = create_artificial_label (UNKNOWN_LOCATION); lab_over = create_artificial_label (UNKNOWN_LOCATION); addr = create_tmp_var (ptr_type_node, addr); + mark_sym_for_renaming (addr); I think that change is indeed bogus as-is, if you ever call this when we are in SSA form you'd need that call, but you need to guard it with if (gimple_in_ssa_p (cfun)). But I'm sure we never gimplify va-arg stuff when in SSA form. Richard.
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 Andreas Krebbel krebbel at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED --- Comment #7 from Andreas Krebbel krebbel at gcc dot gnu.org 2012-06-18 11:06:39 UTC --- (In reply to comment #6) Ok. I've reverted the s390.c bits of r187965.
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 Michael Matz matz at gcc dot gnu.org changed: What|Removed |Added Status|RESOLVED|UNCONFIRMED Resolution|FIXED | --- Comment #8 from Michael Matz matz at gcc dot gnu.org 2012-06-18 11:08:49 UTC --- (In reply to comment #5) ?! You appear to have added the call to mark_sym_for_renaming with your patch. Yikes! Since it isn't mentioned in the changelog perhaps it is a leftover from something else in your tree? So the solution is to revert that change? Yes, it was an unintended change (it must have been in my dev tree quite long, I don't remember doing it). It seems I haven't reviewed the file list of my commit message :-/ Sorry about that breakage.
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 Michael Matz matz at gcc dot gnu.org changed: What|Removed |Added Status|RESOLVED|UNCONFIRMED Resolution|FIXED | Status|UNCONFIRMED |RESOLVED Resolution||FIXED --- Comment #8 from Michael Matz matz at gcc dot gnu.org 2012-06-18 11:08:49 UTC --- (In reply to comment #5) ?! You appear to have added the call to mark_sym_for_renaming with your patch. Yikes! Since it isn't mentioned in the changelog perhaps it is a leftover from something else in your tree? So the solution is to revert that change? Yes, it was an unintended change (it must have been in my dev tree quite long, I don't remember doing it). It seems I haven't reviewed the file list of my commit message :-/ Sorry about that breakage. --- Comment #9 from Michael Matz matz at gcc dot gnu.org 2012-06-18 11:09:28 UTC --- .
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 Andreas Krebbel krebbel at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2 CC||krebbel at gcc dot gnu.org, ||matz at suse dot de
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 Richard Guenther rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||ice-on-invalid-code CC||rguenth at gcc dot gnu.org --- Comment #1 from Richard Guenther rguenth at gcc dot gnu.org 2012-06-15 08:26:17 UTC --- This is an ice-on-invalid - how can that break bootstrap?
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 --- Comment #2 from Andreas Krebbel krebbel at gcc dot gnu.org 2012-06-15 08:30:21 UTC --- (In reply to comment #1) This is an ice-on-invalid - how can that break bootstrap? delta was a bit too eager. Same happens with: int __gcov_execle (const char *path, char *arg, ...) { int length = 0; __builtin_va_list ap, aq; while (__builtin_va_arg (ap, char *)) length++; }
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #3 from Jakub Jelinek jakub at gcc dot gnu.org 2012-06-15 08:42:03 UTC --- When delta reducing ICE on valid, it is always better to add to a script second compilation (perhaps with -O0 for speed) using some compiler where it initially compiles fine to make sure delta doesn't turn ice-on-valid into ice-on-invalid.
[Bug bootstrap/53681] s390 bootstrap failure since 187965
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53681 Michael Matz matz at gcc dot gnu.org changed: What|Removed |Added CC||matz at gcc dot gnu.org --- Comment #4 from Michael Matz matz at gcc dot gnu.org 2012-06-15 14:21:05 UTC --- I don't see how r187965 could cause this, but I do see the problem. mark_sym_for_renaming (called via the s390 va_arg_expr expander) is called during, well, gimplification from GENERIC. At that point SSA isn't initialized yet, so cfun-gimple_df is still NULL, and so SYMS_TO_RENAME gives a segfault. You either have to guard the call to mark_sym_for_renaming with gimple_in_ssa_p(), or get rid of the call alltogether. I don't see how new va_arg expressions would be generated during SSA optimizers, so the latter solution would be safe. No other backend calls mark_sym_for_renaming either, so just remove it.