+2008-06-25 John David Anglin <dave.anglin@gcc-cnrc.gc.ca>
+
+ * config.gcc (hppa[12]*-*-hpux10*): Don't use fixproto.
+
+2008-06-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alias.c (record_alias_subset, init_alias_analysis): Fix
+ -Wc++-compat and/or -Wcast-qual warnings.
+ * attribs.c (lookup_attribute_spec): Likewise.
+ * bb-reorder.c (find_traces, rotate_loop, find_traces_1_round,
+ copy_bb, connect_traces,
+ find_rarely_executed_basic_blocks_and_cr): Likewise.
+ * bt-load.c (find_btr_def_group, add_btr_def, new_btr_user,
+ note_btr_set, migrate_btr_defs): Likewise.
+ * builtins.c (result_vector, expand_builtin_memcpy,
+ expand_builtin_mempcpy_args, expand_builtin_strncpy,
+ builtin_memset_read_str, expand_builtin_printf,
+ fold_builtin_memchr, rewrite_call_expr, fold_builtin_printf):
+ Likewise.
+ * caller-save.c (mark_set_regs): Likewise.
+ * calls.c (expand_call, emit_library_call_value_1): Likewise.
+ * cgraph.c (cgraph_edge): Likewise.
+ * combine.c (likely_spilled_retval_1): Likewise.
+ * coverage.c (htab_counts_entry_hash, htab_counts_entry_eq,
+ htab_counts_entry_del, get_coverage_counts): Likewise.
+ * cselib.c (new_elt_list, new_elt_loc_list, entry_and_rtx_equal_p,
+ new_cselib_val): Likewise.
+ * dbgcnt.c (dbg_cnt_process_opt): Likewise.
+ * dbxout.c (dbxout_init, dbxout_type, output_used_types_helper):
+ Likewise.
+ * df-core.c (df_compact_blocks): Likewise.
+ * df-problems.c (df_grow_bb_info, df_chain_create): Likewise.
+ * df-scan.c (df_grow_reg_info, df_ref_create,
+ df_insn_create_insn_record, df_insn_rescan, df_notes_rescan,
+ df_ref_compare, df_ref_create_structure, df_bb_refs_record,
+ df_record_entry_block_defs, df_record_exit_block_uses,
+ df_bb_verify): Likewise.
+ * df.h (DF_REF_EXTRACT_WIDTH_CONST, DF_REF_EXTRACT_OFFSET_CONST,
+ DF_REF_EXTRACT_MODE_CONST): New.
+ * dominance.c (get_immediate_dominator, get_dominated_by,
+ nearest_common_dominator, root_of_dom_tree,
+ iterate_fix_dominators, first_dom_son, next_dom_son): Fix
+ -Wc++-compat and/or -Wcast-qual warnings.
+ * dse.c (clear_alias_set_lookup, get_group_info, gen_rtx_MEM,
+ record_store, replace_read, check_mem_read_rtx, scan_insn,
+ dse_step1, dse_record_singleton_alias_set): Likewise.
+ * dwarf2asm.c (dw2_force_const_mem): Likewise.
+
+2008-06-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * dwarf2out.c (new_cfi, queue_reg_save, dwarf2out_begin_prologue,
+ dwarf2out_frame_init, new_loc_descr, new_die, lookup_decl_die,
+ lookup_decl_loc, add_var_loc_to_decl, compute_section_prefix,
+ assign_symbol_names, htab_cu_hash, htab_cu_eq, htab_cu_del,
+ build_abbrev_table, new_loc_list, output_comp_unit, add_arange,
+ add_ranges_num, add_ranges_by_labels, file_info_cmp,
+ file_name_acquire, output_file_names, add_const_value_attribute,
+ premark_used_types_helper, file_table_eq, file_table_hash,
+ lookup_filename, dwarf2out_var_location, dwarf2out_source_line,
+ dwarf2out_init, file_table_relative_p): Fix -Wc++-compat and/or
+ -Wcast-qual warnings.
+ * ebitmap.c (ebitmap_array_grow, ebitmap_array_init,
+ ebitmap_alloc, ebitmap_ior, ebitmap_and_compl): Likewise.
+ * emit-rtl.c (get_mem_attrs, get_reg_attrs, gen_rtvec,
+ gen_reg_rtx, start_sequence, init_emit): Likewise.
+ * et-forest.c (et_new_occ, et_new_tree): Likewise.
+ * except.c (init_eh_for_function, gen_eh_region,
+ remove_unreachable_regions, add_ehl_entry, duplicate_eh_regions_1,
+ arh_to_landing_pad, arh_to_label, add_action_record,
+ add_call_site, switch_to_exception_section): Likewise.
+ * expmed.c (synth_mult): Likewise.
+ * expr.c (gen_group_rtx, emit_group_load, emit_group_store,
+ store_expr): Likewise.
+ * final.c (shorten_branches, final_scan_insn, debug_queue_symbol):
+ Likewise.
+ * function.c (assign_stack_temp_for_type,
+ allocate_struct_function, match_asm_constraints_1): Likewise.
+ * gcov-io.c (gcov_allocate): Likewise.
+ * gcse.c (GNEW, GCNEW, GNEWVEC, GCNEWVEC, GRESIZEVEC, GNEWVAR,
+ GCNEWVAR, GRESIZEVAR, GOBNEW, GOBNEWVAR): New.
+ (gcse_main, alloc_gcse_mem, alloc_gcse_mem, alloc_reg_set_mem,
+ record_one_set, insert_expr_in_table, insert_set_in_table,
+ dump_hash_table, compute_hash_table_work, alloc_hash_table,
+ pre_ldst_expr_hash, pre_ldst_expr_eq, find_rtx_in_ldst,
+ reg_set_info, reg_clear_last_set): Fix -Wc++-compat and/or
+ -Wcast-qual warnings.
+
+2008-06-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cse.c (approx_reg_cost_1, cse_insn): Fix -Wc++-compat and/or
+ -Wcast-qual warnings.
+ * gcc.c (process_command): Likewise.
+ * genattrtab.c (oballoc): Use XOBNEW.
+ (oballocvec): Define.
+ (attr_hash_add_rtx, attr_hash_add_string, attr_string,
+ get_attr_value, fill_attr, make_length_attrs, gen_attr, gen_insn,
+ gen_delay, find_attr, gen_insn_reserv, gen_bypass_1): Fix
+ -Wc++-compat and/or -Wcast-qual warnings.
+ * genautomata.c (XCREATENODE, XCREATENODEVEC, XCREATENODEVAR,
+ XCOPYNODE, XCOPYNODEVEC, XCOPYNODEVAR): New.
+ (gen_cpu_unit, gen_query_cpu_unit, gen_bypass, gen_excl_set,
+ gen_presence_absence_set, gen_automaton, gen_regexp_el,
+ gen_regexp_repeat, gen_regexp_allof, gen_regexp_oneof,
+ gen_regexp_sequence, gen_reserv, gen_insn_reserv, process_excls,
+ add_excls, process_presence_absence_names,
+ process_presence_absence_patterns, add_presence_absence,
+ process_regexp, add_advance_cycle_insn_decl, get_free_alt_state,
+ get_free_state, add_arc, get_free_automata_list_el,
+ form_reserv_sets_list, copy_insn_regexp, transform_1, transform_2,
+ transform_3, cache_presence, create_ainsns, create_automata,
+ create_state_ainsn_table, dfa_insn_code_enlarge,
+ output_trans_func, output_min_issue_delay_func,
+ output_dead_lock_func, output_reset_func,
+ output_get_cpu_unit_code_func, output_dfa_start_func,
+ expand_automata): Likewise.
+ * genextract.c (gen_insn): Likewise.
+ * gengtype-lex.l: Likewise.
+ * gengtype.c (read_input_list, adjust_field_type,
+ process_gc_options): Likewise.
+ * genoutput.c (note_constraint): Likewise.
+ * genpreds.c (mangle, add_constraint): Likewise.
+ * genrecog.c (process_define_predicate, new_decision,
+ add_to_sequence): Likewise.
+ * gensupport.c (record_insn_name): Likewise.
+
+2008-06-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/i386/driver-i386.c (detect_caches_amd,
+ detect_caches_intel, host_detect_local_cpu): Fix -Wc++-compat
+ and/or -Wcast-qual warnings.
+ *ggc-common.c (ggc_mark_roots, gt_pch_note_object,
+ gt_pch_note_reorder, relocate_ptrs, write_pch_globals,
+ gt_pch_save): Likewise.
+ * ggc-page.c (push_depth, push_by_depth, alloc_anon, alloc_page,
+ gt_ggc_m_S, clear_marks, ggc_pch_read): Likewise.
+ * global.c (compute_regsets): Likewise.
+ * graph.c (print_rtl_graph_with_bb, clean_graph_dump_file,
+ finish_graph_dump_file): Likewise.
+ * haifa-sched.c (schedule_block, extend_h_i_d, extend_ready,
+ unlink_bb_notes): Likewise.
+ * integrate.c (get_hard_reg_initial_val): Likewise.
+ * ipa-prop.c (ipa_push_func_to_list): Likewise.
+ * ipa-struct-reorg.c (gen_var_name, gen_cluster_name): Likewise.
+ * local-alloc.c (update_equiv_regs): Likewise.
+ * loop-invariant.c (check_invariant_table_size,
+ hash_invariant_expr, eq_invariant_expr, find_or_insert_inv):
+ Likewise.
+ * loop-iv.c (check_iv_ref_table_size, analyzed_for_bivness_p,
+ altered_reg_used, mark_altered): Likewise.
+ * loop-unroll.c (si_info_eq, ve_info_eq, allocate_basic_variable,
+ insert_var_expansion_initialization,
+ combine_var_copies_in_loop_exit, apply_opt_in_copies,
+ release_var_copies): Likewise.
+ * matrix-reorg.c (mat_acc_phi_hash, mat_acc_phi_eq, mtt_info_eq,
+ analyze_matrix_decl, add_allocation_site, analyze_transpose,
+ analyze_accesses_for_phi_node, check_var_notmodified_p,
+ check_allocation_function, find_sites_in_func,
+ record_all_accesses_in_func, transform_access_sites,
+ transform_allocation_sites): Likewise.
+ * omp-low.c (new_omp_region, create_omp_child_function_name,
+ check_omp_nesting_restrictions, check_combined_parallel,
+ lower_omp_2, diagnose_sb_1, diagnose_sb_2): Likewise.
+ * optabs.c (no_conflict_move_test, gen_libfunc, gen_fp_libfunc,
+ gen_intv_fp_libfunc, gen_interclass_conv_libfunc,
+ gen_intraclass_conv_libfunc, set_optab_libfunc, set_conv_libfunc):
+ Likewise.
+ * opts-common.c (prune_options): Likewise.
+ * opts.c (add_input_filename, print_filtered_help,
+ get_option_state): Likewise.
+ * params.c (add_params): Likewise.
+ * passes.c (set_pass_for_id, next_pass_1,
+ do_per_function_toporder, pass_fini_dump_file): Likewise.
+ * postreload.c (reload_cse_simplify_operands): Likewise.
+ * predict.c (tree_predicted_by_p, tree_predict_edge,
+ clear_bb_predictions, combine_predictions_for_bb): Likewise.
+
+2008-06-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ra.h (add_neighbor): Fix -Wc++-compat and/or -Wcast-qual
+ warnings.
+ * recog.c (check_asm_operands, validate_change_1): Likewise.
+ * reg-stack.c (check_asm_stack_operands, subst_asm_stack_regs,
+ subst_asm_stack_regs): Likewise.
+ * regclass.c (regclass, som_hash, som_eq, record_subregs_of_mode,
+ cannot_change_mode_set_regs, invalid_mode_change_p): Likewise.
+ * regmove.c (reg_is_remote_constant_p): Likewise.
+ * regrename.c (regrename_optimize, scan_rtx_reg,
+ kill_clobbered_value, kill_set_value, kill_autoinc_value):
+ Likewise.
+ * regstat.c (regstat_init_n_sets_and_refs, regstat_compute_ri,
+ regstat_compute_calls_crossed): Likewise.
+ * reload1.c (init_reload, new_insn_chain,
+ has_nonexceptional_receiver, reload, copy_reloads,
+ calculate_needs_all_insns, init_elim_table): Likewise.
+ * rtl-factoring.c (compute_rtx_cost, fill_hash_bucket): Likewise.
+ * rtl.c (shallow_copy_rtx_stat): Likewise.
+ * rtlanal.c (parms_set): Likewise.
+ * sbitmap.c (sbitmap_alloc, sbitmap_alloc_with_popcount,
+ sbitmap_resize, sbitmap_vector_alloc): Likewise.
+ * sched-ebb.c (earliest_block_with_similiar_load,
+ add_deps_for_risky_insns): Likewise.
+ * sched-rgn.c (find_rgns, gather_region_statistics, extend_rgns,
+ schedule_region): Likewise.
+ * see.c (eq_descriptor_pre_extension,
+ hash_descriptor_pre_extension, hash_del_pre_extension,
+ eq_descriptor_properties, hash_descriptor_properties,
+ hash_del_properties, see_seek_pre_extension_expr,
+ see_initialize_data_structures, see_print_register_properties,
+ see_print_pre_extension_expr, see_delete_merged_def_extension,
+ see_delete_unmerged_def_extension, see_emit_use_extension,
+ see_pre_delete_extension, see_map_extension, see_commit_changes,
+ see_analyze_merged_def_local_prop,
+ see_analyze_merged_def_local_prop,
+ see_analyze_unmerged_def_local_prop, see_analyze_use_local_prop,
+ see_set_prop_merged_def, see_set_prop_unmerged_def,
+ see_set_prop_unmerged_use, see_print_one_extension,
+ see_merge_one_use_extension, see_merge_one_def_extension,
+ see_store_reference_and_extension, see_update_uses_relevancy,
+ see_update_defs_relevancy): Likewise.
+ * statistics.c (hash_statistics_hash, hash_statistics_eq,
+ hash_statistics_free, curr_statistics_hash): Likewise.
+ * stmt.c (parse_output_constraint, decl_overlaps_hard_reg_set_p,
+ expand_asm_operands, expand_return, case_bit_test_cmp,
+ expand_case): Likewise.
+ * stor-layout.c (start_record_layout): Likewise.
+ * stringpool.c (ggc_alloc_string, gt_pch_n_S,
+ gt_pch_save_stringpool): Likewise.
+ * tree-data-ref.c (hash_stmt_vertex_info,
+ have_similar_memory_accesses_1, ref_base_address_1): Likewise.
+ * tree-ssa-phiopt.c (name_to_bb_hash): Likewise.
+
+2008-06-25 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/36627
+ * config/i386/i386.md : Change constraints of HImode and QImode
+ immediate operands from "i" to "n". Change SImode "ni" constraint to
+ "i" and SImode "rmi" constraint to "g". Remove all constraints
+ from const0_operand and const1_operand predicated operands.
+ (i): Change QImode and HImode attribute from "i" to "n".
+ (*subqi_2): Change HImode operands to QImode.
+ (*subqi_3): Ditto.
+
+2008-06-25 Olivier Hainque <hainque@adacore.com>
+
+ * Makefile.in (GTFILES_H): Use | instead of ; as separator in
+ sed substitutions.
+
+2008-06-25 Richard Guenther <rguenther@suse.de>
+
+ * tree-ssa-structalias.c (fieldoff_compare): Make sure to
+ not overflow the result type.
+
+2008-06-25 Richard Guenther <rguenther@suse.de>
+
+ * tree-vn.c (vn_add): Handle TRUTH_*_EXPR.
+ (vn_lookup): Likewise.
+
+2008-06-25 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/35518
+ * fold-const.c (fold_ternary): Strip trivial BIT_FIELD_REFs.
+ * tree-sra.c (instantiate_element): Use fold_build3 to build
+ BIT_FIELD_REFs.
+ (try_instantiate_multiple_fields): Likewise.
+
+2008-06-24 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ * config/rs6000/rs6000.md: Change all string instruction's clobber to
+ be early clobbers.
+
+2008-06-24 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_epilogue): Set
+ use_backchain_to_restore_sp to true
+ if the offset of the link register save area would go over the 32k - 1
+ offset limit of the load
+ instructions.
+
+2008-06-25 Hans-Peter Nilsson <hp@axis.com>
+
+ * doc/invoke.texi (Optimize Options) <fstrict-aliasing>: Add
+ anchor for the type-punning blurb. Cross-reference "Structures
+ unions enumerations and bit-fields implementation". Provide a
+ cast-through-pointer example. Make final sentence self-contained.
+ * doc/implement-c.texi (Structures unions enumerations and
+ bit-fields implementation): Cross-reference the type-punning blurb
+ in the -fstrict-aliasing documentation.
+
+2008-06-24 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR middle-end/36594
+ * builtins.c (expand_builtin_nonlocal_goto): Stabilize the address of
+ the memory instead of the memory itself for the save area.
+
+2008-06-24 Olivier Hainque <hainque@adacore.com>
+ Nicolas Roche <roche@adacore.com>
+
+ * gengtype.c (srcdir_len): size_t instead of int.
+ (get_file_realbasename): New function. For F a filename, the real
+ basename of F, with all the path components stripped.
+ (get_file_srcdir_relative_path): New function. For F a filename, the
+ relative path to F from $(srcdir).
+ (get_file_basename): Rewrite using get_file_srcdir_relative_path and
+ get_file_realbasename. Adjust the head comment.
+ (get_prefix_langdir_index): New function. For F a filename, return the
+ lang_dir_names[] relative index of the language directory that is
+ a prefix in F.
+ (get_file_langdir): For F a filename, return the name of the language
+ directory where F is located.
+ (get_file_gtfilename): New function. The gt- output file name for an
+ input filename F.
+ (get_output_file_with_visibility): Replace in-line computations with
+ uses of get_file_gtfilename and get_prefix_langdir_index.
+ * Makefile.in (GTFILES_H): Adjust to match what gengtype generates.
+
+2008-06-24 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/36504
+ * tree-ssa-loop-prefetch.c (gather_memory_references_ref): Skip
+ references without base address.
+
+2008-06-23 Uros Bizjak <ubizjak@gmail.com>
+
+ PR middle-end/36584
+ * calls.c (expand_call): Increase alignment for recursive functions.
+
+2008-06-23 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.c (avr_function_value): Add new 'outgoing' argument.
+ (TARGET_FUNCTION_VALUE): New define.
+ * config/avr/avr-protos.h (avr_function_value): Remove declaration.
+ * config/avr/avr.h (FUNCTION_VALUE): Remove.
+
+2008-06-23 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (fmodxf3): Change sequence of move instructions.
+ (fmod<mode>3): Ditto.
+ (remainderxf3): Ditto.
+ (remainder<mode>3): Ditto.
+
+2008-06-23 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/36533
+ * emit-rtl.c (set_reg_attrs_from_value): Do nothing if
+ REG is a hard register.
+
+ PR tree-optimization/36508
+ * tree-ssa-pre.c (compute_antic): Allow num_iterations up to
+ 499, don't check it at all in release compilers.
+
+2008-06-23 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*fop_<mode>_1_i387): Use SSE_FLOAT_MODE_P
+ together with SSE_TARGET_MATH to disable insn pattern.
+ (*fop_<MODEF:mode>_2_i387): Ditto.
+ (*fop_<MODEF:mode>_3_i387): Ditto.
+
+2008-06-22 Andy Hutchinson <hutchinsonandy@aim.com>
+
+ * config/avr/avr.h (SUPPORTS_INIT_PRIORITY): Define.
+
+2008-06-22 Laurynas Biveinis <laurynas.biveinis@gmail.com>
+
+ PR middle-end/34906
+ * gimplify.c (gimplify_asm_expr): Check the return code of
+ parse_output_constraint call, set function return and is_inout
+ value if it failed.
+
+2008-06-22 Ian Lance Taylor <iant@google.com>
+
+ * c-lex.c (narrowest_unsigned_type): Change itk to int.
+ (narrowest_signed_type): Likewise.
+ * c-typeck.c (c_common_type): Change local variable mclass to enum
+ mode_class, twice.
+ (parser_build_binary_op): Compare the TREE_CODE_CLASS with
+ tcc_comparison, not the tree code itself.
+ * c-common.c (def_fn_type): Pass int, not an enum, to va_arg.
+ (c_expand_expr): Cast modifier to enum expand_modifier.
+ * c-common.h (C_RID_CODE): Add casts.
+ (C_SET_RID_CODE): Define.
+ * c-parser.c (c_parse_init): Use C_SET_RID_CODE.
+ (c_lex_one_token): Add cast to avoid warning.
+ (c_parser_objc_type_name): Rename local typename to type_name.
+ (check_no_duplicate_clause): Change code parameter to enum
+ omp_clause_code.
+ (c_parser_omp_var_list_parens): Change kind parameter to enum
+ omp_clause_code.
+ (c_parser_omp_flush): Pass OMP_CLAUSE_ERROR, not 0, to
+ c_parser_omp_list_var_parens.
+ (c_parser_omp_threadprivate): Likewise.
+ * cp/lex.c (init_reswords): Use C_SET_RID_CODE.
+ * cp/parser.c (cp_lexer_get_preprocessor_token): Likewise.
+ * c-format.c (NO_FMT): Define.
+ (printf_length_specs): Use NO_FMT.
+ (asm_fprintf_length_specs): Likewise.
+ (gcc_diag_length_specs): Likewise.
+ (scanf_length_specs): Likewise.
+ (strfmon_length_specs): Likewise.
+ (gcc_gfc_length_specs): Likewise.
+ (printf_flag_specs): Change 0 to STD_C89.
+ (asm_fprintf_flag_specs): Likewise.
+ (gcc_diag_flag_specs): Likewise.
+ (gcc_cxxdiag_flag_specs): Likewise.
+ (scanf_flag_specs): Likewise.
+ (strftime_flag_specs): Likewise.
+ (strfmon_flag_specs): Likewise.
+ (print_char_table): Likewise.
+ (asm_fprintf_char_table): Likewise.
+ (gcc_diag_char_table): Likewise.
+ (gcc_tdiag_char_table): Likewise.
+ (gcc_cdiag_char_table): Likewise.
+ (gcc_cxxdiag_char_table): Likewise.
+ (gcc_gfc_char_table): Likewise.
+ (scan_char_table): Likewise.
+ (time_char_table): Likewis.
+ (monetary_char_table): Likewise.
+ * c-format.h (BADLEN): Likewise.
+
+2008-06-21 Ian Lance Taylor <iant@google.com>
+
+ * tree.h (enum tree_code): Include all-tree.def, not tree.def.
+ Define END_OF_BASE_TREE_CODES around inclusion.
+ * tree.c (tree_code_type): New global array.
+ (tree_code_length, tree_code_name): Likewise.
+ * Makefile.in (TREE_H): Add all-tree.def, c-common.def, and
+ $(lang_tree_files).
+ (all-tree.def, s-alltree): New targets.
+ (gencheck.h, s-gencheck): Remove.
+ (tree.o): Depend upon all-tree.def.
+ (build/gencheck.o): Remove gencheck.h dependency.
+ (mostlyclean): Don't remove gencheck.h.
+ * c-common.h (enum c_tree_code): Remove.
+ * c-lang.c (tree_code_type): Remove.
+ (tree_code_length, tree_code_name): Remove.
+ * gencheck.c (tree_codes): Include all-tree.def, rather than
+ tree.def, c-common.def, and gencheck.h. Undefined DEFTREECODE
+ after it is used.
+ * tree-browser.c (tb_tree_codes): Include all-tree.def, rather
+ than tree.def.
+ * cp/cp-tree.h (enum cplus_tree_code): Remove.
+ (operator_name_info): Size to MAX_TREE_CODES.
+ (assignment_operator_name_info): Likewise.
+ * cp/cp-lang.c (tree_code_type): Remove.
+ (tree_code_length, tree_code_name): Remove.
+ * cp/lex.c (operator_name_info): Size to MAX_TREE_CODES.
+ (assignment_operator_name_info): Likewise.
+ * cp/decl.c (grok_op_properties): Change LAST_CPLUS_TREE_CODE to
+ MAX_TREE_CODES.
+ * cp/mangle.c (write_expression): Likewise.
+ * cp/Make-lang.in (CXX_TREE_H): Remove cp/cp-tree.def.
+ * fortran/f95-lang.c (tree_code_type): Remove.
+ (tree_code_length, tree_code_name): Remove.
+ * java/java-tree.h (enum java_tree_code): Remove.
+ * java/lang.c (tree_code_type): Remove.
+ (tree_code_length, tree_code_name): Remove.
+ * java/Make-lang.in (JAVA_TREE_H): Remove java/java-tree.def.
+ * objc/objc-act.h (enum objc_tree_code): Remove.
+ * objc/objc-lang.c (tree_code_type): Remove.
+ (tree_code_length, tree_code_name): Remove.
+ * objcp/objcp-lang.c (tree_code_type): Remove.
+ (tree_code_length, tree_code_name): Remove.
+ * ada/ada-tree.h (enum gnat_tree_code): Remove.
+ * ada/Make-lang.in (ADA_TREE_H): Remove ada/ada-tre.def.
+ * ada/misc.c (tree_code_type): Remove.
+ (tree_code_length, tree_code_name): Remove.
+
+2008-06-21 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * tree-ssa-pre.c (fini_antic): Bitmap_sets have to be freed before
+ the grand_bitmap_obstack.
+
+2008-06-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ggc.h (GGC_RESIZEVAR): New, reorder macros.
+ * tracer.c (tail_duplicate): Fix for -Wc++-compat.
+ * tree-affine.c (aff_combination_expand, free_name_expansion): Likewise.
+ * tree-cfg.c (replace_by_duplicate_decl, replace_ssa_name,
+ move_stmt_r, new_label_mapper): Likewise.
+ * tree-complex.c (cvc_lookup): Likewise.
+ * tree-dfa.c (create_function_ann): Likewise.
+ * tree-dump.c (dump_register): Likewise.
+ * tree-if-conv.c (tree_if_conversion, add_to_predicate_list,
+ find_phi_replacement_condition): Likewise.
+ * tree-inline.c (copy_phis_for_bb, estimate_num_insns_1,
+ tree_function_versioning): Likewise.
+ * tree-into-ssa.c (cmp_dfsnum): Likewise.
+ * tree-iterator.c (tsi_link_before, tsi_link_after): Likewise.
+ * tree-nested.c (lookup_field_for_decl, lookup_tramp_for_decl,
+ get_nonlocal_debug_decl, convert_nonlocal_reference,
+ convert_nonlocal_omp_clauses, get_local_debug_decl,
+ convert_local_reference, convert_local_omp_clauses,
+ convert_nl_goto_reference, convert_nl_goto_receiver,
+ convert_tramp_reference, convert_call_expr): Likewise.
+ * tree-outof-ssa.c (contains_tree_r): Likewise.
+ * tree-parloops.c (reduction_phi, initialize_reductions,
+ eliminate_local_variables_1, add_field_for_reduction,
+ add_field_for_name, create_phi_for_local_result,
+ create_call_for_reduction_1, create_loads_for_reductions,
+ create_stores_for_reduction, create_loads_and_stores_for_name):
+ Likewise.
+ * tree-phinodes.c (allocate_phi_node): Likewise.
+ * tree-predcom.c (order_drefs, execute_pred_commoning_cbck): Likewise.
+ * tree-sra.c (sra_elt_hash, sra_elt_eq, lookup_element): Likewise.
+ * tree-ssa-alias.c (get_mem_sym_stats_for): Likewise.
+ * tree-ssa-coalesce.c (compare_pairs): Likewise.
+ * tree-ssa-loop-im.c (mem_ref_in_stmt, memref_hash, memref_eq,
+ memref_free, gather_mem_refs_stmt, vtoe_hash, vtoe_eq, vtoe_free,
+ record_vop_access, get_vop_accesses, get_vop_stores): Likewise.
+ * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Likewise.
+ * tree-ssa-sccvn.c (VN_INFO_GET, free_phi, free_reference,
+ vn_nary_op_insert): Likewise.
+ * tree-ssa.c (redirect_edge_var_map_add,
+ redirect_edge_var_map_clear, redirect_edge_var_map_dup): Likewise.
+ * tree-vectorizer.c (vectorize_loops): Likewise.
+ * tree.c (make_node_stat, copy_node_stat, build_int_cst_wide,
+ build_fixed, build_real, make_tree_binfo_stat, make_tree_vec_stat,
+ tree_cons_stat, build1_stat, build_variant_type_copy,
+ decl_init_priority_lookup, decl_fini_priority_lookup,
+ decl_priority_info, decl_restrict_base_lookup,
+ decl_restrict_base_insert, decl_debug_expr_lookup,
+ decl_debug_expr_insert, decl_value_expr_lookup,
+ decl_value_expr_insert, type_hash_eq, type_hash_lookup,
+ type_hash_add, get_file_function_name, tree_check_failed,
+ tree_not_check_failed, tree_range_check_failed,
+ omp_clause_range_check_failed, build_omp_clause,
+ build_vl_exp_stat): Likewise.
+ * value-prof.c (gimple_histogram_value,
+ gimple_duplicate_stmt_histograms): Likewise.
+ * var-tracking.c (attrs_list_insert, attrs_list_copy,
+ unshare_variable, variable_union_info_cmp_pos, variable_union,
+ dataflow_set_different_1, dataflow_set_different_2,
+ vt_find_locations, variable_was_changed, set_variable_part,
+ emit_notes_for_differences_1, emit_notes_for_differences_2): Likewise.
+ * varasm.c (prefix_name, emutls_decl, section_entry_eq,
+ section_entry_hash, object_block_entry_eq,
+ object_block_entry_hash, create_block_symbol,
+ initialize_cold_section_name, default_function_rodata_section,
+ strip_reg_name, set_user_assembler_name, const_desc_eq,
+ build_constant_desc, output_constant_def, lookup_constant_def,
+ const_desc_rtx_hash, const_desc_rtx_eq, const_rtx_hash_1,
+ create_constant_pool, force_const_mem, compute_reloc_for_rtx_1,
+ default_internal_label): Likewise.
+ * varray.c (varray_init, varray_grow): Likewise.
+ * vec.c (vec_gc_o_reserve_1, vec_heap_o_reserve_1): Likewise.
+
+2008-06-20 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*jcc_fused_1): Handle all valid compare
+ operators for "test" insn. Macroize insn using SWI mode macro.
+ (*jcc_fused_2): Ditto.
+ (*jcc_fused_3): Macroize insn using SWI mode macro.
+ (*jcc_fused_4): Ditto.
+
+2008-06-20 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * tree-ssa-pre.c: Fix typo in comment.
+ (init_antic, fini_antic): Add explicit funtions for
+ initializing and deinitializing ANTIC and AVAIL sets.
+ (create_expression_by_pieces): Fix typo in comment.
+ Remove redundant set of new_stuff and use NULL_TREE instead of NULL.
+ (execute_pre): Eventually dump details about ANTIC_IN.
+
+2008-06-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * collect2.c (main, add_to_list): Fix for -Wc++-compat.
+ * gcc.c (translate_options, init_spec, store_arg, read_specs,
+ add_to_obstack, file_at_path, find_a_file, execute,
+ add_preprocessor_option, add_assembler_option, add_linker_option,
+ process_command, insert_wrapper, do_option_spec, do_self_spec,
+ spec_path, do_spec_1, is_directory, main, used_arg,
+ getenv_spec_function): Likewise.
+ * tlink.c (symbol_hash_lookup, file_hash_lookup,
+ demangled_hash_lookup, symbol_push, file_push, frob_extension):
+ Likewise.
+
+2008-06-19 Kenneth Zadeck <zadeck@naturalbridge.com>
+
+ * doc/rtl.texi: Updated subreg section.
+
+2008-06-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/36523
+ * cgraphunit.c (cgraph_process_new_functions): Don't clear
+ node->needed and node->reachable.
+ * cgraphbuild.c (record_reference): Handle OMP_PARALLEL and OMP_TASK.
+ * omp-low.c (delete_omp_context): Call finalize_task_copyfn.
+ (expand_task_call): Don't call expand_task_copyfn.
+ (expand_task_copyfn): Renamed to...
+ (finalize_task_copyfn): ... this.
+
+2008-06-19 Jan Hubicka <jh@suse.cz>
+
+ * builtins.c (expand_builtin_nonlocal_goto): Stabilize r_sp before
+ clobbering framepointer.
+
+2008-06-19 Jan Hubicka <jh@suse.cz>
+
+ * tree-optimize.c (execute_early_local_optimizations): Set
+ cgraph_state only at first invocation.
+
+2008-06-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (-Wc++-compat): Activate as a warning, no an error.
+
+2008-06-19 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*jcc_fused_1): Use ASM_COMMENT_START
+ instead of "#" in insn asm template.
+ (*jcc_fused_2): Ditto.
+
+2008-06-19 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.h (ix86_tune_indices)
+ [X86_TUNE_FUSE_CMP_AND_BRANCH]: New.
+ (TARGET_FUSE_CMP_AND_BRANCH): New define.
+ * config/i386/i386.md (*jcc_fused_1): New insn pattern
+ (*jcc_fused_2): Ditto.
+ * config/i386/i386.c (ix86_tune_features): Add m_CORE2 to
+ X86_TUNE_FUSE_CMP_AND_BRANCH targets.
+ (print operand): Handle 'E' and 'e' code.
+
+2008-06-19 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.c (avr_mcu_t): Add attiny13a.
+ * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.).
+ * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.).
+
+2008-06-19 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * cgraphunit.c (cgraph_finalize_function): Remove redundant setting of
+ node->decl.
+ (cgraph_expand_function): Use local copy of decl.
+ (cgraph_expand_all_functions): Remove redundant initialization of
+ order_pos.
+ (cgraph_optimize): Reword internal_error message.
+
+2008-06-19 Chung-Lin Tang <ctang@marvell.com>
+
+ * arm-protos.h (arm_return_in_memory): Remove public
+ arm_return_in_memory() prototype.
+ * arm.c (arm_return_in_memory): Add static prototype, add target
+ hook macro, change definition and comments.
+ * arm.h (TARGET_RETURN_IN_MEMORY): Remove.
+
+2008-06-19 Ben Elliston <bje@au.ibm.com>
+
+ * dfp.h, dfp.c, config/dfp-bit.h, config/dfp-bit.c, real.h,
+ real.c: Remove references to IEEE 754R.
+ * doc/install.texi (Configuration): IEEE 754R -> IEEE 754-2008.
+ * doc/libgcc.texi (Decimal float library routines): Likewise.
+
+2008-06-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * targhooks.h (struct gcc_target): New member unwind_word_mode.
+ (default_unwind_word_mode): Add prototype.
+ * targhooks.c (default_unwind_word_mode): New function.
+ (default_eh_return_filter_mode): Return targetm.unwind_word_mode ()
+ instead of word_mode.
+ * target-def.h (TARGET_UNWIND_WORD_MODE): New macro.
+ (TARGET_INITIALIZER): Use it.
+
+ * c-common.c (handle_mode_attribute): Support "unwind_word"
+ mode attribute.
+ * unwind-generic.h (_Unwind_Word, _Unwind_Sword): Use it.
+
+ * except.c (init_eh): Use targetm.unwind_word_mode () instead of
+ word_mode to access SjLj_Function_Context member "data".
+ (sjlj_emit_dispatch_table): Likewise. Also, perform type
+ conversion from targetm.eh_return_filter_mode () to
+ targetm.unwind_word_mode () if they differ.
+
+ * builtin-types.def (BT_UNWINDWORD): New primitive type.
+ (BT_FN_UNWINDWORD_PTR): New function type.
+ (BT_FN_WORD_PTR): Remove.
+ * builtins.def (BUILT_IN_EXTEND_POINTER): Use BT_FN_UNWINDWORD_PTR.
+ * except.c (expand_builtin_extend_pointer): Convert pointer to
+ targetm.unwind_word_mode () instead of word_mode.
+
+ * config/spu/spu-protos.h (spu_eh_return_filter_mode): Remove.
+ * config/spu/spu.c (spu_eh_return_filter_mode): Remove.
+ (spu_unwind_word_mode): New function.
+ (TARGET_EH_RETURN_FILTER_MODE): Do not define.
+ (TARGET_UNWIND_WORD_MODE): Define.
+ * config/spu/t-spu-elf (TARGET_LIBGCC2_CFLAGS): Remove -D__word__=SI.
+
+2008-06-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * config/spu/spu.c (reg_align): Remove.
+ (regno_aligned_for_load): Also accept ARG_POINTER_REGNUM.
+ (spu_split_load): Use regno_aligned_for_load instead of reg_align.
+ (spu_split_store): Likewise.
+
+2008-06-18 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * gcc/tree-vn.c: Fix typo in comment.
+
+2008-06-18 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_optimize): Output debug info when doing
+ toplevel reorder too.
+
+2008-06-18 Jan Hubicka <jh@suse.cz>
+
+ * c-opts.c (c_common_post_options): PCH is not compatible with
+ no-unit-at-a-time.
+ * opts.c (handle_options): Enable unit-at-a-time at O0 along with
+ -fno-toplevel-reorder by default now.
+
+2008-06-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ PR documentation/30739
+ * doc/install.texi (Prerequisites): Document dependency on awk.
+
+2008-06-18 Uros Bizjak <ubizjak@gmail.com>
+ Ian Lance Taylor <iant@google.com>
+
+ PR rtl-optimization/35604
+ * jump.c (redirect_exp_1): Skip the condition of an IF_THEN_ELSE. We
+ only want to change jump destinations, not eventual label comparisons.
+
+2008-06-16 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_expand_pending_functions): Give up at
+ syntax errors.
+ (cgraph_analyze_function): Likewise.
+
+2008-06-16 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.h (cgraph_mark_if_needed): New function.
+ * cgraphunit.c (cgraph_mark_if_needed): New function.
+ * c-decl.c (duplicate_decl): Use it.
+
+2008-06-16 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_add_new_function): When in expansion state, do
+ lowering.
+
+2008-06-16 Jan Hubicka <jh@suse.cz>
+
+ * tree-outof-ssa.c (pass_out_of_ssa): Do not depend on PROP_alias.
+
+2008-06-16 Daniel Jacobowitz <dan@codesourcery.com>
+ Kazu Hirata <kazu@codesourcery.com>
+ Maxim Kuvyrkov <maxim@codesourcery.com
+
+ * config.gcc (mips64el-st-linux-gnu): Use mips/st.h and mips/t-st.
+ * config.host: Use driver-native.o and mips/x-native for mips*-linux*.
+ * config/mips/linux.h (host_detect_local_cpu): Declare, add to
+ EXTRA_SPEC_FUNCTIONS.
+ (MARCH_MTUNE_NATIVE_SPECS, BASE_DRIVER_SELF_SPECS): New macros.
+ (DRIVER_SELF_SPECS): Adjust.
+ * config/mips/linux64.h (DRIVER_SELF_SPECS): Update.
+ * config/mips/st.h, config/mips/t-st: New.
+ * config/mips/driver-native.c, config/mips/x-native: New.
+ * doc/invoke.texi (MIPS): Document 'native' value for -march and
+ -mtune options.
+
+2008-06-18 Maxim Kuvyrkov <maxim@codesourcery.com>
+
+ * config/mips/mips.h (ISA_HAS_CONDMOVE): Slice ISA_HAS_FP_CONDMOVE
+ from it.
+ (ISA_HAS_FP_CONDMOVE): New macro.
+ (ISA_HAS_FP_MADD4_MSUB4, ISA_HAS_FP_MADD3_MSUB3): New macros.
+ (ISA_HAS_NMADD_NMSUB): Rename to ISA_HAS_NMADD4_NMSUB4.
+ (ISA_HAS_NMADD3_NMSUB3): New macro.
+ * config/mips/mips.c (mips_rtx_costs): Update.
+ * config/mips/mips.md (MOVECC): Don't use FP conditional moves when
+ compiling for ST Loongson 2E/2F.
+ (madd<mode>): Rename to madd4<mode>. Update.
+ (madd3<mode>): New pattern.
+ (msub<mode>): Rename to msub4<mode>. Update.
+ (msub3<mode>): New pattern.
+ (nmadd<mode>): Rename to nmadd4<mode>. Update.
+ (nmadd3<mode>): New pattern.
+ (nmadd<mode>_fastmath): Rename to nmadd4<mode>_fastmath. Update.
+ (nmadd3<mode>_fastmath): New pattern.
+ (nmsub<mode>): Rename to nmsub4<mode>. Update.
+ (nmsub3<mode>): New pattern.
+ (nmsub<mode>_fastmath): Rename to nmsub4<mode>_fastmath. Update.
+ (nmsub3<mode>_fastmath): New pattern.
+ (mov<SCALARF:mode>_on_<MOVECC:mode>, mov<mode>cc): Update.
+
+2008-06-18 Steven Bosscher <steven@gcc.gnu.org>
+
+ * df.h (struct df_ref): Replace 'insn' field with 'insn_info' field.
+ (DF_REF_INSN_INFO): New.
+ (DF_REF_INSN, DF_REF_INSN_UID): Rewrite macros using DF_REF_INSN_INFO.
+ (DF_REF_IS_ARTIFICIAL): Artificial refs are now identified as refs
+ with a NULL DF_REF_INSN_INFO.
+ (DF_INSN_INFO_GET, DF_INSN_INFO_SET): Renamed from DF_INSN_GET and
+ DF_INSN_SET.
+ (DF_INSN_INFO_LUID, DF_INSN_INFO_DEFS, DF_INSN_INFO_USES,
+ DF_INSN_INFO_EQ_USES): New.
+ (DF_INSN_LUID, DF_INSN_DEFS, DF_INSN_USES, DF_INSN_EQ_USES,
+ DF_INSN_UID_LUID, DF_INSN_UID_DEFS, DF_INSN_UID_USES,
+ DF_INSN_UID_EQ_USES): Rewrite using DF_INSN_INFO_* macros.
+ * df-core.c: Update comment for above changes.
+ (df_insn_debug_regno): Use DF_INSN_INFO_GET instead of INSN_UID and
+ DF_INSN_UID_* macros.
+ (df_ref_debug): Check for NULL DF_REF_INSN_INFO.
+ * df-scan.c (df_ref_record): Take a df_insn_info instead of an
+ insn rtx. Update all callers.
+ (df_def_record_1, df_defs_record, df_uses_record, df_get_call_refs,
+ df_ref_create_structure, df_insn_refs_collect): Likewise.
+ (df_ref_equal_p): Compare DF_REF_INSN_INFO pointers for the refs.
+ * df-problems.c (df_chain_dump): Test for non-NULL DF_REF_INSN_INFO.
+ (df_live_bb_local_compute): Retrieve DF_INSN_INFO, use DF_INSN_INFO_*
+ macros to access the insn refs.
+ (df_chain_top_dump, df_chain_bottom_dump, df_byte_lr_alloc): Likewise.
+ * fwprop.c (use_killed_between): Use DF_REF_INSN accessor macro.
+ (all_uses_available): Retrieve DF_INSN_INFO for def_insn, and use it
+ for accessing the refs.
+ (try_fwprop_subst): Likewise.
+ * ddg.c (add_cross_iteration_register_deps): Use DF_REF_INSN macro.
+ * web.c (union_defs): Retrieve DF_INSN_INFO for def_insn, and use it
+ for accessing the refs.
+ * loop-invariant.c (invariant_for_use): Use DF_REF_BB macro.
+ (check_dependencies): Use DF_INSN_INFO_GET, use DF_INSN_INFO_* macros
+ to look at the insn refs.
+ (record_uses): Likewise.
+ * dce.c (deletable_insn_p): Don't tolerate artificial DEFs in this
+ function anymore.
+ (mark_artificial_uses): Don't mark_insn for artificial refs.
+ (mark_reg_rependencies): Likewise.
+
+ * doc/rtl.texi: Remove documentation of ADDRESSOF.
+
+2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure: Regenerate.
+
+2008-06-17 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/avr/avr.c (avr_mcu_t): Remove atmega32hvb.
+ * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
+ * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
+
+2008-06-17 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/avr/avr.c (avr_mcu_t): Add attiny167.
+ * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
+ * gcc/config/avr/t-avr (MULTILIB_MATCHES): Likewise.
+
+2008-06-17 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/avr/avr.c (avr_mcu_t): Add atmega32u4.
+ * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
+ * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
+
+2008-06-17 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * tree-ssa-sccvn.c: Fix format of comments.
+
+2008-06-17 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * cgraph.c: Remove unneeded forward declarations of eq_node()
+ and hash_node().
+
+2008-06-17 Steven Bosscher <steven@gcc.gnu.org>
+
+ * see.c (see_analyse_one_def): Do not look for REG_LIBCALL and
+ REG_RETVAL notes.
+ (see_update_relevancy): Likewise.
+ * fwprop.c (try_fwprop_subst): Likewise.
+ * rtlanal.c (noop_move_p): Likewise.
+ * builtins.c (expand_buitlin_mathfn): Don't try to add REG_EQUAL
+ notes to non-existing libcall blocks.
+ * cse.c (cse_insn): Change prototype. Don't update libcall notes.
+ Remove orig_set.
+ (cse_extended_basic_block): Don't track libcall and no-conflict notes.
+ (dead_libcall_p): Remove.
+ (delete_trivially_dead_insns): Don't use it.
+ * web.c (union_defs): Remove comment about keeping nops.
+ * gcse.c (hash_scan_insn): Don't take libcall pointers.
+ (compute_hash_table_work): Don't track libcall notes.
+ (do_local_cprop): Don't take libcall pointers. Don't update
+ libcall notes.
+ (adjust_libcall_notes): Deleted.
+ (local_cprop_pass): Remove stack for nested libcalls (which shouldn't
+ ever have existed in the first place).
+ (replace_store_insn): Don't try to remove libcall notes.
+ * lower-subreg.c (move_libcall_note, move_retval_note): Deleted.
+ (resolve_reg_notes): Don't call them.
+ (resolve_simple_move): Likewise.
+ (decompose_multiword_subregs): Remove block handling REG_RETVAL notes.
+ Don't remove REG_RETVAL notes.
+ * emit-rtl.c (try_split): Don't update libcall notes.
+ (emit_copy_of_insn_after): Dito.
+ * cselib.c (cselib_current_insn_in_libcall): Remove.
+ (cselib_process_insn): Don't set/clear it.
+ (new_elt_loc_list): Don't record it.
+ (cselib_init): Don't initialize it.
+ * cselib.c (struct elt_loc_list): Remove in_libcall field.
+ * loop-invariant.c (find_invariant_insn): Don't look for libcall
+ notes.
+ * sched-deps.c (sched_analyze_insn): Don't group libcall blocks.
+ (sched_analyze): Don't set up deps->libcall_block_tail_insn.
+ (init_deps): Don't initialize it.
+ * sched-int.h (struct deps): Rremove libcall_block_tail_insn field.
+ * combine.c (delete_noop_moves): Don't update libcall notes.
+ (can_combine_p): Remove now pointless #if 0 block.
+ (try_combine): Remove another obsolete #if 0 block.
+ (distribute_notes): Don't distribute libcall notes.
+ * reg-notes.def (REG_LIBCALL, REG_RETVAL): Remove.
+ * dce.c (libcall_dead_p): Remove.
+ (delete_unmarked_insns): Don't handle libcall blocks.
+ (preserve_libcall_for_dce): Remove.
+ (prescan_insns_for_dce): Don't special-case libcall block insns.
+ * reload1 (reload): Don't handle libcall notes.
+ * doc/rtl.texi (REG_LIBCALL, REG_RETVAL, REG_LIBCALL_ID): Remove
+ documentation.
+
+2008-06-16 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/avr/avr.c (avr_mcu_t): Add atmega32c1.
+ * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
+ * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
+
+2008-06-16 Eric B. Weddington <eric.weddington@atmel.com>
+
+ * config/avr/avr.c (avr_mcu_t): Add atmega32m1.
+ * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): Likewise.
+ * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
+
+2008-06-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * Makefile.in (FLAGS_TO_PASS): Add $(datarootdir).
+
+2008-06-16 Ira Rosen <irar@il.ibm.com>
+
+ PR tree-optimization/36493
+ * tree-vect-transform.c (vect_create_data_ref_ptr): Remove TYPE from
+ the arguments list. Use VECTYPE to create vector pointer.
+ (vectorizable_store): Fail if accesses through a pointer to vectype
+ do not alias the original memory reference operands.
+ Call vect_create_data_ref_ptr without the removed argument.
+ (vectorizable_load): Likewise.
+ (vect_setup_realignment): Call vect_create_data_ref_ptr without the
+ removed argument.
+
+2008-06-015 Andy Hutchinson <hutchinsonandy@aim.com>
+
+ PR target/36336
+ * config/avr/avr.h (LEGITIMIZE_RELOAD_ADDRESS): Add check for
+ reg_equiv_constant.
+
+2008-06-15 Maxim Kuvyrkov <maxim@codesourcery.com>
+
+ * config/mips/loongson2ef.md: New file.
+ * config/mips/mips.md (UNSPEC_LOONGSON_ALU1_TURN_ENABLED_INSN)
+ (UNSPEC_LOONGSON_ALU2_TURN_ENABLED_INSN)
+ (UNSPEC_LOONGSON_FALU1_TURN_ENABLED_INSN)
+ (UNSPEC_LOONGSON_FALU2_TURN_ENABLED_INSN): New constants.
+ (define_attr "cpu"): Rename loongson2e and loongson2f to loongson_2e
+ and loongson_2f.
+ (loongson2ef.md): New include.
+ * config/mips/loongson.md (vec_pack_ssat_<mode>, vec_pack_usat_<mode>)
+ (add<mode>3, paddd, ssadd<mode>3, usadd<mode>3)
+ (loongson_and_not_<mode>, loongson_average_<mode>, loongson_eq_<mode>)
+ (loongson_gt_<mode>, loongson_extract_halfword)
+ (loongson_insert_halfword_0, loongson_insert_halfword_2)
+ (loongson_insert_halfword_3, loongson_mult_add, smax<mode>3)
+ (umax<mode>3, smin<mode>3, umin<mode>3, loongson_move_byte_mask)
+ (umul<mode>3_highpart, smul<mode>3_highpart, loongson_smul_lowpart)
+ (loongson_umul_word, loongson_pasubub, reduc_uplus_<mode>)
+ (loongson_psadbh, loongson_pshufh, loongson_psll<mode>)
+ (loongson_psra<mode>, loongson_psrl<mode>, sub<mode>3, psubd)
+ (sssub<mode>3, ussub<mode>3, vec_interleave_high<mode>)
+ (vec_interleave_low<mode>): Define type attribute.
+ * config/mips/mips.c (mips_ls2): New static variable.
+ (mips_issue_rate): Update to handle tuning for Loongson 2E/2F.
+ (mips_ls2_init_dfa_post_cycle_insn, mips_init_dfa_post_cycle_insn)
+ (sched_ls2_dfa_post_advance_cycle, mips_dfa_post_advance_cycle):
+ Implement target scheduling hooks.
+ (mips_multipass_dfa_lookahead): Update to handle tuning for
+ Loongson 2E/2F.
+ (mips_sched_init): Initialize data for Loongson scheduling.
+ (mips_ls2_variable_issue): New static function.
+ (mips_variable_issue): Update to handle tuning for Loongson 2E/2F.
+ Add sanity check.
+ (TARGET_SCHED_INIT_DFA_POST_CYCLE_INSN)
+ (TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Override target hooks.
+ * config/mips/mips.h (TUNE_LOONGSON_2EF): New macros.
+ (ISA_HAS_XFER_DELAY, ISA_HAS_FCMP_DELAY, ISA_HAS_HILO_INTERLOCKS):
+ Handle ST Loongson 2E/2F cores.
+ (CPU_UNITS_QUERY): Define macro to enable querying of DFA units.
+
+2008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * omp-low.c (extract_omp_for_data): Fix comment typo.
+ * c.opt: Fix typo.
+
+2008-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * doc/sourcebuild.texi (Config Fragments): Remove obsolete
+ FIXME note about gcc/config.guess.
+ * doc/options.texi (Option file format): Remove non-ASCII bytes.
+ * doc/cpp.texi: Expand TABs, drop indentation outside examples.
+ * doc/cppopts.texi: Likewise.
+ * doc/extend.texi: Likewise.
+ * doc/gcc.texi: Likewise.
+ * doc/gccint.texi: Likewise.
+ * doc/gcov.texi: Likewise.
+ * doc/gty.texi: Likewise.
+ * doc/hostconfig.texi: Likewise.
+ * doc/install.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+ * doc/loop.texi: Likewise.
+ * doc/makefile.texi: Likewise.
+ * doc/md.texi: Likewise.
+ * doc/passes.texi: Likewise.
+ * doc/tm.texi: Likewise.
+ * doc/tree-ssa.texi: Likewise.
+ * doc/trouble.texi: Likewise.
+
+2008-06-15 Mark Shinwell <shinwell@codesourcery.com>
+ Nathan Sidwell <nathan@codesourcery.com>
+ Maxim Kuvyrkov <maxim@codesourcery.com>
+ Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/mips/mips-modes.def: Add V8QI, V4HI and V2SI modes.
+ * config/mips/mips-protos.h (mips_expand_vector_init): New.
+ * config/mips/mips-ftypes.def: Add function types for Loongson-2E/2F
+ builtins.
+ * config/mips/mips.c (mips_split_doubleword_move): Handle new modes.
+ (mips_hard_regno_mode_ok_p): Allow 64-bit vector modes for Loongson.
+ (mips_vector_mode_supported_p): Add V2SImode, V4HImode and
+ V8QImode cases.
+ (LOONGSON_BUILTIN, LOONGSON_BUILTIN_ALIAS): New.
+ (CODE_FOR_loongson_packsswh, CODE_FOR_loongson_packsshb,
+ (CODE_FOR_loongson_packushb, CODE_FOR_loongson_paddw,
+ (CODE_FOR_loongson_paddh, CODE_FOR_loongson_paddb,
+ (CODE_FOR_loongson_paddsh, CODE_FOR_loongson_paddsb)
+ (CODE_FOR_loongson_paddush, CODE_FOR_loongson_paddusb)
+ (CODE_FOR_loongson_pmaxsh, CODE_FOR_loongson_pmaxub)
+ (CODE_FOR_loongson_pminsh, CODE_FOR_loongson_pminub)
+ (CODE_FOR_loongson_pmulhuh, CODE_FOR_loongson_pmulhh)
+ (CODE_FOR_loongson_biadd, CODE_FOR_loongson_psubw)
+ (CODE_FOR_loongson_psubh, CODE_FOR_loongson_psubb)
+ (CODE_FOR_loongson_psubsh, CODE_FOR_loongson_psubsb)
+ (CODE_FOR_loongson_psubush, CODE_FOR_loongson_psubusb)
+ (CODE_FOR_loongson_punpckhbh, CODE_FOR_loongson_punpckhhw)
+ (CODE_FOR_loongson_punpckhwd, CODE_FOR_loongson_punpcklbh)
+ (CODE_FOR_loongson_punpcklhw, CODE_FOR_loongson_punpcklwd): New.
+ (mips_builtins): Add Loongson builtins.
+ (mips_loongson_2ef_bdesc): New.
+ (mips_bdesc_arrays): Add mips_loongson_2ef_bdesc.
+ (mips_builtin_vector_type): Handle unsigned versions of vector modes.
+ (MIPS_ATYPE_UQI, MIPS_ATYPE_UDI, MIPS_ATYPE_V2SI, MIPS_ATYPE_UV2SI)
+ (MIPS_ATYPE_V4HI, MIPS_ATYPE_UV4HI, MIPS_ATYPE_V8QI, MIPS_ATYPE_UV8QI):
+ New.
+ (mips_expand_vector_init): New.
+ * config/mips/mips.h (HAVE_LOONGSON_VECTOR_MODES): New.
+ (TARGET_CPU_CPP_BUILTINS): Define __mips_loongson_vector_rev
+ if appropriate.
+ * config/mips/mips.md: Add unspec numbers for Loongson
+ builtins. Include loongson.md.
+ (MOVE64): Include Loongson vector modes.
+ (SPLITF): Include Loongson vector modes.
+ (HALFMODE): Handle Loongson vector modes.
+ * config/mips/loongson.md: New.
+ * config/mips/loongson.h: New.
+ * config.gcc: Add loongson.h header for mips*-*-* targets.
+ * doc/extend.texi (MIPS Loongson Built-in Functions): New.
+
+2008-06-14 Joseph Myers <joseph@codesourcery.com>
+
+ * config.gcc (arc-*-elf*, avr-*-*, fr30-*-elf, frv-*-elf,
+ h8300-*-elf*, h8300-*-*, i[34567]86-*-elf*, x86_64-*-elf*,
+ i[34567]86-*-aout*, i[34567]86-*-coff*, ia64*-*-elf*,
+ iq2000*-*-elf*, m32r-*-elf*, m32rle-*-elf*, m32r-*-linux*,
+ m32rle-*-linux*, m68hc11-*-*|m6811-*-*, m68hc12-*-*|m6812-*-*,
+ m68k-*-coff*, mcore-*-elf, mcore-*-pe*, mipsisa64sr71k-*-elf*,
+ mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*, mips-*-elf* |
+ mipsel-*-elf*, mips64-*-elf* | mips64el-*-elf*, mips64vr-*-elf* |
+ mips64vrel-*-elf*, mips64orion-*-elf* | mips64orionel-*-elf*,
+ mipstx39-*-elf* | mipstx39el-*-elf*, mn10300-*-*, pdp11-*-,
+ powerpc-*-elf*, powerpcle-*-elf*, sh-*-elf* | sh[12346l]*-*-elf* |
+ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | sh-*-linux* |
+ sh[2346lbe]*-*-linux* | sh-*-netbsdelf* | shl*-*-netbsdelf* |
+ sh5-*-netbsd* | sh5l*-*-netbsd* | sh64-*-netbsd* |
+ sh64l*-*-netbsd*, sh-*-*, sparc-*-elf*, sparc64-*-elf*,
+ v850e1-*-*, v850e-*-*, v850-*-*, xstormy16-*-elf, m32c-*-elf*):
+ Remove use_fixproto=yes.
+ (ia64*-*-hpux*): Remove comment about using fixproto.
+ (m68k-*-uclinuxoldabi*, m68k-*-uclinux*): Remove use_fixproto=no.
+
+2008-06-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure.ac: Update gthr-default.h lazily, to avoid unneeded
+ library rebuilds.
+ * configure: Regenerate.
+
+2008-06-13 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR middle-end/36520
+ * builtins.c (get_memory_rtx): Test for the presence of DECL_SIZE_UNIT
+ before evaluating it.
+
+2008-06-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/36507
+ * c-decl.c (merge_decls): Don't clear DECL_EXTERNAL for
+ nested inline functions.
+ (start_decl, start_function): Don't invert DECL_EXTERNAL
+ for nested inline functions.
+
+2008-06-13 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/mips/mips.md: Remove TARGET_DEBUG_D_MODE conditions from
+ splits that must be made for correctness.
+
+2008-06-13 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/mips/mips.c (BUILTIN_AVAIL_NON_MIPS16): New macro.
+ (AVAIL_NON_MIPS16): Likewise.
+ (mips_builtin_description): Replace target_flags with a predicate.
+ (paired_single, sb1_paired_single, mips3d, dsp, dspr2, dsp_32)
+ (dspr2_32): New availability predicates.
+ (MIPS_BUILTIN): New macro.
+ (DIRECT_BUILTIN, CMP_SCALAR_BUILTINS, CMP_PS_BUILTINS)
+ (CMP_4S_BUILTINS, MOVTF_BUILTINS, CMP_BUILTINS)
+ (DIRECT_NO_TARGET_BUILTIN, BPOSGE_BUILTIN): Use it.
+ Replace the TARGET_FLAGS parameters with AVAIL parameters.
+ (mips_ps_bdesc, mips_sb1_bdesc, mips_dsp_bdesc)
+ (mips_dsp_32only_bdesc): Merge into...
+ (mips_builtins): ...this new array.
+ (mips_bdesc_map, mips_bdesc_arrays): Delete.
+ (mips_init_builtins): Update after above changes.
+ (mips_expand_builtin_1): Merge into...
+ (mips_expand_builtin): ...here and update after above changes.
+
+2008-06-12 Paul Brook <paul@codesourcery.com>
+
+ * longlong.h (__arm__): Define count_leading_zeros.
+ * config/arm/lib1funcs.asm (xxh, xxl, yyh, yyl): Define.
+ (clzsi2, clzdi2): New functions.
+ * config/arm/bpabi-v6m.S (xxh, xxl, yyh, yyl): Remove.
+ * config/arm/bpabi.S (xxh, xxl, yyh, yyl): Remove.
+ * config/arm/t-strongarm-elf (LIB1ASMFUNCS): Ditto.
+ * config/arm/t-vxworks (LIB1ASMFUNCS): Ditto.
+ * config/arm/t-pe (LIB1ASMFUNCS): Ditto.
+ * config/arm/t-arm-elf (LIB1ASMFUNCS): Ditto.
+ * config/arm/t-arm-coff (LIB1ASMFUNCS): Ditto.
+ * config/arm/t-linux (LIB1ASMFUNCS): Ditto.
+ * config/arm/t-symbian (LIB1ASMFUNCS): Ditto.
+ * config/arm/t-wince-pe (LIB1ASMFUNCS): Ditto.
+
+2008-06-12 Kazu Hirata <kazu@codesourcery.com>
+
+ * config/m68k/m68k.c (m68k_tune_flags): New.
+ (override_options): Compute m68k_tune_flags.
+ (MULL_COST, MULW_COST): Update for various variants of CFV2.
+ * config/m68k/m68k.h (TUNE_MAC, TUNE_EMAC): New.
+
+2008-06-12 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/36506
+ * omp-low.c (expand_omp_sections): Initialize l2 to avoid bogus warning.
+
+2008-06-12 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree-inline.c (copy_body_r): Copy TREE_SIDE_EFFECTS along with
+ TREE_THIS_VOLATILE on INDIRECT_REF nodes.
+
2008-06-12 Eric Botcazou <ebotcazou@adacore.com>
* expr.c (store_field): Do a block copy from BLKmode to BLKmode-like.
2008-06-12 Kai Tietz <kai.tietz@onevision.com>
- * config/i386/i386.c (ix86_compute_frame_layout): Disable red zone for
- w64 abi.
+ * config/i386/i386.c (ix86_compute_frame_layout): Disable
+ red zone for w64 abi.
(ix86_expand_prologue): Likewise.
(ix86_force_to_memory): Likewise.
(ix86_free_from_memory): Likewise.
PR target/36425
* config/rs6000/rs6000.c (rs6000_override_options): Set
- rs6000_isel conditionally to the absence of comand line
- override.
+ rs6000_isel conditionally to the absence of comand line override.
* config/rs6000/linuxspe.h (SUBSUBTARGET_OVERRIDE_OPTIONS):
Remove duplicate rs6000_isel setting.
* config/rs6000/eabispe.h: Ditto.
arch_32 and arch_64.
2008-06-11 Eric Botcazou <ebotcazou@adacore.com>
- Olivier Hainque <hainque@adacore.com>
+ Olivier Hainque <hainque@adacore.com>
* builtins.c (get_memory_rtx): Accept byte-addressable bitfields.
Use DECL_SIZE_UNIT to retrieve the size of the field.
and target endianness differ.
2008-06-10 Vinodha Ramasamy <vinodha@google.com>
- * value_prob.c (tree_divmod_fixed_value_transform): Use gcov_type.
+
+ * value_prob.c (tree_divmod_fixed_value_transform): Use gcov_type.
Avoid division by 0.
(tree_mod_pow2_value_transform): Likewise.
(tree_ic_transform): Likewise.