+2011-07-05 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/49618
+ * tree-eh.c (tree_could_trap_p) <case CALL_EXPR>: For DECL_WEAK
+ t recurse on the decl.
+ <case FUNCTION_DECL, case VAR_DECL>: For DECL_WEAK decls
+ return true if expr isn't known to be defined in current
+ TU or some other LTO partition.
+
+2011-07-05 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ * params.def (PARAM_CASE_VALUES_THRESHOLD): New parameter to
+ override CASE_VALUES_THRESHOLD.
+
+ * stmt.c (toplevel): Include params.h.
+ (case_values_threshold): Use the --param case-values-threshold
+ value if non-zero, otherwise use machine dependent value.
+ (expand_case): Use case_values_threshold.
+
+ * Makefile.in (stmt.o): Add $(PARAMS_H) dependency.
+
+ * doc/invoke.texi (--param case-values-threshold): Document.
+
+2011-07-05 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (dwarf2out_cfi_label): Make static.
+ (dwarf2out_flush_queued_reg_saves): Make static.
+ (dwarf2out_reg_save): Remove.
+ (dwarf2out_return_save): Remove.
+ (dwarf2out_return_reg): Remove.
+ (dwarf2out_reg_save_reg): Remove.
+ (dwarf2out_def_cfa): Merge into ...
+ (dwarf2out_frame_init): ... here.
+ * dwarf2out.h, tree.h: Remove declarations as necessary.
+
+2011-07-05 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.c (ia64_dwarf_handle_frame_unspec): Remove.
+ (TARGET_DWARF_HANDLE_FRAME_UNSPEC): Remove.
+ (ia64_expand_epilogue): Emit an empty FRAME_RELATED_EXPR for
+ the alloc insn.
+
+ * config/ia64/ia64.c (ia64_emit_deleted_label_after_insn): Remove.
+ (IA64_CHANGE_CFA_IN_EPILOGUE): Remove.
+ (process_epilogue): Don't call dwarf2out_def_cfa.
+
+ * config/ia64/ia64.c (ia64_expand_prologue): Use pc_rtx to
+ indicate the return address save.
+ (process_cfa_register): Likewise.
+
+ * config/ia64/ia64.c (ia64_dwarf2out_def_steady_cfa): Remove.
+ (process_cfa_adjust_cfa, ia64_asm_unwind_emit): Don't call it.
+
+ * config/ia64/ia64.c (ia64_expand_prologue): Emit REG_CFA_REGISTER
+ for ar.pfs save at alloc insn.
+
+2011-07-05 Richard Henderson <rth@redhat.com>
+
+ * config/arm/arm.c (arm_dwarf_handle_frame_unspec): Remove.
+ (TARGET_DWARF_HANDLE_FRAME_UNSPEC): Remove.
+ (arm_expand_prologue): Use REG_CFA_REGISTER to mark the
+ stack pointer save.
+ (arm_unwind_emit_set): Don't recognize UNSPEC_STACK_ALIGN.
+ (arm_unwind_emit): Walk REG_NOTES for unwinding notes. Emit
+ proper unwind info for a REG_CFA_REGISTER save of stack pointer.
+ * config/arm/arm.md (UNSPEC_STACK_ALIGN): Remove.
+
+2011-07-05 Richard Henderson <rth@redhat.com>
+
+ * config/vax/vax.md (define_c_enum unspecv): New. Define the
+ VUNSPEC_* constants here instead of via define_constants.
+ (VUNSPEC_PEM): New constant.
+ (procedure_entry_mask): New insn.
+ (prologue): New expander.
+ * config/vax/vax.c (vax_add_reg_cfa_offset): New.
+ (vax_expand_prologue): Rename from vax_output_function_prologue;
+ emit rtl instead of text.
+ (TARGET_ASM_FUNCTION_PROLOGUE): Remove.
+ (print_operand): Add 'x' prefix.
+
+2011-07-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR middle-end/47715
+ * calls.c (precompute_register_parameters): Promote the function
+ argument before checking non-legitimate constant.
+
+2011-07-05 Sebastian Pop <sebastian.pop@amd.com>
+
+ PR tree-optimization/47654
+ * graphite-blocking.c (pbb_strip_mine_time_depth): Do not return bool.
+ (lst_do_strip_mine_loop): Return an int.
+ (lst_do_strip_mine): Same.
+ (scop_do_strip_mine): Same.
+ (scop_do_block): Loop blocking should strip-mine at least two loops.
+ * graphite-interchange.c (lst_interchange_select_outer): Return an int.
+ (scop_do_interchange): Same.
+ * graphite-poly.h (scop_do_interchange): Update declaration.
+ (scop_do_strip_mine): Same.
+
+2011-07-05 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-clast-to-gimple.c (precision_for_value): Removed.
+ (precision_for_interval): Removed.
+ (gcc_type_for_interval): Use mpz_sizeinbase.
+
+2011-07-05 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-ppl.h (value_max): Correct computation of max.
+
+2011-07-05 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-clast-to-gimple.c (clast_name_to_index): Add missing space.
+
+2011-07-05 Richard Guenther <rguenther@suse.de>
+
+ * c-decl.c (c_init_decl_processing): Defer building common
+ tree nodes to c_common_nodes_and_builtins.
+
+2011-07-05 Razya Ladelsky <razya@il.ibm.com>
+
+ PR tree-optimization/49580
+ * tree-cfg.c (gimple_duplicate_sese_tail): Remove handling of
+ the loop's number of iterations.
+ * tree-parloops.c (transform_to_exit_first_loop): Add the
+ handling of the loop's number of iterations before the call
+ to gimple_duplicate_sese_tail.
+ Insert the stmt caclculating the new rhs of the loop's
+ condition stmt to the preheader instead of iters_bb.
+
+2011-07-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR rtl-optimization/47449
+ * fwprop.c (forward_propagate_subreg): Don't propagate hard
+ register nor zero/sign extended hard register.
+
+2011-07-05 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49518
+ PR tree-optimization/49628
+ * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Skip
+ irrelevant and invariant data-references.
+ (vect_analyze_data_ref_access): For invariant loads clear the
+ group association.
+
+2011-07-04 Jakub Jelinek <jakub@redhat.com>
+
+ PR rtl-optimization/49619
+ * combine.c (combine_simplify_rtx): In PLUS -> IOR simplification
+ pass VOIDmode as op0_mode to recursive call, and return temp even
+ when different from tor, just if it is not IOR of the original
+ PLUS arguments.
+
+ PR rtl-optimization/49472
+ * simplify-rtx.c (simplify_unary_operation_1) <case NEG>: When
+ negating MULT, negate the second operand instead of first.
+ (simplify_binary_operation_1) <case MULT>: If one operand is
+ a NEG and the other is MULT, don't attempt to optimize by
+ negation of the MULT operand if it only moves the NEG operation
+ around.
+
+ PR debug/49602
+ * tree-into-ssa.c (rewrite_debug_stmt_uses): Disregard
+ get_current_def return value if it can't be trusted to be
+ the current value of the variable in the current bb.
+
+2011-07-04 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/49600
+ * config/i386/i386.md (SSE2 int->float split): Push operand 1 in
+ general register to memory for !TARGET_INTER_UNIT_MOVES.
+
+2011-07-04 Georg-Johann Lay <avr@gjlay.de>
+
+ PR target/44643
+ * config/avr/avr.c (avr_insert_attributes): Use TYPE_READONLY
+ instead of TREE_READONLY.
+
+2011-07-04 Georg-Johann Lay <avr@gjlay.de>
+
+ * doc/extend.texi (AVR Built-in Functions): Update documentation
+ of __builtin_avr_fmul*.
+ * config/avr/avr.c (avr_init_builtins): Don't depend on AVR_HAVE_MUL.
+ * config/avr/avr-c.c (avr_cpu_cpp_builtins): Ditto.
+ * config/avr/avr.md (fmul): Rename to fmul_insn.
+ (fmuls): Rename to fmuls_insn.
+ (fmulsu): Rename to fmulsu_insn.
+ (fmul,fmuls,fmulsu): New expander.
+ (*fmul.call,*fmuls.call,*fmulsu.call): New Insn.
+ * config/avr/t-avr (LIB1ASMFUNCS): Add _fmul, _fmuls, _fmulsu.
+ * config/avr/libgcc.S (__fmul): New function.
+ (__fmuls): New function.
+ (__fmulsu,__fmulsu_exit): New function.
+
+2011-07-04 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49615
+ * tree-cfgcleanup.c (split_bbs_on_noreturn_calls): Fix
+ basic-block index check.
+
+2011-07-04 Georg-Johann Lay <avr@gjlay.de>
+
+ * longlong.h (count_leading_zeros, count_trailing_zeros,
+ COUNT_LEADING_ZEROS_0): Define for target avr if W_TYPE_SIZE is 16
+ resp. 64.
+
+2011-07-03 Ira Rosen <ira.rosen@linaro.org>
+
+ PR tree-optimization/49610
+ * tree-vect-loop.c (vect_is_slp_reduction): Check that DEF_STMT has
+ a basic block.
+
+2011-07-02 Eric Botcazou <ebotcazou@adacore.com>
+ Olivier Hainque <hainque@adacore.com>
+ Nicolas Setton <setton@adacore.com>
+
+ * tree.h (TYPE_ARTIFICIAL): New flag.
+ * dwarf2out.c (modified_type_die): Add a DW_AT_artificial attribute to
+ the DIE of the type if it is artificial.
+ (gen_array_type_die): Likewise.
+ (gen_enumeration_type_die): Likewise.
+ (gen_struct_or_union_type_die): Likewise.
+ * lto-streamer-in.c (unpack_ts_base_value_fields): Use TYPE_ARTIFICIAL.
+ * lto-streamer-out.c (pack_ts_base_value_fields): Likewise.
+
+2011-07-01 Jakub Jelinek <jakub@redhat.com>
+
+ * tree-object-size.c (pass_through_call): Handle
+ BUILT_IN_ASSUME_ALIGNED.
+
+2011-07-01 Martin Jambor <mjambor@suse.cz>
+
+ * tree-sra.c (tree_non_mode_aligned_mem_p): Also ignore MEM_REFs.
+
+2011-07-01 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR middle-end/48016
+ * explow.c (update_nonlocal_goto_save_area): Use proper mode
+ for stack save area.
+ * function.c (expand_function_start): Likewise.
+
+2011-07-01 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/49596
+ * cgraph.h (varpool_all_refs_explicit_p): Not analyzed nodes
+ may have unknown refs.
+
+2011-07-01 Kai Tietz <ktietz@redhat.com>
+
+ * tree-ssa-forwprop.c (simplify_bitwise_binary): Fix typo.
+
+2011-07-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config.gcc: Obsolete alpha*-dec-osf5.1, mips-sgi-irix6.5.
+ * doc/install.texi (Specific, alpha*-dec-osf5.1): Document it.
+ (Specific, mips-sgi-irix6): Likewise.
+
+2011-07-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR libmudflap/49549
+ * doc/sourcebuild.texi (Effective-Target Keywords): Document gld.
+
+2011-07-01 Jakub Jelinek <jakub@redhat.com>
+
+ * tree-pretty-print.c (dump_generic_code) <case CONSTRUCTOR>: Print
+ [idx]= and [idx1 ... idx2]= before initializers if needed for
+ array initializers.
+
+2011-07-01 Chen Liqin <liqin.gcc@gmail.com>
+
+ * config.gcc (score-*-elf): Remove score7.o.
+ * config/score/t-score-elf: Likewise.
+ * config/score/score.c: Merge score7 to score.c and
+ remove forwarding functions.
+ * config/score/score7.c: Deleted.
+ * config/score/score7.h: Deleted.
+
+2011-07-01 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49603
+ * tree-vect-stmts.c (vectorizable_load): Remove unnecessary assert.
+
+2011-06-30 Martin Jambor <mjambor@suse.cz>
+
+ * tree-sra.c (struct access): Rename total_scalarization to
+ grp_total_scalarization
+ (completely_scalarize_var): New function.
+ (sort_and_splice_var_accesses): Set total_scalarization in the
+ representative access.
+ (analyze_access_subtree): Propagate total scalarization accross the
+ tree, no holes in totally scalarized trees, simplify coverage
+ computation.
+ (analyze_all_variable_accesses): Call completely_scalarize_var instead
+ of completely_scalarize_record.
+
+2011-06-30 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.h (X86_TUNE_DEEP_BRANCH_PREDICTION): Remove.
+ (TARGET_DEEP_BRANCH_PREDICTION): Remove.
+ * config/i386/i386.c: Don't include dwarf2out.h.
+ (initial_ix86_tune_features): Remove X86_TUNE_DEEP_BRANCH_PREDICTION.
+ (output_set_got): Don't test TARGET_DEEP_BRANCH_PREDICTION, delete
+ all code dead thereafter. Don't do dwarf2out_flush_queued_reg_saves.
+ (ix86_expand_prologue): Set REG_CFA_FLUSH_QUEUE on set_got insn.
+ (machopic_output_stub): Don't test TARGET_DEEP_BRANCH_PREDICTION.
+
+2011-06-30 Richard Henderson <rth@redhat.com>
+
+ * reg-notes.def (REG_CFA_FLUSH_QUEUE): New.
+ * dwarf2out.c (dwarf2out_frame_debug): Handle it.
+ * final.c (final_scan_insn): Look for it, and invoke
+ dwarf2out_frame_debug before the insn if found.
+
+2011-06-30 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (dwarf2out_frame_debug_cfa_offset): Allow PC_RTX
+ as a source, and interpret that as DWARF_FRAME_RETURN_COLUMN.
+
+2011-06-30 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (struct reg_saved_in_data): Provide a typedef.
+ Define a vector of this type.
+ (regs_saved_in_regs): Use a VEC.
+ (num_regs_saved_in_regs): Remove.
+ (compare_reg_or_pc): New.
+ (record_reg_saved_in_reg): Split out from...
+ (dwarf2out_flush_queued_reg_saves): ... here.
+ (clobbers_queued_reg_save): Update for VEC.
+ (reg_saved_in): Likewise.
+ (dwarf2out_frame_debug_init): Likewise.
+ (dwarf2out_reg_save_reg): Use record_reg_saved_in_reg.
+ (dwarf2out_frame_debug_cfa_register): Likewise.
+
+2011-06-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR tree-optimization/49572
+ * tree-ssa-dom.c (initialize_hash_element) <GIMPLE_SINGLE_RHS>: Use the
+ type of the RHS instead of that of the LHS for the expression type.
+
+2011-06-30 Eric Botcazou <ebotcazou@adacore.com>
+
+ * df-scan.c (df_get_entry_block_def_set): Use INCOMING_REGNO macro
+ unconditionally.
+
+2011-06-30 Richard Guenther <rguenther@suse.de>
+
+ * opts.c (finish_options): Do not disable IPA-PTA during ltrans.
+ * tree-ssa-structalias.c (create_variable_info_for): Do not
+ add initial constraints for non-var-decls. Properly handle
+ globals in other ltrans partitions.
+ (intra_create_variable_infos): Manually create constraints for
+ the fake no-alias parameter.
+ (ipa_pta_execute): Dump the cgraph, handle ltrans partitions properly
+ and assert there are no clones.
+
+2011-06-30 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/46787
+ * tree-data-ref.c (dr_address_invariant_p): Remove.
+ (find_data_references_in_stmt): Invariant accesses are ok now.
+ * tree-vect-stmts.c (vectorizable_load): Handle invariant loads.
+ * tree-vect-data-refs.c (vect_analyze_data_ref_access): Allow
+ invariant loads.
+