OSDN Git Service

PR middle-end/42228
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index b90eb2b..b027bc9 100644 (file)
@@ -1,3 +1,38 @@
+2009-12-10  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/42228
+       PR middle-end/42110
+       * cgraph.c (cgraph_create_edge_including_clones): Add old_stmt parameter;
+       update edge if it already exists.
+       (cgraph_remove_node): Handle correctly cases where we are removing node having
+       clones.
+       * cgraph.h (cgraph_create_edge_including_clones): Declare.
+       (verify_cgraph_node): Add missing error_found = true code.
+       (cgraph_materialize_all_clones): Remove call edges of dead nodes.
+       * ipa.c (cgraph_remove_unreachable_nodes): Correctly look for master
+       clone; fix double linked list removal.
+       * tree-inline.c (copy_bb): Update cgraph_create_edge_including_clones call;
+       fix frequency of newly created edge.
+
+2009-12-10  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       PR rtl-opt/42216
+       * regrename.c: Error out if MAX_RECOG_OPERANDS is larger than
+       HOST_BITS_PER_WIDE_INT.
+       (verify_reg_in_set): New function, broken out of verify_reg_tracked.
+       (verify_reg_tracked): Use it.
+       (scan_rtx_reg): When seeing a use involving a superset of the
+       registers in an existing chain, enlarge that chain.  Otherwise,
+       allow subsets and set fail_current_block for all other kinds of
+       overlap.
+       (hide_operands): New argument UNTRACKED_OPERANDS; callers changed.
+       Do not modify operands when the bit with the corresponding number
+       is set in that bitmap.
+       (build_def_use): When we see matching operands with different
+       modes, don't set fail_current_block, but keep track of such
+       operands in a bitmap if their registers aren't already tracked
+       in an open chain.  Pass this bitmap to all hide_operands calls.
+
 2009-12-10  Richard Guenther  <rguenther@suse.de>
 
        PR tree-optimization/42337