+2010-04-21 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/avr/avr-devices.c (avr_mcu_types): Add missing comma.
+
+2010-04-21 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (x86_shrd): Add athlon_decode and
+ amdfam10_decode attributes.
+
+2010-04-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/43570
+ * omp-low.c (scan_sharing_clauses): Don't scan_omp_op
+ OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE.
+ (lower_copyprivate_clauses): Use private var in outer
+ context instead of original var. Make sure the types
+ are correct for VLAs.
+
+2010-04-21 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (do_ds_constraint): Avoid escaping
+ to non-pointer objects.
+
+2010-04-21 Jakub Jelinek <jakub@redhat.com>
+
+ * dwarf2out.c (add_var_loc_to_decl): Add LABEL argument. Drop
+ last chain entry if it starts with the still current label.
+ (add_location_or_const_value_attribute): Check that
+ loc_list->first->next is NULL instead of comparing ->first with
+ ->last.
+ (dwarf2out_var_location): Pass last_label resp. last_postcall_label
+ to add_var_loc_to_decl.
+
+ * dwarf2out.c (output_call_frame_info): For dw_cie_version
+ >= 4 add also address size and segment size fields into CIE
+ header.
+
+ * unwind-dw2.c (extract_cie_info): Handle CIE version 4, as
+ long as address size is the same as sizeof (void *) and
+ segment size is 0.
+ * unwind-dw2-fde.c (get_cie_encoding): Likewise. If
+ address size or segment size is unexpected, return DW_EH_PE_omit.
+ (classify_object_over_fdes): If get_cie_encoding returned
+ DW_EH_PE_omit, return -1.
+ (init_object): If classify_object_over_fdes returned -1,
+ pretend there were no FDEs at all.
+
+2010-04-21 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (bswap<mode>2): Macroize expander from
+ bswap{si,di}2 using SWI48 mode iterator.
+ (*bswap<mode>2_movbe): Macroize insn from *bswap{si,di}_movbe using
+ SWI48 mode iterator. Set type attribute of bswap insn to bitmanip,
+ set modrm attribute of bswap insn to 0 and remove length attribute.
+ (*bswap<mode>2_1): Macroize insn from *bswap{si,di}_1 using SWI48 mode
+ iterator. Set type attribute to bitmanip, set modrm attribute to 0,
+ set mode attribute to <MODE> and remove length attribute.
+
+2010-04-20 James E. Wilson <wilson@codesourcery.com>
+
+ PR rtl-optimization/43520
+ * ira-lives.c (ira_implicitly_set_insn_hard_regs): Exclude classes with
+ zero available registers.
+
+2010-04-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin_cproj): Fold more cases.
+
+2010-04-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (build_complex_cproj, fold_builtin_cproj): New.
+ (fold_builtin_1): Fold builtin cproj.
+ * builtins.def (BUILT_IN_CPROJ, BUILT_IN_CPROJF, BUILT_IN_CPROJL):
+ Use ATTR_CONST_NOTHROW_LIST.
+
+2010-04-20 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (ffs<mode>2): Macroize expander from ffs_cmove
+ and ffsdi2 using SWI48 mode iterator. Expand SImode insn through
+ ffsi2_no_cmove for !TARGET_CMOVE.
+ (ffssi2_no_cmove): Rename from *ffs_no_cmove. Make public.
+ (ffssi2): Remove expander.
+ (*ffs<mode>_1): Macroize insn from *ffs{si,di} using SWI48
+ mode iterator.
+ (ctz<mode>2): Ditto from ctz{si,di}2.
+ (clz<mode>2): Macroize expander from ctz{hi,si,di}2 using SWI248
+ mode iterator.
+ (clz<mode>2_abm): Macroize insn from clz{hi,si,di}2_abm using SWI248
+ mode iterator.
+
+2010-04-20 Jakub Jelinek <jakub@redhat.com>
+
+ * dwarf2out.c (AT_linkage_name): Define.
+ (clone_as_declaration): Handle DW_AT_linkage_name.
+ (add_name_and_src_coords_attributes): Use AT_linkage_name instead
+ of DW_AT_MIPS_linkage_name.
+ (move_linkage_attr): Likewise.
+ (dwarf2out_finish): Likewise.
+
+2010-04-20 Xinliang David Li <davidxl@gcc.gnu.org>
+
+ PR middle-end/41952
+ * fold-const.c (fold_comparison): New folding rule.
+
+2010-04-20 Anatoly Sokolov <aesok@post.ru>
+
+ * double-int.h (double_int_setbit): Declare.
+ * double-int.c (double_int_setbit): New function.
+ * rtl.h (immed_double_int_const): Declare.
+ * emit-rtl.c (immed_double_int_const): New function.
+ * builtins.c (expand_builtin_signbit): Clean up, use double_int_*
+ and immed_double_int_const functions.
+ * optabs.c (expand_absneg_bit, expand_copysign_absneg,
+ expand_copysign_bit): (Ditto.).
+ * simplify-rtx.c (simplify_binary_operation_1): (Ditto.).
+ * tree-ssa-address.c (addr_for_mem_ref): (Ditto.).
+ * dojump.c (prefer_and_bit_test): (Ditto.).
+ * expr.c (convert_modes, reduce_to_bit_field_precision,
+ const_vector_from_tree): (Ditto.).
+ * expmed.c (mask_rtx, lshift_value): (Ditto.).
+
+2010-04-20 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_remove_node): Kill bodies in other partitoin.
+ (dump_cgraph_node): Dump new flags.
+ * cgraph.h (struct cgraph_node): Add flags
+ reachable_from_other_partition and in_other_partition.
+ (cgraph_can_remove_if_no_direct_calls_p): Functions used by
+ other partition can not be removed.
+ * cgraphunit.c (cgraph_mark_functions_to_output): Functions used by
+ the other partition must be output; silence sanity checking on
+ leaking functions bodies from other paritition.
+ * lto-cgraph.c (reachable_from_other_partition_p): New function.
+ (lto_output_node): Output new flags; do not sanity check that inline
+ clones are output; drop lto_forced_extern_inline_p code; do not mock
+ visibility flags at partition boundaries.
+ (add_node_to): New function.
+ (output_cgraph): Use it to sort functions so masters appear before
+ clones.
+ (input_overwrite_node): Input new flags.
+ * passes.c (ipa_write_summaries): Do not call
+ lto_new_extern_inline_states.
+ * lto-section-out.c (forced_extern_inline, lto_new_extern_inline_states,
+ lto_delete_extern_inline_states, lto_force_functions_extern_inline,
+ lto_forced_extern_inline_p): Kill.
+ * lto-streamer.h (lto_new_extern_inline_states,
+ * lto_delete_extern_inline_states, lto_force_functions_extern_inline,
+ lto_forced_extern_inline_p): Kill.
+
+2010-04-20 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (do_sd_constraint): Add edges only
+ from vars that can have pointers.
+ (process_constraint): Dump useless constraints.
+
+2010-04-20 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (do_structure_copy): Properly handle DEREF.
+ (dump_sa_points_to_info): Remove asserts.
+ (init_base_vars): nothing_id isn't an escape point nor does it
+ have pointers.
+
+2010-04-20 Jakub Jelinek <jakub@redhat.com>
+
+ * tree.h (TYPE_REF_IS_RVALUE): Define.
+ * dwarf2out.c (attr_checksum_ordered, is_type_die, is_comdat_die,
+ should_move_die_to_comdat, prune_unused_types_walk): Handle
+ DW_TAG_rvalue_reference_type like DW_TAG_reference_type.
+ (modified_type_die, gen_reference_type_die): Emit
+ DW_TAG_rvalue_reference_type instead of DW_TAG_reference_type
+ if TYPE_REF_IS_RVALUE and -gdwarf-4.
+
+2010-04-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+
+ PR target/43635
+ * config/s390/s390.c (s390_emit_call): Turn direct into indirect
+ calls for -fpic -m31 if they have been sibcall optimized.
+
+2010-04-19 James E. Wilson <wilson@codesourcery.com>
+
+ * config/ia64/ia64.h (FIXED_REGISTERS, CALL_USED_REGISTERS): Make
+ ar.lc fixed and call-used.
+
+ * config/ia64/ia64.c (TARGET_INVALID_WITHIN_DOLOOP): Define.
+
+2010-04-19 Jan Hubicka <jh@suse.cz>
+
+ * opts.c (decode_options): Disable whpr incompatible passes.
+ * lto/lto.c (lto_1_to_1_map): Skip clones.
+ (read_cgraph_and_symbols): Do not mark everything as needed.
+ (do_whole_program_analysis): Do map only after optimizing;
+ set proper cgraph_state; use passmanager.
+
+2010-04-19 DJ Delorie <dj@redhat.com>
+
+ * cfgexpand.c (expand_debug_expr): Check for mismatched modes in
+ POINTER_PLUS_EXPR and fix them.
+
+2010-04-19 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/avr/avr-devices.c (avr_mcu_types): Add support for new
+ devices atmega644pa, attiny2313a, attiny24a, attiny261a, attiny4313,
+ attiny44a, attiny861a, atmega16a, atmega168a, atmega164a, atmega165a,
+ atmega169a, atmega169pa, atmega16hva2, atmega324a, atmega324pa,
+ atmega325a, atmega3250a, atmega328, atmega329a, atmega329pa,
+ atmega3290a, atmega48a, atmega644a, atmega645a, atmega645p,
+ atmega6450a, atmega6450p, atmega649a, atmega649p, atmega6490a,
+ atmega6490p, atmega64hve, atmega88a, atmega88pa, attiny461a, attiny84a,
+ m3000. Remove support for devices atmega8m1, atmega8c1, atmega16c1,
+ atmega4hvd, atmega8hvd, attiny327, m3000f, m3000s, m3001b.
+ * config/avr/t-avr.c (MULTILIB_MATCHES): Same.
+
+2010-04-19 Eric Botcazou <ebotcazou@adacore.com>
+
+ * ifcvt.c (noce_try_cmove_arith): Fix long lines.
+ (check_cond_move_block): Likewise.
+ (cond_move_process_if_block): Likewise.
+ (noce_find_if_block): Improve formatting.
+ (find_if_header): Pass 0 to memset and tweak conditions.
+ (cond_exec_find_if_block): Fix long lines and tweak conditions.
+
+2010-04-19 Jakub Jelinek <jakub@redhat.com>
+
+ * dwarf2out.c (lower_bound_default): For DW_LANG_Python return 0
+ for -gdwarf-4.
+
+ PR middle-end/43337
+ * tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
+ with non-local decl doesn't need chain.
+
+2010-04-19 Vladimir Makarov <vmakarov@redhat.com>
+
+ * ira-color.c (allocno_reload_assign): Avoid accumulating
+ reload registers in ALLOCNO_TOTAL_CONFLICT_HARD_REGS.
+
+2010-04-19 Martin Jambor <mjambor@suse.cz>
+
+ * gimple.h (create_tmp_reg): Declare.
+ * gimplify.c (create_tmp_reg): New function.
+ (gimplify_return_expr): Use create_tmp_reg.
+ (gimplify_omp_atomic): Likewise.
+ (gimple_regimplify_operands): Likewise.
+ * tree-dfa.c (make_rename_temp): Likewise.
+ * tree-predcom.c (predcom_tmp_var): Likewise.
+ (reassociate_to_the_same_stmt): Likewise.
+ * tree-sra.c (replace_uses_with_default_def_ssa_name): Likewise.
+ (get_replaced_param_substitute): Likewise.
+ * tree-ssa-phiprop.c (phiprop_insert_phi): Likewise.
+ * tree-ssa-phiopt.c (cond_store_replacement): Likewise.
+ * tree-ssa-pre.c (get_representative_for): Likewise.
+ (create_expression_by_pieces): Likewise.
+ * tree-tailcall.c (adjust_return_value_with_ops): Likewise.
+ (create_tailcall_accumulator): Likewise.
+