+2009-04-07 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/ia64/ia64.c (ia64_builtins): Add IA64_BUILTIN_HUGE_VALQ.
+ (ia64_init_builtins): Handle IA64_BUILTIN_HUGE_VALQ.
+ (ia64_expand_builtin): Likewise.
+
+2009-04-07 Martin Jambor <mjambor@suse.cz>
+
+ * tree-ssa-alias.c (refs_may_alias_p_1): Check for
+ is_gimple_min_invariant rather than CONSTANT_CLASS_P so that invariant
+ ADDR_EXPRS are include too.
+
+2009-04-07 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Non-aliased
+ decls are only used if passes as parameters or if they are
+ local statics and the call is not to a builtin.
+ (call_may_clobber_ref_p_1): Likewise.
+
+2009-04-07 Paolo Bonzini <bonzini@gnu.org>
+
+ * expr.c (do_store_flag): Remove last argument. Simplify code
+ to avoid duplication of tests already done by can_compare_p.
+ (expand_expr_real_1): Adjust caller.
+
+2009-04-07 Paolo Bonzini <bonzini@gnu.org>
+
+ * optabs.c (can_compare_p): Test the predicate of a
+ cbranch and cstore pattern.
+
+2009-04-07 Paolo Bonzini <bonzini@gnu.org>
+
+ * expr.c (convert_move): Use emit_store_flag instead of
+ "emulating" it.
+
+2009-04-07 Paolo Bonzini <bonzini@gnu.org>
+
+ * config/i386/i386.c (ix86_compare_emitted): Remove.
+ (ix86_expand_compare, ix86_expand_branch): Handle MODE_CC
+ ix86_compare_op0 like ix86_compare_emitted used to be handled.
+ * config/i386/i386.h (ix86_compare_emitted): Remove.
+ * config/i386/i386.md (stack_protect_test): Set ix86_compare_op0
+ instead of ix86_compare_emitted.
+ * config/i386/sync.md (sync_compare_and_swap_cc): Likewise.
+
+2009-04-07 Andrew Stubbs <ams@codesourcery.com>
+
+ * config.gcc (sh-*-*): Add sysroot-suffix.h to tm_file.
+ Add t-sysroot-suffix to tmake_file.
+ * config/print-sysroot-suffix.sh: New file.
+ * config/t-sysroot-suffix: New file.
+
+2009-04-07 Ben Elliston <bje@au.ibm.com>
+
+ * libgcc2.c (INFINITY): Use __builtin_huge_val, not __builtin_inf,
+ as the latter produces a warning when the target does not support
+ infinity.
+
+2009-04-07 Ben Elliston <bje@au.ibm.com>
+
+ * dfp.c: Replace type punning assignments with memcpy throughout.
+ * Makefile.in (dfp.o-warn): Remove.
+
+2009-04-07 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/39634
+ * config.gcc: Merge powerpc-*-linux* and powerpc64-*-linux*.
+ Include soft-fp/t-softfp after rs6000/t-linux64.
+
+2009-04-06 Eric Botcazou <ebotcazou@adacore.com>
+
+ * stor-layout.c (set_sizetype): Use the full precision of their
+ machine mode for bitsize types.
+
+2009-04-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/i386/i386.md: Revert 2 accidental checkins.
+
+2009-04-06 Joey Ye <joey.ye@intel.com>
+ Xuepeng Guo <xuepeng.guo@intel.com>
+ H.J. Lu <hongjiu.lu@intel.com>
+
+ Atom pipeline model, tuning and insn selection.
+ * config.gcc (atom): Add atom config options and target.
+
+ * config/i386/atom.md: New.
+
+ * config/i386/i386.c (atom_cost): New cost.
+ (m_ATOM): New macro flag.
+ (initial_ix86_tune_features): Set m_ATOM.
+ (x86_accumulate_outgoing_args): Likewise.
+ (x86_arch_always_fancy_math_387): Likewise.
+ (processor_target): Add Atom cost.
+ (cpu_names): Add Atom cpu name.
+ (override_options): Set Atom ISA.
+ (ix86_issue_rate): New case PROCESSOR_ATOM.
+ (ix86_adjust_cost): Likewise.
+
+ * config/i386/i386.h (TARGET_ATOM): New target macro.
+ (ix86_tune_indices): Add X86_TUNE_OPT_AGU.
+ (TARGET_OPT_AGU): New target option.
+ (target_cpu_default): Add TARGET_CPU_DEFAULT_atom.
+ (processor_type): Add PROCESSOR_ATOM.
+
+ * config/i386/i386.md (cpu): Add new value "atom".
+ (use_carry, movu): New attr.
+ (atom.md): Include atom.md.
+ (adddi3_carry_rex64): Set attr "use_carry".
+ (addqi3_carry): Likewise.
+ (addhi3_carry): Likewise.
+ (addsi3_carry): Likewise.
+ (*addsi3_carry_zext): Likewise.
+ (subdi3_carry_rex64): Likewise.
+ (subqi3_carry): Likewise.
+ (subhi3_carry): Likewise.
+ (subsi3_carry): Likewise.
+ (x86_movdicc_0_m1_rex64): Likewise.
+ (*x86_movdicc_0_m1_se): Likewise.
+ (x86_movsicc_0_m1): Likewise.
+ (*x86_movsicc_0_m1_se): Likewise.
+ (*adddi_1_rex64): Emit add insn as much as possible.
+ (*addsi_1): Likewise.
+ (return_internal): Set atom_unit.
+ (return_internal_long): Likewise.
+ (return_pop_internal): Likewise.
+ (*rcpsf2_sse): Set atom_sse_attr attr.
+ (*qrt<mode>2_sse): Likewise.
+ (*prefetch_sse): Likewise.
+
+ * config/i386/i386-c.c (ix86_target_macros_internal): New case
+ PROCESSOR_ATOM.
+ (ix86_target_macros_internal): Likewise.
+
+ * config/i386/sse.md (cpu): Set attr "atom_sse_attr".
+ (*prefetch_sse_rex): Likewise.
+ (sse_rcpv4sf2): Likewise.
+ (sse_vmrcpv4sf2): Likewise.
+ (sse_sqrtv4sf2): Likewise.
+ (<sse>_vmsqrt<mode>2): Likewise.
+ (sse_ldmxcsr): Likewise.
+ (sse_stmxcsr): Likewise.
+ (*sse_sfence): Likewise.
+ (sse2_clflush): Likewise.
+ (*sse2_mfence): Likewise.
+ (*sse2_lfence): Likewise.
+ (avx_movup<avxmodesuffixf2c><avxmodesuffix>): Set attr "movu".
+ (<sse>_movup<ssemodesuffixf2c>): Likewise.
+ (avx_movdqu<avxmodesuffix>): Likewise.
+ (avx_lddqu<avxmodesuffix>): Likewise.
+ (sse2_movntv2di): Change attr "type" to "ssemov".
+ (sse2_movntsi): Likewise.
+ (rsqrtv8sf2): Change attr "type" to "sseadd".
+ (sse3_addsubv2df3): Set attr "atom_unit".
+ (sse3_h<plusminus_insn>v4sf3): Likewise.
+ (*sse2_pmaddwd): Likewise.
+ (*vec_extractv2di_1_rex64): Likewise.
+ (*vec_extractv2di_1_avx): Likewise.
+ (sse2_psadbw): Likewise.
+ (ssse3_phaddwv8hi3): Likewise.
+ (ssse3_phaddwv4hi3): Likewise.
+ (ssse3_phadddv4si3): Likewise.
+ (ssse3_phadddv2si3): Likewise.
+ (ssse3_phaddswv8hi3): Likewise.
+ (ssse3_phaddswv4hi3): Likewise.
+ (ssse3_phsubwv8hi3): Likewise.
+ (ssse3_phsubwv4hi3): Likewise.
+ (ssse3_phsubdv4si3): Likewise.
+ (ssse3_phsubdv2si3): Likewise.
+ (ssse3_phsubswv8hi3): Likewise.
+ (ssse3_phsubswv4hi3): Likewise.
+ (ssse3_pmaddubsw128): Likewise.
+ (sse3_pmaddubsw: Likewise.
+ (ssse3_palignrti): Likewise.
+ (ssse3_palignrdi): Likewise.
+
+2009-04-06 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * doc/install.texi (Specific): Fix two cross-references to MinGW.
+
+2009-04-06 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/28868
+ * tree-ssa-pre.c (inserted_phi_names): New bitmap to keep track
+ of which PHI results we inserted.
+ (insert_into_preds_of_block): Record inserted PHIs.
+ (eliminate): Eliminate redundant PHI nodes.
+ (init_pre): Init inserted_phi_names.
+
+2009-04-06 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/39643
+ * tree-ssa-ccp.c (ccp_fold): Fold REALPART_EXPRs and
+ IMAGPART_EXPRs of complex constants.
+ (execute_fold_all_builtins): If we folded a call queue
+ TODO_update_address_taken.
+
+2009-04-06 Jan Hubicka <jh@suse.cz>
+
+ PR middle-end/39659
+ * except.c (remove_unreachable_regions): Propagate may_contain_throw
+ flag.
+
+2009-04-06 Andrew Stubbs <ams@codesourcery.com>
+
+ * config/sh/lib1funcs.asm (ic_invalidate): Move ICBI out of the
+ delay slot.
+ (ic_invalidate_array): Likewise.
+
+2009-04-06 Hariharan Sandanagobalane <hariharan@picochip.com>
+
+ * calls.c (emit_library_call_value_1): Fix a problem with parameter
+ alignment for library calls.
+
+2009-04-06 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config.gcc (mingw32 tm_file): Add mingw-stdint.h.
+ (mingw32 tm clause use_gcc_stdint): Set to wrap.
+ * config/i386/mingw-stdint.h: New file.
+
+2009-04-05 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/39648
+ * tree-ssa-sccvn.c (vn_reference_fold_indirect): Work around
+ our &A vs. &A[0] IL deficiencies.
+
+2009-04-04 Jan Hubicka <jh@suse.cz>
+
+ * except.c (sjlj_find_directly_reachable_regions): Be ready for
+ removed toplevel regions.
+ (sjlj_mark_call_sites): Likewise.
+
+2009-04-04 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ * config.gcc (cygwin tm_file): Add cygwin-stdint.h.
+ (cygwin tm clause use_gcc_stdint): Set to wrap.
+ * config/i386/cygwin-stdint.h: New file.
+
+2009-04-04 Richard Guenther <rguenther@suse.de>
+
+ * Makefile.in (tree-ssa-copy.o): Add $(CFGLOOP_H) dependency.
+ * tree-ssa-copy.c (init_copy_prop): Do not propagate through
+ single-argument PHIs if we are in loop-closed SSA form.
+ * tree-vect-loop-manip.c (slpeel_add_loop_guard): Pass extra guards
+ for the pre-condition.
+ (slpeel_tree_peel_loop_to_edge): Likewise.
+ (vect_build_loop_niters): Take an optional sequence to append stmts.
+ (vect_generate_tmps_on_preheader): Likewise.
+ (vect_do_peeling_for_loop_bound): Take extra guards for the
+ pre-condition.
+ (vect_do_peeling_for_alignment): Adjust. Unconditionally apply
+ the cost model check.
+ (vect_loop_versioning): Take stmt and stmt list to put pre-condition
+ guards if we are going to peel. Do not apply versioning in that
+ case.
+ * tree-vectorizer.h (vect_loop_versioning): Adjust declaration.
+ (vect_do_peeling_for_loop_bound): Likewise.
+ * tree-vect-loop.c (vect_transform_loop): If we are peeling for
+ loop bound only record extra pre-conditions, do not apply loop
+ versioning.
+
+2009-04-04 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-operands.c (pop_stmt_changes): Remove automatic
+ renaming code.
+
+2009-04-04 Jan Hubicka <jh@suse.cz>
+
+ * tree-ssa-uncprop.c (associate_equivalences_with_edges): Use
+ last_basic_block for size of bb->index indexed array.
+ * bt-load.c (compute_defs_uses_and_gen, compute_kill,
+ compute_out, link_btr_uses, build_btr_def_use_webs,
+ build_btr_def_use_webs, migrate_btr_defs): Likewise.
+
+2009-04-04 Jan Hubicka <jh@suse.cz>
+
+ * except.c (remove_eh_handler_and_replace): Break out from ...
+ (remove_eh_handler): ... here.
+ (bring_to_root): New function.
+ (remove_unreachable_regions): Collect MUST_NOT_THROW, unify runtime
+ handled ones, bring others to root of tree.
+
+2009-04-04 Jan Hubicka <jh@suse.cz>
+
+ * tree-eh.c (tree_empty_eh_handler_p): Pattern match more curefully.
+ (all_phis_safe_to_merge): New function.
+ (update_info): New structure.
+ (make_eh_edge_and_update_phi, update_eh_edges): New functions.
+ (cleanup_empty_eh): Update SSA if possible.
+
+2009-04-04 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa.c (verify_ssa): With -O0 we do not need VOPs.
+ * tree-ssa-operands.c (append_vdef): Do not append VOPs at -O0.
+ (append_vuse): Likewise.
+
2009-04-04 Jakub Jelinek <jakub@redhat.com>
* unwind-dw2.h (_Unwind_FrameState): Add REG_UNDEFINED enum value.
2009-03-31 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
- PR target/27237
+ PR target/27237
* doc/invoke.texi (ARM Options): Update documentation for -mthumb.
2009-03-31 Richard Guenther <rguenther@suse.de>
2009-03-30 Paolo Bonzini <bonzini@gnu.org>
- * combine.c (simplify_comparison): Use have_insn_for.
- * dojump.c (do_jump): Likewise.
+ * combine.c (simplify_comparison): Use have_insn_for.
+ * dojump.c (do_jump): Likewise.
2009-03-30 Paolo Bonzini <bonzini@gnu.org>
2009-03-30 Paolo Bonzini <bonzini@gnu.org>
- * cfglayout.c (pass_into_cfg_layout_mode, pass_outof_cfg_layout_mode):
- Provide/destroy PROP_cfglayout respectively.
- * gcse.c (pass_jump_bypass, pass_gcse): Require it.
- * tree-pass.h (PROP_cfglayout): New.
+ * cfglayout.c (pass_into_cfg_layout_mode, pass_outof_cfg_layout_mode):
+ Provide/destroy PROP_cfglayout respectively.
+ * gcse.c (pass_jump_bypass, pass_gcse): Require it.
+ * tree-pass.h (PROP_cfglayout): New.
2009-03-30 Paolo Bonzini <bonzini@gnu.org>