+2006-11-22 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR rtl-optimization/29924
+ * loop-unroll.c (split_edge_and_insert): Handle the case insns is NULL.
+ (unroll_loop_runtime_iterations): Assert that the argument passed to
+ split_edge_and_insert is not NULL.
+ * loop-doloop.c (add_test): Ditto.
+
+2006-11-22 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-loop-linear.c (linear_transform_loops): Use single_exit accessor
+ functions.
+ * tree-ssa-loop-niter.c (loop_only_exit_p): Ditto.
+ * cfgloopmanip.c (update_single_exits_after_duplication,
+ update_single_exit_for_duplicated_loop, loop_version): Ditto.
+ * tree-scalar-evolution.c (get_loop_exit_condition,
+ get_exit_conditions_rec, loop_closed_phi_def,
+ number_of_iterations_in_loop, scev_const_prop): Ditto.
+ * tree-ssa-loop-ivopts.c (single_dom_exit): Ditto.
+ * modulo-sched.c (generate_prolog_epilog, loop_canon_p, sms_schedule):
+ Ditto.
+ * tree-ssa-loop-ivcanon.c (canonicalize_loop_induction_variables):
+ Ditto.
+ * tree-vectorizer.c (slpeel_update_phis_for_duplicate_loop,
+ slpeel_update_phi_nodes_for_guard1, slpeel_update_phi_nodes_for_guard2,
+ slpeel_make_loop_iterate_ntimes,
+ slpeel_tree_duplicate_loop_to_edge_cfg, slpeel_can_duplicate_loop_p,
+ slpeel_verify_cfg_after_peeling, slpeel_tree_peel_loop_to_edge):
+ Ditto.
+ * tree-if-conv.c (if_convertible_loop_p): Ditto.
+ * tree-vect-analyze.c (vect_analyze_operations, vect_stmt_relevant_p,
+ vect_analyze_loop_form): Ditto.
+ * lambda-code.c (lambda_loopnest_to_gcc_loopnest, exit_phi_for_loop_p,
+ can_convert_to_perfect_nest, perfect_nestify): Ditto.
+ * tree-vect-transform.c (vect_create_epilog_for_reduction,
+ vect_update_ivs_after_vectorizer, vect_do_peeling_for_loop_bound,
+ vect_transform_loop): Ditto.
+ * cfgloop.c (mark_single_exit_loops, verify_loop_structure): Ditto.
+ (single_exit, set_single_exit): New functions.
+ * cfgloop.h (struct loop): Rename single_exit field to single_exit_.
+ (single_exit, set_single_exit): Declare.
+ * doc/loop.texi: Undocument single_exit field. Document single_exit
+ accessor function.
+
+2006-11-22 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/29902
+ * tree-ssa-loop-manip.c (can_unroll_loop_p): Return false if
+ any involved ssa name appears in abnormal phi node.
+
+2006-11-21 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_char_to_class): Delete.
+ (xtensa_const_ok_for_letter_p): Delete.
+ (xtensa_extra_constraint): Delete.
+ (override_options): Delete xtensa_char_to_class initialization.
+ * config/xtensa/xtensa.h (REG_CLASS_FROM_LETTER): Delete.
+ (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
+ (EXTRA_CONSTRAINT): Delete.
+ * config/xtensa/xtensa.md: Include constraints.md.
+ (call_internal): Combine alternatives.
+ (call_value_internal): Likewise, and remove invalid constraints.
+ * config/xtensa/constraints.md: New file.
+ * config/xtensa/xtensa-protos.h (xtensa_const_ok_for_letter_p): Delete.
+ (xtensa_extra_constraint): Delete.
+ * doc/md.texi (Machine Constraints): Refer to constraints.md for
+ Xtensa constraints.
+
+2006-11-21 Janis Johnson <janis187@us.ibm.com>
+
+ * config/dfp-bits.c (DFP_TO_INT): Remove code to saturate result
+ of conversion that doesn't fit.
+
+ * config/dfp-bit.h (CONTEXT_TRAPS, CONTEXT_ERRORS, DFP_RAISE): Delete.
+ * config/dfp-bit.c (dfp_unary_op, dfp_binary_op, dfp_compare_op,
+ DFP_TO_DFP, INT_TO_DFP, BFP_TO_DFP): Remove calls to DFP_RAISE.
+
+ * config/dfp-bit.c (dfp_binary_func): Fix typedef.
+
+2006-11-21 Douglas Gregor <doug.gregor@gmail.com>
+
+ * c-common.h (enum rid): Add RID_STATIC_ASSERT.
+
2006-11-21 Richard Guenther <rguenther@suse.de>
* tree-vectorizer.h (NUM_PATTERNS): Increase.