[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Target Milestone|--- |5.0
Summary|PowerPC bootstrap broken|[5 Regression] PowerPC
   |since r214654   |bootstrap broken since
   ||r214654


[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread wschmidt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

--- Comment #2 from Bill Schmidt wschmidt at gcc dot gnu.org ---
Example backtrace for segv:

#0  0x4d5a28a0 in ?? ()
#1  0x10370128 in mem_loc_descriptor(rtx_def*, machine_mode,
machine_mode, var_init_status) ()
#2  0x103704f4 in mem_loc_descriptor(rtx_def*, machine_mode,
machine_mode, var_init_status) ()
#3  0x1037a59c in loc_descriptor(rtx_def*, machine_mode,
var_init_status) ()
#4  0x1037a7b8 in loc_descriptor(rtx_def*, machine_mode,
var_init_status) ()
#5  0x1037ad58 in dw_loc_list_1(tree_node*, rtx_def*, int,
var_init_status) ()
#6  0x10375dac in loc_list_from_tree(tree_node*, int) ()
#7  0x1037d43c in add_location_or_const_value_attribute(die_struct*,
tree_node*, bool, dwarf_attribute) [clone .constprop.340] ()
#8  0x10363e3c in gen_variable_die(tree_node*, tree_node*, die_struct*)
()
#9  0x10365dd4 in gen_decl_die(tree_node*, tree_node*, die_struct*) ()
#10 0x10380484 in decls_for_scope(tree_node*, die_struct*, int) ()
#11 0x1035fd70 in gen_subprogram_die(tree_node*, die_struct*) ()
#12 0x10365b18 in gen_decl_die(tree_node*, tree_node*, die_struct*) ()
#13 0x10367518 in dwarf2out_function_decl(tree_node*) ()
#14 0x103e65a0 in (anonymous namespace)::pass_final::execute(function*)
()
#15 0x10635a7c in execute_one_pass(opt_pass*) ()
#16 0x10636184 in execute_pass_list_1(opt_pass*) ()
#17 0x1063619c in execute_pass_list_1(opt_pass*) ()
#18 0x1063619c in execute_pass_list_1(opt_pass*) ()
#19 0x10636224 in execute_pass_list(function*, opt_pass*) ()
#20 0x102d98a4 in cgraph_node::expand() ()
#21 0x102db3b8 in symbol_table::compile() ()
#22 0x102dd2f8 in symbol_table::finalize_compilation_unit() ()
#23 0x10132738 in c_write_global_declarations() ()
#24 0x107220c0 in compile_file() ()
#25 0x1072522c in toplev_main(int, char**) ()
#26 0x1010f288 in main ()


[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread wschmidt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

--- Comment #3 from Bill Schmidt wschmidt at gcc dot gnu.org ---
Looks like a subtle logic change in the patch:

+  FOR_EACH_SUBRTX (iter, array, body, ALL)
+if (const_rtx y = *iter)
+  {
+   /* Check if a label_ref Y refers to label X.  */
+   if (GET_CODE (y) == LABEL_REF  LABEL_P (y)  XEXP (y, 0) == x)
+ return true;

-  if (*body == NULL_RTX)
-return y == NULL_RTX;
+   if (rtx_equal_p (x, y))
+ return true;

-  /* Return true if a label_ref *BODY refers to label Y.  */
-  if (GET_CODE (*body) == LABEL_REF  LABEL_P (y))
-return XEXP (*body, 0) == y;

If XEXP (y, 0) != x, it seems we should return false to match what was done
before.  Testing a patch to fix this.


[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread wschmidt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

--- Comment #4 from Bill Schmidt wschmidt at gcc dot gnu.org ---
Unfortunately that was not sufficient -- same SEGVs are still occurring.


[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread rsandifo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2014-08-29
 CC||rsandifo at gcc dot gnu.org
   Assignee|unassigned at gcc dot gnu.org  |rsandifo at gcc dot 
gnu.org
 Ever confirmed|0   |1

--- Comment #5 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
---
(In reply to Bill Schmidt from comment #4)
 Unfortunately that was not sufficient -- same SEGVs are still occurring.

Sorry, it was a really dumb typo.  Instead of:

if (GET_CODE (y) == LABEL_REF  LABEL_P (y)  XEXP (y, 0) == x)

it should be:

if (GET_CODE (y) == LABEL_REF  LABEL_P (x)  XEXP (y, 0) == x)

I confirmed that that is enough to get identical expmed.c code before
and after the patch, am testing a full bootstrap now.


[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread wschmidt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

--- Comment #6 from Bill Schmidt wschmidt at gcc dot gnu.org ---
Ah...I've been staring at the two versions for so long and that never leaped
out at me. :)  Thanks, Richard!


[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread rsandifo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

--- Comment #7 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
---
Author: rsandifo
Date: Fri Aug 29 15:51:13 2014
New Revision: 214733

URL: https://gcc.gnu.org/viewcvs?rev=214733root=gccview=rev
Log:
gcc/
PR bootstrap/62301
* rtlanal.c (rtx_referenced_p): Fix typo in LABEL_P call.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/rtlanal.c


[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread rsandifo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #8 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org 
---
Patch applied.


[Bug bootstrap/62301] [5 Regression] PowerPC bootstrap broken since r214654

2014-08-29 Thread wschmidt at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62301

--- Comment #9 from Bill Schmidt wschmidt at gcc dot gnu.org ---
Thanks, Richard!