https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63510
Manuel López-Ibáñez <manu at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2014-10-11 CC| |manu at gcc dot gnu.org Component|c |middle-end Depends on| |63451 Ever confirmed|0 |1 --- Comment #2 from Manuel López-Ibáñez <manu at gcc dot gnu.org> --- The obviously wrong one is due to this: Index: tree-ssa-sccvn.c =================================================================== --- tree-ssa-sccvn.c (revision 216098) +++ tree-ssa-sccvn.c (working copy) @@ -4249,12 +4249,13 @@ cond_dom_walker::before_dom_children (ba the valueization of the defining stmt. */ if (TREE_CODE (lhs) == SSA_NAME) lhs = vn_get_expr_for (lhs); if (TREE_CODE (rhs) == SSA_NAME) rhs = vn_get_expr_for (rhs); - val = fold_binary (gimple_cond_code (stmt), - boolean_type_node, lhs, rhs); + val = fold_binary_loc (gimple_location (stmt), + gimple_cond_code (stmt), + boolean_type_node, lhs, rhs); break; } case GIMPLE_SWITCH: val = gimple_switch_index (stmt); break; (Anything in the middle-end that relies on input_location is broken. Unfortunately, we don't have enough people to take care of cleaning up this) The other location issue is PR63451.