+2007-01-09 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*sinxf2): Rename to *sinxf2_i387.
+ (*cosxf2): Rename to cosxf2_i387.
+
+ (*sindf2, *sinsf2): Extend operand 1 to XFmode. Macroize patterns
+ using X87MODEF12 mode macro. Rename patterns to
+ *sin_extend<mode>xf2_i387. Use SSE_FLOAT_MODE_P to disable patterns
+ for SSE math.
+ (*cosdf2, *cossf2): Ditto.
+ (sincosdf3, sincossf3): Ditto. Rewrite corresponding splitters
+ to match extended input operands.
+
+ (sincos<mode>3): New expander.
+
+ (*sinextendsfdf2, *cosextendsfdf2, *sincosextendsfdf3): Remove
+ insn patterns and corresponding splitters.
+
+2007-01-09 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/t-linux (TARGET_LIBGCC2_CFLAGS): Delete.
+ (SHLIB_MAPFILES, SHLIB_LINK, SHLIB_INSTALL): Likewise.
+
+2007-01-09 Nicolas Pitre <nico@cam.org>
+
+ PR target/30173
+ * arm/ieee754-df.S (Lad_s): Also test the low word of X for zero.
+
+2007-01-08 Geoffrey Keating <geoffk@apple.com>
+
+ * target.h (struct gcc_target): New field library_rtti_comdat.
+ * target-def.h (TARGET_CXX_LIBRARY_RTTI_COMDAT): New.
+ (TARGET_CXX): Add TARGET_CXX_LIBRARY_RTTI_COMDAT.
+ * doc/tm.texi (C++ ABI): Document TARGET_CXX_LIBRARY_RTTI_COMDAT.
+ * config/darwin.h (TARGET_CXX_LIBRARY_RTTI_COMDAT): Define.
+
+2007-01-08 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/invoke.texi (Optimize Options): Correct description of -O0.
+
+2007-01-08 Richard Guenther <rguenther@suse.de>
+
+ * tree.h (force_fit_type_double): Export.
+ (force_fit_type): Remove.
+ * fold-const.c (force_fit_type_double): New function.
+ (force_fit_type): Remove.
+ (int_const_binop): Use it.
+ (fold_convert_const_int_from_int): Likewise.
+ (fold_convert_const_int_from_real): Likewise.
+ (fold_div_compare): Likewise.
+ (fold_sign_changed_comparison): Likewise.
+ (fold_unary): Likewise.
+ (fold_negate_const): Likewise.
+ (fold_abs_const): Likewise.
+ (fold_not_const): Likewise.
+ * c-common.c (shorten_compare): Use force_fit_type_double.
+ * convert.c (convert_to_pointer): Likewise.
+
+2007-01-08 Richard Guenther <rguenther@suse.de>
+
+ * tree.h (build_int_cst_wide_type): Export.
+ * tree.c (build_int_cst_wide_type): New function.
+ (build_int_cst_wide): Fix comment.
+ * builtins.c (fold_builtin_object_size): Use build_int_cst
+ to build -1 or 0 of the correct type. Use fit_double_type
+ to check for overflow.
+ * fold-const.c (optimize_bit_field_compare): Use build_int_cst_type
+ to build the mask.
+ (decode_field_reference): Likewise.
+ (all_ones_mask_p): Likewise.
+ (native_interpret_int): Use build_int_cst_wide_type.
+ (fold_binary): Use build_int_cst_type to build an all-ones
+ value.
+ * stor-layout.c (set_sizetype): Use build_int_cst_wide_type.
+
+2007-01-08 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * config/pa/t-pa64 (libgcc_stub.a): Use $(T).
+
+2007-01-09 Ben Elliston <bje@au.ibm.com>
+
+ * genautomata.c (STATS_OPTION): New option.
+ (stats_flag): New flag.
+ (gen_automata_option): Handle it.
+ (initiate_automaton_gen): Ditto.
+ (write_automata): Output statistics only if stats_flag is
+ set. Likewise, output time statistics only if time_flag is set.
+ * doc/md.texi (Processor pipeline description): Document new flag.
+
+2007-01-08 Richard Guenther <rguenther@suse.de>
+
+ * builtins.c (fold_builtin_int_roundingfn): Use fit_double_type.
+ * tree.c (build_int_cst_type): Likewise.
+ (size_in_bytes): Don't call force_fit_type on the result.
+ (int_fits_type_p): Use fit_double_type.
+ * fold-const.c (fit_double_type): New function.
+ (force_fit_type): Use it.
+ * tree.h (fit_double_type): Export.
+
+2007-01-08 Jan Hubicka <jh@suse.cz>
+
+ * tree-vectorizer.c (gate_increase_alignment): Fix return type.
+ * ipa.c (function_and_variable_visibility): Fix return type.
+
+2007-01-08 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Use type
+ of offset to build the index.
+ * tree-pretty-print.c (dump_generic_node): Don't build negated
+ const just for printing.
+ * c-pretty-print.c (pp_c_integer_constant): Likewise.
+ * builtins.c (fold_builtin_int_roundingfn): Check if result
+ fits the type by using force_fit_type and comparing the result.
+ * predict.c (predict_loops): Use compare_tree_int for comparison.
+ * tree.c (build_int_cst): Fall back to integer_type_node for
+ NULL_TREE type.
+ (build_int_cst_wide): Assert type is non-null.
+
+2007-01-08 Roberto Costa <roberto.costa@st.com>
+
+ * tree-vrp.c (extract_range_from_cond_expr): New.
+ (extract_range_from_expr): Handle COND_EXPR nodes used as expressions.
+ * tree-ssa-ccp.c (get_maxval_strlen): Handle COND_EXPR nodes used
+ as expressions.
+ (fold_stmt): Bug fix, avoid infinite recursion when folding COND_EXPRs.
+ * tree-ssa-forwprop.c (simplify_cond, forward_propagate_into_cond,
+ tree_ssa_forward_propagate_single_use_vars): Handle COND_EXPR nodes
+ used as expressions.
+ * tree-object-size.c (cond_expr_object_size): New.
+ (collect_object_sizes_for): Handle COND_EXPR nodes used as expressions.
+
+2007-01-08 Jan Hubicka <jh@suse.cz>
+
+ * tree-ssa-forwprop.c (forward_propagate_into_cond,
+ tree_ssa_forward_propagate_single_use_va): Release defs of propagated
+ statement.
+
+2007-01-08 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/23603
+ * tree-vrp.c (set_value_range_to_truthvalue): New function.
+ (extract_range_from_binary): Fall back to truthvalue instead of
+ varying for TRUTH_*_EXPR.
+ (extract_range_from_comparison): Fall back to truthvalue instead of
+ varying.
+ (vrp_visit_phi_node): Don't adjust new range bounds to +INF/-INF
+ if all visited PHI values were constant.
+
+2007-01-08 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_process_new_functions): Reset reachable flag.
+ (cgraph_analyze_function): break out from ...
+ (cgraph_finalize_compilation_unit): ... here.
+ (cgraph_expand_function): Remove forgoten commented out line.
+ (cgraph_optimize): Analyze functions.
+
+2007-01-08 Jan Hubicka <jh@suse.cz>
+
+ * tree-pas.h (TODO_remove_function): New flag.
+ (TODO_update*): Renumber.
+ (pass_ipa_increase_alignment,
+ pass_ipa_function_and_variable_visibility): New passes.
+ * cgraphunit.c (cgraph_increase_alignment): Move to tree-vectorizer.c
+ (cgraph_function_and_variable_visibility): Move to ipa.c
+ (cgraph_optimize): Don't call cgraph_function_and_variable_visibility,
+ cgraph_increase_alignment.
+ * ipa-inline.c (cgraph_decide_inlining): Don't push timevar.
+ (cgraph_decide_inlining_incrementally): Push TV_INTEGRATION before
+ calling tree-inline.
+ (cgraph_early_inlining): Do not call cgraph_remove_unreachable_nodes.
+ (pass_ipa_inline, pass_early_ipa_inlining): Set TODO_remove_functions
+ * tree-vectorizer.c (increase_alignment): Move here from cgraphunit.c
+ (gate_increase_alignment): New function.
+ (pass_ipa_increase_alignment): New pass.
+ * ipa.c: Inline tree-pass.h and timevar.h
+ (function_and_variable_visibility): Move here from cgraphunit.c
+ * tree-optimize.c (pass_early_local_passes): Add TODO_remove_functions.
+ * passes.c (init_optimization_passes): Add the two new passes.
+ (execute_todo): Handle cgraph_remove_functions.
+
+2007-01-08 Nick Clifton <nickc@redhat.com>
+
+ * config/frv/predicates.md (reg_or_0_operand): Accept
+ CONST_DOUBLEs.
+
2007-01-08 Ralf Corsépius <ralf.corsepius@rtems.org>
* config/bfin/rtems.h, config/bfin/t-rtems: New.