-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 var-tracking (and other modules) have a habit of assigning values to objects, then never using the values. We still need the RHS side effect in these cases, so the assignment was deleted leaving just the RHS as a statement.
Fixed thusly for var-tracking.c. Bootstrapped and regression tested on x86_64-unknown-linux-gnu. OK for trunk? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJNjPjvAAoJEBRtltQi2kC7fZsH/RhZLjm0SvzhOdc+1UPt9aM4 yQqwmcIp33334+JaEJC97yB29WrheKKwMuCl0KagzH9J/ffX6m66nYpjUXRcEear t7CNIIi/IrbknsIFfNM11rAEJgZXKX1tADTCT2lHGCoIWykyLf8tXcgALYZKObqS agp7GGN8kXZXh5uWrI66Wbp/7jE5IiN14Y7IjV1C1mwdjhYc8WfJckbX+zpJwjTu 09q2ERAgLd7EdvMO90l2DURNCaLornnhTwwiOuAHlkx/tX4+YUFpnvDM9UPrb4eU AvX322G5ACwok0JJBfSUeIjjolr5y6hh4eboRIqodkS9lC1OOX++xMrn4Z1JnBI= =GkwR -----END PGP SIGNATURE-----
* var-tracking.c (canonicalize_values_mark): Delete unused lhs assignment. (canonicalize_values_star, set_variable_part): Likewise. (clobber_variable_part, delete_variable_part): Likewise. Index: var-tracking.c =================================================================== *** var-tracking.c (revision 171351) --- var-tracking.c (working copy) *************** canonicalize_values_mark (void **slot, v *** 3117,3124 **** decl_or_value odv = dv_from_value (node->loc); void **oslot = shared_hash_find_slot_noinsert (set->vars, odv); ! oslot = set_slot_part (set, val, oslot, odv, 0, ! node->init, NULL_RTX); VALUE_RECURSED_INTO (node->loc) = true; } --- 3117,3124 ---- decl_or_value odv = dv_from_value (node->loc); void **oslot = shared_hash_find_slot_noinsert (set->vars, odv); ! set_slot_part (set, val, oslot, odv, 0, ! node->init, NULL_RTX); VALUE_RECURSED_INTO (node->loc) = true; } *************** canonicalize_values_star (void **slot, v *** 3329,3336 **** } if (val) ! cslot = set_slot_part (set, val, cslot, cdv, 0, ! VAR_INIT_STATUS_INITIALIZED, NULL_RTX); slot = clobber_slot_part (set, cval, slot, 0, NULL); --- 3329,3336 ---- } if (val) ! set_slot_part (set, val, cslot, cdv, 0, ! VAR_INIT_STATUS_INITIALIZED, NULL_RTX); slot = clobber_slot_part (set, cval, slot, 0, NULL); *************** canonicalize_vars_star (void **slot, voi *** 3401,3407 **** slot = set_slot_part (set, cval, slot, dv, 0, node->init, node->set_src); ! slot = clobber_slot_part (set, cval, slot, 0, node->set_src); return 1; } --- 3401,3407 ---- slot = set_slot_part (set, cval, slot, dv, 0, node->init, node->set_src); ! clobber_slot_part (set, cval, slot, 0, node->set_src); return 1; } *************** set_variable_part (dataflow_set *set, rt *** 7038,7044 **** if (!slot) slot = shared_hash_find_slot_unshare (&set->vars, dv, iopt); } ! slot = set_slot_part (set, loc, slot, dv, offset, initialized, set_src); } /* Remove all recorded register locations for the given variable part --- 7038,7044 ---- if (!slot) slot = shared_hash_find_slot_unshare (&set->vars, dv, iopt); } ! set_slot_part (set, loc, slot, dv, offset, initialized, set_src); } /* Remove all recorded register locations for the given variable part *************** clobber_variable_part (dataflow_set *set *** 7119,7125 **** if (!slot) return; ! slot = clobber_slot_part (set, loc, slot, offset, set_src); } /* Delete the part of variable's location from dataflow set SET. The --- 7119,7125 ---- if (!slot) return; ! clobber_slot_part (set, loc, slot, offset, set_src); } /* Delete the part of variable's location from dataflow set SET. The *************** delete_variable_part (dataflow_set *set, *** 7218,7224 **** if (!slot) return; ! slot = delete_slot_part (set, loc, slot, offset); } /* Structure for passing some other parameters to function --- 7218,7224 ---- if (!slot) return; ! delete_slot_part (set, loc, slot, offset); } /* Structure for passing some other parameters to function