1. 30 Jun, 2010 1 commit
    • amylaar's avatar
      PR other/44566 · 964229b7
      amylaar authored
              * coretypes.h [!USED_FOR_TARGET] (reg_class_t): Define.
              * target.def (struct gcc_target): Replace enum reg_class with
              reg_class_t in hook argument / return types.
              * doc/tm.texi.in (TARGET_SECONDARY_RELOAD): Likewise.
              (TARGET_IRA_COVER_CLASSES, TARGET_MEMORY_MOVE_COST): Likewise.
              (TARGET_BRANCH_TARGET_REGISTER_CLASS): Likewise.
              * targhooks.h (default_branch_target_register_class): Likewise.
              (default_ira_cover_classes, default_secondary_reload): Likewise.
              (default_memory_move_cost, default_register_move_cost): Likewise.
              * targhooks.c (default_branch_target_register_class): Likewise.
              (default_ira_cover_classes, default_secondary_reload): Likewise.
              (default_memory_move_cost, default_register_move_cost): Likewise.
              * reload.c (push_secondary_reload, secondary_reload_class): Likewise.
              * bt-load.c (branch_target_load_optimize): Likewise.
              * ira.c (setup_cover_and_important_classes): Likewise.
              * ira-costs.c (copy_cost): Likewise.
              * reload1.c (emit_input_reload_insns): Likewise.
              * config/alpha/alpha.c (alpha_secondary_reload): Likewise.
              * config/frv/frv.c (frv_secondary_reload): Likewise.
              * config/s390/s390.c (s390_secondary_reload): Likewise.
              * config/i386/i386.c (i386_ira_cover_classes): Likewise.
              (ix86_secondary_reload, ix86_memory_move_cost): Likewise.
              (ix86_register_move_cost): Likewise.
              * config/sh/sh-protos.h (sh_secondary_reload): Likewise.
              * config/sh/sh.c (sh_target_reg_class, sh_secondary_reload): Likewise.
              * config/xtensa/xtensa.c (xtensa_secondary_reload): Likewise.
              * config/xtensa/xtensa-protos.h (xtensa_secondary_reload): Likewise.
              * config/rs6000/rs6000.c (rs6000_secondary_reload): Likewise.
              (rs6000_ira_cover_classes): Likewise.
              * config/picochip/picochip.c (picochip_secondary_reload): Likewise.
              * config/picochip/picochip-protos.h (picochip_secondary_reload):
              Likewise.
              * config/pa/pa.c (pa_secondary_reload): Likewise.
              * config/mips/mips.c (mips_ira_cover_classes): Likewise.
              * config/bfin/bfin.c (bfin_secondary_reload): Likewise.
              * config/ia64/ia64.c (ia64_register_move_cost): Likewise.
              * doc/tm.texi: Regenerate.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@161633 138bc75d-0d04-0410-961f-82ee72b054a4
      964229b7
  2. 17 Jun, 2010 1 commit
    • froydnj's avatar
      * config/frv/frv-protos.h (frv_print_operand): Delete. · 70b366a2
      froydnj authored
      	(frv_print_operand_address): Delete.
      	* config/frv/frv.h (PRINT_OPERAND): Delete.
      	(PRINT_OPERAND_PUNCT_VALID_P): Delete.
      	(PRINT_OPERAND_ADDRESS): Delete.
      	* config/frv/frv.c (frv_print_operand_address): Make static.
      	(frv_print_operand): Make static.
      	(frv_print_operand_punct_valid_p): New function.
      	(TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
      	(TARGET_PRINT_OPERAND_ADDRESS): Define.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160937 138bc75d-0d04-0410-961f-82ee72b054a4
      70b366a2
  3. 08 Jun, 2010 1 commit
    • lauras's avatar
      gcc/ada: · ba72912a
      lauras authored
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* gcc-interface/utils.c (init_gnat_to_gnu): Use typed GC
      	allocation.
      	(init_dummy_type): Likewise.
      	(gnat_pushlevel): Likewise.
      
      	* gcc-interface/trans.c (Attribute_to_gnu): Likewise.
      	(Subprogram_Body_to_gnu): Likewise.
      	(Compilation_Unit_to_gnu): Likewise.
      	(start_stmt_group): Likewise.
      	(extract_encoding): Likewise.
      	(decode_name): Likewise.
      
      	* gcc-interface/misc.c (gnat_printable_name): Likewise.
      
      	* gcc-interface/decl.c (annotate_value): Likewise.
      
      	* gcc-interface/ada-tree.h (struct lang_type): Add variable_size
      	GTY option.
      	(struct lang_decl): Likewise.
      	(SET_TYPE_LANG_SPECIFIC): Use typed GC allocation.
      	(SET_DECL_LANG_SPECIFIC): Likewise.
      
      gcc/c-family:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* c-pragma.c (push_alignment): Use typed GC allocation.
      	(handle_pragma_push_options): Likewise.
      
      	* c-common.c (parse_optimize_options): Likewise.
      
      	* c-common.h (struct sorted_fields_type): Add variable_size GTY
      	option.
      
      gcc/cp:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* typeck2.c (abstract_virtuals_error): Likewise.
      
      	* pt.c (maybe_process_partial_specialization): Likewise.
      	(register_specialization): Likewise.
      	(add_pending_template): Likewise.
      	(lookup_template_class): Likewise.
      	(push_tinst_level): Likewise.
      
      	* parser.c (cp_lexer_new_main): Likewise.
      	(cp_lexer_new_from_tokens): Likewise.
      	(cp_token_cache_new): Likewise.
      	(cp_parser_context_new): Likewise.
      	(cp_parser_new): Likewise.
      	(cp_parser_nested_name_specifier_opt): Likewise.
      	(cp_parser_template_id): Likewise.
      
      	* name-lookup.c (binding_entry_make): Likewise.
      	(binding_table_construct): Likewise.
      	(binding_table_new): Likewise.
      	(cxx_binding_make): Likewise.
      	(pushdecl_maybe_friend): Likewise.
      	(begin_scope): Likewise.
      	(push_to_top_level): Likewise.
      
      	* lex.c (init_reswords): Likewise.
      	(retrofit_lang_decl): Likewise.
      	(cxx_dup_lang_specific_decl): Likewise.
      	(copy_lang_type): Likewise.
      	(cxx_make_type): Likewise.
      
      	* decl.c (make_label_decl): Likewise.
      	(check_goto): Likewise.
      	(start_preparsed_function): Likewise.
      	(save_function_data): Likewise.
      
      	* cp-tree.h (TYPE_SET_PTRMEMFUNC_TYPE): Likewise.
      
      	* cp-objcp-common.c (decl_shadowed_for_var_insert): Likewise.
      
      	* class.c (finish_struct_1): Likewise.
      
      	* cp-tree.h (struct lang_type): Add variable_size GTY option.
      	(struct lang_decl): Likewise.
      
      	* parser.c (cp_parser_new): Update comment to not reference
      	ggc_alloc.
      
      gcc/fortran:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* trans-types.c (gfc_get_nodesc_array_type): Use typed GC
      	allocation.
      	(gfc_get_array_type_bounds): Likewise.
      
      	* trans-decl.c (gfc_allocate_lang_decl): Likewise.
      	(gfc_find_module): Likewise.
      
      	* f95-lang.c (pushlevel): Likewise.
      
      	* trans.h (struct lang_type): Add variable_size GTY option.
      	(struct lang_decl): Likewise.
      
      gcc/java:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* jcf-reader.c (jcf_parse_constant_pool): Use typed GC allocation.
      
      	* jcf-parse.c (java_parse_file): Likewise.
      	(process_zip_dir): Likewise.
      
      	* java-tree.h (MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC): Likewise.
      	(MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Likewise.
      
      	* expr.c (add_type_assertion): Likewise.
      
      	* decl.c (make_binding_level): Likewise.
      	(java_dup_lang_specific_decl): Likewise.
      
      	* constants.c (set_constant_entry): Likewise.
      	(cpool_for_class): Likewise.
      
      	* class.c (add_method_1): Likewise.
      	(java_treetreehash_new): Likewise.
      
      	* java-tree.h (struct lang_type): Add variable_size GTY option.
      	(struct lang_decl): Likewise.
      
      	* jch.h (struct cpool_entry): Likewise.
      
      	* java-tree.h (java_treetreehash_create): Remove parameter ggc.
      
      	* except.c (prepare_eh_table_type): Update
      	java_treetreehash_create call.
      
      	* class.c (add_method_1): Update java_treetreehash_create call.
      	(java_treetreehash_create): Remove parameter gc.  Use
      	htab_create_ggc.
      
      gcc/lto:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* lto.c (lto_read_in_decl_state): Use typed GC allocation.
      	(lto_file_read): Likewise.
      	(new_partition): Likewise.
      	(read_cgraph_and_symbols): Likewise.
      
      gcc/objc:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* objc-act.h (ALLOC_OBJC_TYPE_LANG_SPECIFIC): Use typed GC
      	allocation.
      
      	* objc-act.c (objc_volatilize_decl): Likewise.
      	(objc_build_string_object): Likewise.
      	(hash_init): Likewise.
      	(hash_enter): Likewise.
      	(hash_add_attr): Likewise.
      	(add_class): Likewise.
      	(start_class): Likewise.
      
      gcc/objcp:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* objcp-decl.h (ALLOC_OBJC_TYPE_LANG_SPECIFIC): Use typed GC
      	allocation.
      
      gcc:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* doc/tm.texi (Per-Function Data): Do not reference ggc_alloc.
      
      	* doc/gty.texi (GTY Options): Document typed GC allocation and
      	variable_size GTY option.
      
      	* ggc-internal.h: New.
      
      	* ggc.h: Update copyright year.
      	(digit_string): Move to stringpool.c.
      	(ggc_mark_stringpool, ggc_purge_stringpool, ggc_mark_roots)
      	(gt_pch_save_stringpool, gt_pch_fixup_stringpool)
      	(gt_pach_restore_stringpool, gt_pch_p_S, gt_pch_note_object)
      	(init_ggc_pch, ggc_pch_count_object, ggc_pch_total_size)
      	(ggc_pch_this_base, ggc_pch_alloc_object, ggc_pch_prepare_write)
      	(ggc_pch_write_object, ggc_pch_finish, ggc_pch_read)
      	(ggc_force_collect, ggc_get_size, ggc_statistics)
      	(ggc_print_common_statistics): Move to ggc-internal.h.
      	(digit_vector, new_ggc_zone, destroy_ggc_zone, ggc_alloc_stat)
      	(ggc_alloc, ggc_alloc_cleared, ggc_realloc, ggc_calloc, GGC_NEW)
      	(GGC_CNEW, GGC_NEWVEC, GGC_CNEWVEC, GGC_NEWVAR, ggc_alloc_rtvec)
      	(ggc_alloc_tree, gt_pch_save, ggc_min_expand_heuristic)
      	(ggc_min_heapsize_heuristic, ggc_alloc_zone)
      	(ggc_alloc_zone_pass_stat): Remove.
      	(ggc_internal_alloc_stat, ggc_internal_alloc)
      	(ggc_internal_cleared_alloc_stat): New.
      	(GGC_RESIZEVEC, GGC_RESIZEVAR): Redefine.
      	(ggc_internal_vec_alloc_stat)
      	(ggc_internal_cleared_vec_alloc_stat)
      	(ggc_internal_vec_alloc_stat, ggc_internal_cleared_vec_alloc)
      	(ggc_alloc_atomic_stat, ggc_alloc_atomic)
      	(ggc_alloc_cleared_atomic, ggc_cleared_alloc_htab_ignore_args)
      	(ggc_cleared_alloc_ptr_array_two_args): New.
      	(htab_create_ggc, splay_tree_new_ggc): Redefine.
      	(ggc_splay_alloc): Change the type of the first argument to
      	enum gt_types_enum.
      	(ggc_alloc_string): Make macro.
      	(ggc_alloc_string_stat): New.
      	(ggc_strdup): Redefine.
      	(rtl_zone, tree_zone, tree_id_zone): Declare unconditionally.
      	(ggc_alloc_rtvec_sized): New.
      	(ggc_alloc_zone_stat): Rename to ggc_internal_alloc_zone_stat.
      	(ggc_internal_alloc_zone_pass_stat, ggc_internal_alloc_zone_stat)
      	(ggc_internal_cleared_alloc_zone_stat)
      	(ggc_internal_zone_alloc_stat)
      	(ggc_internal_zone_cleared_alloc_stat)
      	(ggc_internal_zone_vec_alloc_stat)
      	(ggc_alloc_zone_rtx_def_stat)
      	(ggc_alloc_zone_tree_node_stat)
      	(ggc_alloc_zone_cleared_tree_node_stat)
      	(ggc_alloc_cleared_gimple_statement_d_stat): New.
      
      	* ggc-common.c: Include ggc-internal.h.
      	(ggc_internal_cleared_alloc_stat): Rename from
      	ggc_alloc_cleared_stat.
      	(ggc_realloc_stat): Use ggc_internal_alloc_stat.
      	(ggc_calloc): Remove.
      	(ggc_cleared_alloc_htab_ignore_args): New.
      	(ggc_cleared_alloc_ptr_array_two_args): New.
      	(ggc_splay_alloc): Add obj_type parameter.
      	(init_ggc_heuristics): Formatting fixes.
      
      	* ggc-none.c: Update copyright year.
      	(ggc_alloc_stat): Rename to ggc_alloc_stat.
      	(ggc_alloc_cleared_stat): Rename to
      	ggc_internal_cleared_alloc_stat.
      	(struct alloc_zone, rtl_zone, tree_zone, tree_id_zone): New.
      
      	* ggc-page.c: Update copyright year.  Include ggc-internal.h.
      	Remove references to ggc_alloc in comments.
      	(ggc_alloc_typed_stat): Call ggc_internal_alloc_stat.
      	(ggc_alloc_stat): Rename to ggc_internal_alloc_stat.
      	(new_ggc_zone, destroy_ggc_zone): Remove.
      	(struct alloc_zone, rtl_zone, tree_zone, tree_id_zone): New.
      
      	* ggc-zone.c: Include ggc-internal.h.  Remove references to
      	ggc_alloc in comments.
      	(ggc_alloc_zone_stat): ggc_internal_alloc_zone_stat.
      	(ggc_internal_alloc_zone_pass_stat): New.
      	(ggc_internal_cleared_alloc_zone_stat): New.
      	(ggc_alloc_typed_stat): Use ggc_internal_alloc_zone_pass_stat.
      	(ggc_alloc_stat): Rename ggc_internal_alloc_stat.
      	(new_ggc_zone, destroy_ggc_zone): Remove.
      
      	* stringpool.c: Update copyright year.  Include ggc-internal.h
      	(digit_vector): Make static.
      	(digit_string): Moved from ggc.h.
      	(stringpool_ggc_alloc): Use ggc_alloc_atomic.
      	(ggc_alloc_string): Rename to ggc_alloc_string_stat.
      
      	* Makefile.in (GGC_INTERNAL_H): New.
      	(ggc_common.o, ggc-page.o, ggc-zone.o, stringpool.o): Add
      	$(GGC_INTERNAL_H) to dependencies.
      
      	* gentype.c: Update copyright year.
      	(walk_type): Accept variable_size GTY option.
      	(USED_BY_TYPED_GC_P): New macro.
      	(write_enum_defn): Use USED_BY_TYPED_GC_P.  Do not output
      	whitespace at the end of strings.
      	(get_type_specifier, variable_size_p): New functions.
      	(alloc_quantity, alloc_zone): New enums.
      	(write_typed_alloc_def): New function.
      	(write_typed_struct_alloc_def): Likewise.
      	(write_typed_typed_typedef_alloc_def): Likewise.
      	(write_typed_alloc_defns): Likewise.
      	(output_typename, write_splay_tree_allocator_def): Likewise.
      	(write_splay_tree_allocators): Likewise.
      	(main): Call write_typed_alloc_defns and
      	write_splay_tree_allocators.
      
      	* lto-streamer.h (lto_file_decl_data_ptr): New.
      
      	* passes.c (order): Define using cgraph_node_ptr.
      
      	* strinpool.c (struct string_pool_data): Declare nested_ptr using
      	ht_identifier_ptr.
      
      	* gimple.h (union gimple_statement_d): Likewise.
      
      	* rtl.h (struct rtx_def): Likewise.
      	(struct rtvec_def): Likewise.
      
      	* tree.h (union tree_node): Likewise.
      
      	* tree-ssa-operands.h (struct ssa_operand_memory_d): Likewise.
      
      	* cfgloop.c (record_loop_exits): Use htab_create_ggc.
      
      	* tree-scalar-evolution.c (scev_initialize): Likewise.
      
      	* alias.c (record_alias_subset): Update splay_tree_new_ggc call.
      
      	* dwarf2asm.c (dw2_force_const_mem): Likewise.
      
      	* omp-low.c (lower_omp_critical): Likewise.
      
      	* bitmap.h (struct bitmap_head_def): Update comment to not
      	reference ggc_alloc.
      
      	* config/pa/pa.c (get_deferred_label): Use GGC_RESIZEVEC.
      
      	* ira.c (fix_reg_equiv_init): Use GGC_RESIZEVEC.
      
      	* ipa-prop.c (duplicate_ggc_array): Rename to
      	duplicate_ipa_jump_func_array.  Use typed GC allocation.
      	(ipa_edge_duplication_hook): Call duplicate_ipa_jump_func_array.
      
      	* gimple.c (gimple_alloc_stat): Use
      	ggc_alloc_cleared_gimple_statement_d_stat.
      
      	* varasm.c (create_block_symbol): Use ggc_alloc_zone_rtx_def.
      
      	* tree.c (make_node_stat): Use
      	ggc_alloc_zone_cleared_tree_node_stat.
      	(make_tree_vec_stat): Likewise.
      	(build_vl_exp_stat): Likewise.
      	(copy_node_stat): Use ggc_alloc_zone_tree_node_stat.
      	(make_tree_binfo_stat): Likewise.
      	(tree_cons_stat): Likewise.
      
      	* rtl.c (rtx_alloc_stat): Use ggc_alloc_zone_rtx_def_stat.
      	(shallow_copy_rtx_stat): Likewise.
      	(make_node_stat): Likewise.
      
      	* lto-symtab.c: Fix comment.
      
      	* tree-cfg.c (create_bb): Update comment to not reference
      	ggc_alloc_cleared.
      	* tree-ssa-structalias.c (struct heapvar_for_stmt): Fix param_is
      	value.
      
      	* varpool.c (varpool_node): Use typed GC allocation.
      	(varpool_extra_name_alias): Likewise.
      
      	* varasm.c (emutls_decl): Likewise.
      	(get_unnamed_section): Likewise.
      	(get_noswitch_section): Likewise.
      	(get_section): Likewise.
      	(get_block_for_section): Likewise.
      	(build_constant_desc): Likewise.
      	(create_constant_pool): Likewise.
      	(force_const_mem): Likewise.
      
      	* tree.c (build_vl_exp_stat): Likewise.
      	(build_real): Likewise.
      	(build_string): Likewise.
      	(decl_debug_expr_insert): Likewise.
      	(decl_value_expr_insert): Likewise.
      	(type_hash_add): Likewise.
      	(build_omp_clause): Likewise.
      
      	* tree-ssanames.c (duplicate_ssa_name_ptr_info): Likewise.
      
      	* tree-ssa.c (init_tree_ssa): Likewise.
      
      	* tree-ssa-structalias.c (heapvar_insert): Likewise.
      
      	* tree-ssa-operands.c (ssa_operand_alloc): Likewise.
      
      	* tree-ssa-loop-niter.c (record_estimate): Likewise.
      
      	* tree-ssa-alias.c (get_ptr_info): Likewise.
      
      	* tree-scalar-evolution.c (new_scev_info_str): Likewise.
      
      	* tree-phinodes.c (allocate_phi_node): Likewise.
      
      	* tree-iterator.c (tsi_link_before): Likewise.
      	(tsi_link_after): Likewise.
      
      	* tree-eh.c (add_stmt_to_eh_lp_fn): Likewise.
      
      	* tree-dfa.c (create_var_ann): Likewise.
      
      	* tree-cfg.c (create_bb): Likewise.
      
      	* toplev.c (alloc_for_identifier_to_locale): Likewise.
      	(general_init): Likewise.
      
      	* stringpool.c (stringpool_ggc_alloc): Likewise.
      	(gt_pch_save_stringpool): Likewise.
      
      	* sese.c (if_region_set_false_region): Likewise.
      
      	* passes.c (do_per_function_toporder): Likewise.
      
      	* optabs.c (set_optab_libfunc): Likewise.
      	(set_conv_libfunc): Likewise.
      
      	* lto-symtab.c (lto_symtab_register_decl): Likewise.
      
      	* lto-streamer-in.c (lto_input_eh_catch_list): Likewise.
      	(input_eh_region): Likewise.
      	(input_eh_lp): Likewise.
      	(make_new_block): Likewise.
      	(unpack_ts_real_cst_value_fields): Likewise.
      
      	* lto-section-in.c (lto_new_in_decl_state): Likewise.
      
      	* lto-cgraph.c (input_node_opt_summary): Likewise.
      
      	* loop-init.c (loop_optimizer_init): Likewise.
      
      	* lambda.h (lambda_vector_new): Likewise.
      
      	* lambda-code.c (replace_uses_equiv_to_x_with_y): Likewise.
      
      	* ira.c (update_equiv_regs): Likewise.
      
      	* ipa.c (cgraph_node_set_new): Likewise.
      	(cgraph_node_set_add): Likewise.
      	(varpool_node_set_new): Likewise.
      	(varpool_node_set_add): Likewise.
      
      	* ipa-prop.c (ipa_compute_jump_functions_for_edge): Likewise.
      	(duplicate_ipa_jump_func_array): Likewise.
      	(ipa_read_node_info): Likewise.
      
      	* ipa-cp.c (ipcp_create_replace_map): Likewise.
      
      	* integrate.c (get_hard_reg_initial_val): Likewise.
      
      	* gimple.c (gimple_alloc_stat): Likewise.
      	(gimple_build_omp_for): Likewise.
      	(gimple_seq_alloc): Likewise.
      	(gimple_copy): Likewise.
      
      	* gimple-iterator.c (gsi_insert_before_without_update): Likewise.
      	(gsi_insert_after_without_update): Likewise.
      
      	* function.c (add_frame_space): Likewise.
      	(insert_temp_slot_address): Likewise.
      	(assign_stack_temp_for_type): Likewise.
      	(allocate_struct_function): Likewise.
      	(types_used_by_var_decl_insert): Likewise.
      
      	* except.c (init_eh_for_function): Likewise.
      	(gen_eh_region): Likewise.
      	(gen_eh_region_catch): Likewise.
      	(gen_eh_landing_pad): Likewise.
      	(add_call_site): Likewise.
      
      	* emit-rtl.c (get_mem_attrs): Likewise.
      	(get_reg_attrs): Likewise.
      	(start_sequence): Likewise.
      	(init_emit): Likewise.
      
      	* dwarf2out.c (new_cfi): Likewise.
      	(queue_reg_save): Likewise.
      	(dwarf2out_frame_init): Likewise.
      	(new_loc_descr): Likewise.
      	(find_AT_string): Likewise.
      	(new_die): Likewise.
      	(add_var_loc_to_decl): Likewise.
      	(clone_die): Likewise.
      	(clone_as_declaration): Likewise.
      	(break_out_comdat_types): Likewise.
      	(new_loc_list): Likewise.
      	(loc_descriptor): Likewise.
      	(add_loc_descr_to_each): Likewise.
      	(add_const_value_attribute): Likewise.
      	(tree_add_const_value_attribute): Likewise.
      	(add_comp_dir_attribute): Likewise.
      	(add_name_and_src_coords_attributes): Likewise.
      	(lookup_filename): Likewise.
      	(store_vcall_insn): Likewise.
      	(dwarf2out_init): Likewise.
      
      	* dbxout.c (dbxout_init): Likewise.
      
      	* config/xtensa/xtensa.c (xtensa_init_machine_status): Likewise.
      
      	* config/sparc/sparc.c (sparc_init_machine_status): Likewise.
      
      	* config/score/score7.c (score7_output_external): Likewise.
      
      	* config/score/score3.c (score3_output_external): Likewise.
      
      	* config/s390/s390.c (s390_init_machine_status): Likewise.
      
      	* config/rs6000/rs6000.c (builtin_function_type): Likewise.
      	(rs6000_init_machine_status): Likewise.
      	(output_toc): Likewise.
      
      	* config/pa/pa.c (pa_init_machine_status): Likewise.
      	(get_deferred_plabel): Likewise.
      
      	* config/moxie/moxie.c (moxie_init_machine_status): Likewise.
      
      	* config/mmix/mmix.c (mmix_init_machine_status): Likewise.
      
      	* config/mips/mips.c (mflip_mips16_use_mips16_p): Likewise.
      
      	* config/mep/mep.c (mep_init_machine_status): Likewise.
      	(mep_note_pragma_flag): Likewise.
      
      	* config/m32c/m32c.c (m32c_init_machine_status): Likewise.
      
      	* config/iq2000/iq2000.c (iq2000_init_machine_status): Likewise.
      
      	* config/ia64/ia64.c (ia64_init_machine_status): Likewise.
      
      	* config/i386/winnt.c (i386_pe_record_external_function): Likewise.
      	(i386_pe_maybe_record_exported_symbol): Likewise.
      
      	* config/i386/i386.c (get_dllimport_decl): Likewise.
      	(ix86_init_machine_status): Likewise.
      	(assign_386_stack_local): Likewise.
      
      	* config/frv/frv.c (frv_init_machine_status): Likewise.
      
      	* config/darwin.c (machopic_indirection_name): Likewise.
      
      	* config/cris/cris.c (cris_init_machine_status): Likewise.
      
      	* config/bfin/bfin.c (bfin_init_machine_status): Likewise.
      
      	* config/avr/avr.c (avr_init_machine_status): Likewise.
      
      	* config/arm/arm.c (arm_init_machine_status): Likewise.
      
      	* config/alpha/alpha.c (alpha_init_machine_status): Likewise.
      	(alpha_need_linkage): Likewise.
      	(alpha_use_linkage): Likewise.
      
      	* cgraph.c (cgraph_allocate_node): Likewise.
      	(cgraph_create_edge_1): Likewise.
      	(cgraph_create_indirect_edge): Likewise.
      	(cgraph_add_asm_node): Likewise.
      
      	* cfgrtl.c (init_rtl_bb_info): Likewise.
      
      	* cfgloop.c (alloc_loop): Likewise.
      	(rescan_loop_exit): Likewise.
      
      	* cfg.c (init_flow): Likewise.
      	(alloc_block): Likewise.
      	(unchecked_make_edge): Likewise.
      
      	* c-parser.c (c_parse_init): Likewise.
      	(c_parse_file): Likewise.
      
      	* c-decl.c (bind): Likewise.
      	(record_inline_static): Likewise.
      	(push_scope): Likewise.
      	(make_label): Likewise.
      	(lookup_label_for_goto): Likewise.
      	(finish_struct): Likewise.
      	(finish_enum): Likewise.
      	(c_push_function_context): Likewise.
      
      	* bitmap.c (bitmap_element_allocate): Likewise.
      	(bitmap_gc_alloc_stat): Likewise.
      
      	* alias.c (record_alias_subset): Likewise.
      	(init_alias_analysis): Likewise.
      
      include:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* splay-tree.h: Update copyright years.
      	(splay_tree_s): Document fields.
      	(splay_tree_new_typed_alloc): New.
      
      	* hashtab.h: Update copyright years.
      	(htab_create_typed_alloc): New.
      
      libcpp:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* include/symtab.h (ht_identifier_ptr): New.
      
      libiberty:
      
      2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
      
      	* splay-tree.c: Update copyright years.
      	(splay_tree_new_typed_alloc): New.
      	(splay_tree_new_with_allocator): Use it.
      
      	* hashtab.c: Update copyright years.
      	(htab_create_typed_alloc): New.
      	(htab_create_alloc): Use it.
      
      	* functions.texi: Regenerate.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160425 138bc75d-0d04-0410-961f-82ee72b054a4
      ba72912a
  4. 21 May, 2010 1 commit
    • steven's avatar
      gcc/ChangeLog: · a7a46268
      steven authored
      	* tree.h: Include real.h and fixed-value.h as basic datatypes.
      	* dfp.c, convert.c, reload1.c, reginfo.c, tree-flow.h,
      	tree-ssa-threadedge.c, tree-ssanames.c, tree-loop-linear.c,
      	tree-into-ssa.c, tree-vect-generic.c, tree-ssa-structalias.c,
      	tree-ssa-loop-im.c, tree-dump.c, tree-complex.c, tree-ssa-uninit.c,
      	genrecog.c, tree-ssa-threadupdate.c, tree-ssa-loop-niter.c,
      	tree-pretty-print.c, tree-loop-distribution.c,
      	tree-ssa-loop-unswitch.c, c-lex.c, optabs.c, postreload-gcse.c,
      	tree-ssa-loop-manip.c, postreload.c, tree-ssa-loop-ch.c,
      	tree-tailcall.c, tree.c, reload.c, tree-scalar-evolution.c, rtlanal.c,
      	tree-phinodes.c, builtins.c, final.c, genoutput.c, fold-const.c,
      	tree-ssa-dse.c, genautomata.c, tree-ssa-uncprop.c, toplev.c,
      	tree-chrec.c, genemit.c, c-cppbuiltin.c, tree-ssa-sccvn.c,
      	tree-ssa-ccp.c, tree-ssa-loop-ivopts.c, mode-switching.c,
      	tree-call-cdce.c, cse.c, genpeep.c, tree-ssa-math-opts.c,
      	tree-ssa-dom.c, tree-nrv.c, tree-ssa-propagate.c, tree-ssa-alias.c,
      	tree-ssa-sink.c, jump.c, ifcvt.c, dwarf2out.c, expr.c, genattrtab.c,
      	genconditions.c, tree-ssa-loop-ivcanon.c, tree-ssa-loop.c,
      	tree-parloops.c, recog.c, tree-ssa-address.c, lcm.c, tree-eh.c,
      	gimple-pretty-print.c, c-pretty-print.c, print-rtl.c, gcse.c,
      	tree-if-conv.c, tree-data-ref.c, tree-affine.c, gimplify.c,
      	tree-ssa-phiopt.c, implicit-zee.c, expmed.c, tree-dfa.c, emit-rtl.c,
      	store-motion.c, cselib.c, tree-cfgcleanup.c, simplify-rtx.c,
      	tree-ssa-pre.c, genpreds.c, tree-mudflap.c, print-tree.c,
      	tree-ssa-copy.c, tree-ssa-forwprop.c, tree-ssa-dce.c, varasm.c,
      	tree-nested.c, tree-ssa.c, tree-ssa-loop-prefetch.c, rtl.c,
      	tree-inline.c, integrate.c, tree-optimize.c, tree-ssa-phiprop.c,
      	fixed-value.c, combine.c, tree-profile.c, c-common.c, sched-vis.c,
      	tree-cfg.c, passes.c, tree-ssa-reassoc.c, config/alpha/alpha.c,
      	config/frv/frv.c, config/s390/s390.c, config/m32c/m32c.c,
      	config/spu/spu.c, config/sparc/sparc.c, config/mep/mep.c,
      	config/m32r/m32r.c, config/rx/rx.c, config/i386/i386.c,
      	config/sh/sh.c, config/pdp11/pdp11.c, config/avr/avr.c,
      	config/crx/crx.c, config/xtensa/xtensa.c, config/stormy16/stormy16.c,
      	config/fr30/fr30.c, config/lm32/lm32.c, config/moxie/moxie.c,
      	config/m68hc11/m68hc11.c, config/cris/cris.c, config/iq2000/iq2000.c,
      	config/mn10300/mn10300.c, config/ia64/ia64.c, config/m68k/m68k.c,
      	config/rs6000/rs6000.c, config/picochip/picochip.c, config/darwin.c,
      	config/arc/arc.c, config/mcore/mcore.c, config/score/score3.c,
      	config/score/score7.c, config/score/score.c, config/arm/arm.c,
      	config/pa/pa.c, config/mips/mips.c, config/vax/vax.c,
      	config/h8300/h8300.c, config/v850/v850.c, config/mmix/mmix.c,
      	config/bfin/bfin.c:
      	Clean up redundant includes.
      	* Makefile.in: Update accordingly.
      
      java/ChangeLog:
      	* typeck.c, decl.c, jcf-parse.c, except.c, expr.c:
      
      cp/Changelog:
      	* error.c, tree.c, typeck2.c, cxx-pretty-print.c, mangle.c:
      	Clean up redundant includes.
      
      fortran/ChangeLog:
      	* trans-const.c, trans-types.c, trans-intrinsic.c:
      	Clean up redundant includes.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159663 138bc75d-0d04-0410-961f-82ee72b054a4
      a7a46268
  5. 31 Oct, 2009 1 commit
  6. 22 Sep, 2009 1 commit
  7. 25 Aug, 2009 1 commit
    • aesok's avatar
      * hooks.h (hook_bool_const_int_const_int_true): Declare. · cd90919d
      aesok authored
      	* hooks.c (hook_bool_const_int_const_int_true): New function.
      	* target.h (struct gcc_target): Add can_eliminate field.
      	* target-def.h (TARGET_CAN_ELIMINATE): Define.
      	(TARGET_INITIALIZER): Use TARGET_CAN_ELIMINATE.
      	* ira.c (setup_eliminable_regset): Use can_eliminate target hook.
      	* reload1.c (update_eliminables, init_elim_table): (Ditto.).
      	(elim_table): Revise comment.
      	* system.h (CAN_ELIMINATE): Poison.
      	* defaults.h (CAN_ELIMINATE): Remove.
      	* doc/tm.texi (CAN_ELIMINATE): Revise documentation.
      
      	* config/alpha/vms.h (CAN_ELIMINATE): Remove macro.
      	* config/alpha/alpha.c (TARGET_CAN_ELIMINATE) [TARGET_ABI_OPEN_VMS]:
      	Define macro.
      	(alpha_vms_can_eliminate): Declare as static, change return type to
      	bool.
      	* config/alpha/alpha-protos.h (alpha_vms_can_eliminate): Remove.
      
      	* config/arm/arm.h (CAN_ELIMINATE): Remove macro.
      	* config/arm/arm.c (TARGET_CAN_ELIMINATE): Define macro.
      	(arm_can_eliminate): New function.
      
      	* config/avr/avr.h (CAN_ELIMINATE): Remove macro.
      	* config/avr/avr.c (TARGET_CAN_ELIMINATE): Define macro.
      	(avr_can_eliminate): Declare as static.
      	* config/avr/avr-protos.h (avr_can_eliminate): Remove.
      
      	* config/bfin/bfin.h (CAN_ELIMINATE): Remove macro.
      	* config/bfin/bfin.c (TARGET_CAN_ELIMINATE): Define macro.
      	(bfin_can_eliminate): New function.
      
      	* config/crx/crx.h (CAN_ELIMINATE): Remove macro.
      	* config/crx/crx.c (TARGET_CAN_ELIMINATE): Define macro.
      	(crx_can_eliminate): New function.
      	
      	* config/fr30/fr30.h (CAN_ELIMINATE): Remove macro.
      	* config/fr30/fr30.c (TARGET_CAN_ELIMINATE): Define macro.
      	(fr30_can_eliminate): New function.
      
      	* config/frv/frv.h (CAN_ELIMINATE): Remove macro.
      	* config/frv/frv.c (TARGET_CAN_ELIMINATE): Define macro.
      	(frv_can_eliminate): New function.
      
      	* config/h8300/h8300.h (CAN_ELIMINATE): Remove macro.
      	* config/h8300/h8300.c (TARGET_CAN_ELIMINATE): Define macro.
      	(h8300_can_eliminate): New function.
      
      	* config/i386/i386.h (CAN_ELIMINATE): Remove macro.
      	* config/i386/i386.c (TARGET_CAN_ELIMINATE): Define macro.
      	(i386_can_eliminate): Declare as static, change return type to bool.
      	* config/i386/i386-protos.h (i386_can_eliminate): Remove.
      
      	* config/ia64/ia64.h (CAN_ELIMINATE): Remove macro.
      	* config/ia64/ia64.c (TARGET_CAN_ELIMINATE): Define macro.
      	(ia64_can_eliminate): New function.
      
      	* config/iq2000/iq2000.h (CAN_ELIMINATE): Remove macro.
      	* config/iq2000/iq2000.c (TARGET_CAN_ELIMINATE): Define macro.
      	(iq2000_can_eliminate): New function.
      
      	* config/m32r/m32r.h (CAN_ELIMINATE): Remove macro.
      	* config/m32r/m32r.c (TARGET_CAN_ELIMINATE): Define macro.
      	(m32r_can_eliminate): New function.
      
      	* config/m68hc11/m68hc11.h (CAN_ELIMINATE): Remove macro.
      	* config/m68hc11/m68hc11.c (TARGET_CAN_ELIMINATE): Define macro.
      	(m68hc11_can_eliminate): New function.
      
      	* config/m68k/m68k.h (CAN_ELIMINATE): Remove macro.
      	* config/m68k/m68k.c (TARGET_CAN_ELIMINATE): Define macro.
      	(m68k_can_eliminate): New function.
      
      	* config/mep/mep.h (CAN_ELIMINATE): Remove macro.
      	* config/mep/mep.c (TARGET_CAN_ELIMINATE): Define macro.
      	(mep_can_eliminate): New function.
      
      	* config/mips/mips.h (CAN_ELIMINATE): Remove macro.
      	* config/mips/mips.c (TARGET_CAN_ELIMINATE): Define macro.
      	(mips_can_eliminate): New function.
      
      	* config/rs6000/rs6000.h (CAN_ELIMINATE): Remove macro.
      	* config/rs6000/rs6000.c (TARGET_CAN_ELIMINATE): Define macro.
      	(rs6000_can_eliminate): New function.
      
      	* config/s390/s390.h (CAN_ELIMINATE): Remove macro.
      	* config/s390/s390.c (TARGET_CAN_ELIMINATE): Define macro.
      	(s390_can_eliminate): Declare as static.
      	* config/s390/s390-protos.h (sparc_can_eliminate): Remove.
      
      	* config/score/score.h (CAN_ELIMINATE): Remove macro.
      	* config/score/score.c (TARGET_CAN_ELIMINATE): Define macro.
      	(score_can_eliminate): New function.
      
      	* config/sparc/sparc.h (CAN_ELIMINATE): Remove macro.
      	* config/sparc/sparc.c (TARGET_CAN_ELIMINATE): Define macro.
      	(sparc_can_eliminate): Declare as static.
      	* config/sparc/sparc-protos.h (sparc_can_eliminate): Remove.
      
      	* config/stormy16/stormy16.h (CAN_ELIMINATE): Remove macro.
      	* config/stormy16/stormy16.c (TARGET_CAN_ELIMINATE): Define macro.
      	(xstormy16_can_eliminate): New function.
      
      	* config/v850/v850.h (CAN_ELIMINATE): Remove macro.
      	* config/v850/v850.c (TARGET_CAN_ELIMINATE): Define macro.
      	(v850_can_eliminate): New function.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151096 138bc75d-0d04-0410-961f-82ee72b054a4
      cd90919d
  8. 29 Jun, 2009 1 commit
    • aesok's avatar
      * target.h (struct gcc_target): Add frame_pointer_required field. · 5a1c68c3
      aesok authored
      	* target-def.h (TARGET_FRAME_POINTER_REQUIRED): New.
      	(TARGET_INITIALIZER): Use TARGET_FRAME_POINTER_REQUIRED.
      	* ira.c (setup_eliminable_regset): Use frame_pointer_required target
      	hook.
      	* reload1.c (update_eliminables): (Ditto.).
      	* gcc/system.h (FRAME_POINTER_REQUIRED): Poison.
      	* doc/tm.texi (FRAME_POINTER_REQUIRED): Revise documentation.
      	(INITIAL_FRAME_POINTER_OFFSET): (Ditto.).
      
      	* config/arc/arc.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/arm/arm.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/arm/arm.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      	(arm_frame_pointer_required): New function.
      
      	* config/avr/avr.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/avr/avr.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(avr_frame_pointer_required_p): Declare as static.
      	* config/avr/avr-protos.h (avr_frame_pointer_required_p): Remove.
      
      	* config/bfin/bfin.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/bfin/bfin.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      	(bfin_frame_pointer_required): Make as static, change return type
      	to bool.
      	* config/bfin/bfin-protos.h (bfin_frame_pointer_required): Remove.
      
      	* config/cris/cris.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/cris/cris.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(cris_frame_pointer_required): New function.
      	
      	* config/crx/crx.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/fr30/fr30.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/fr30/fr30.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(fr30_frame_pointer_required): New function.
      	
      	* config/frv/frv.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/frv/frv.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      	(frv_frame_pointer_required): Make as static, change return type
      	to bool.
      	* config/bfin/bfin-protos.h (frv_frame_pointer_required): Remove.
      
      	* config/i386/i386.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/i386/i386.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(ix86_frame_pointer_required): Make as static, change return type to
      	bool.
      	* config/i386/i386-protos.h (ix86_frame_pointer_required): Remove.
      
      	* config/m32c/m32c.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/m32c/m32c.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      
      	* config/m32r/m32r.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/mcore/mcore.h (CAN_ELIMINATE): Remove macro.
      	
      	* config/mep/mep.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/mips/mips.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/mips/mips.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(mips_frame_pointer_required): Make as static.
      	* config/mips/mips-protos.h (mips_frame_pointer_required): Remove.
      	
      	* config/mmix/mmix.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/mmix/mmix.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(mmix_frame_pointer_required): Mew function.
      
      	* config/moxie/moxie.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/moxie/moxie.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      
      	* config/pa/pa.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/score/score.h (FRAME_POINTER_REQUIRED): Remove macro.
      
      	* config/sh/sh.h (CAN_ELIMINATE): Remove macro.
      
      	* config/sparc/sparc.h (FRAME_POINTER_REQUIRED): Remove macro.
      	(CAN_ELIMINATE): Redefine.
      	* config/sparc/sparc.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
      	(sparc_frame_pointer_required): New function.
      	(sparc_can_eliminate): New function.
      	* config/sparc/sparc-protos.h (sparc_can_eliminate): Declare.
      
      	* config/vax/vax.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/vax/vax.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      
      	* config/xtensa/xtensa.h (FRAME_POINTER_REQUIRED): Remove macro.
      	* config/xtensa/xtensa.c (TARGET_FRAME_POINTER_REQUIRED): Define.
      	(xtensa_frame_pointer_required): Make as static, change return type
      	to bool.
      	* config/xtensa/xtensa-protos.h (xtensa_frame_pointer_required):
      	Remove.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149065 138bc75d-0d04-0410-961f-82ee72b054a4
      5a1c68c3
  9. 15 May, 2009 1 commit
    • bonzini's avatar
      2009-05-15 Paolo Bonzini <bonzini@gnu.org> · bc409cb4
      bonzini authored
              * config/frv/frv.h: Clean up references to GO_IF_LEGITIMATE_ADDRESS.
              * config/frv/frv.c: Likewise.
              * config/s390/s390.c: Likewise.
              * config/sparc/sparc.h: Likewise.
              * config/i386/i386.h: Likewise.
              * config/i386/i386.c: Likewise.
              * config/crx/crx.c: Likewise.
              * config/m68hc11/m68hc11.h: Likewise.
              * config/iq2000/iq2000.c: Likewise.
              * config/mn10300/mn10300.h: Likewise.
              * config/mn10300/mn10300.c: Likewise.
              * config/m68k/m68k.c: Likewise.
              * config/rs6000/rs6000.c: Likewise.
              * config/rs6000/xcoff.h: Likewise.
              * config/rs6000/linux64.h: Likewise.
              * config/rs6000/sysv4.h: Likewise.
              * config/score/score3.c: Likewise.
              * config/score/score7.c: Likewise.
              * config/score/score.c: Likewise.
              * config/arm/arm.md: Likewise.
              * config/mips/mips.c: Likewise.
              * config/mips/mips.md: Likewise.
              * config/bfin/bfin.h: Likewise.
              * config/pa/pa.c: Likewise.
              * config/pa/constraints.md: Likewise.
      
              * config/pdp11/pdp11-protos.h (legitimate_address_p): Delete.
              * config/pdp11/pdp11.c (legitimate_address_p): Delete.
              * config/pdp11/pdp11.h: Use memory_address_p instead.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147560 138bc75d-0d04-0410-961f-82ee72b054a4
      bc409cb4
  10. 14 May, 2009 1 commit
    • bonzini's avatar
      2009-05-14 Paolo Bonzini <bonzini@gnu.org> · fd50b071
      bonzini authored
      	* doc/tm.texi (TARGET_LEGITIMATE_ADDRESS_P): Refer mainly to this
      	in the former documentation of...
      	(GO_IF_LEGITIMATE_ADDRESS): ... this.
      	* ira-conflicts.c (get_dup_num): Use address_operand.
      	* targhooks.c (default_legitimate_address_p): New.
      	* targhooks.h (default_legitimate_address_p): New.
      	* reload.c (strict_memory_address_p) [!GO_IF_LEGITIMATE_ADDRESS]:
      	Call hook.
      	* recog.c (memory_address_p) [!GO_IF_LEGITIMATE_ADDRESS]: Call hook.
      	* target.h (struct target): Add legitimate_address_p.
      	* target-def.h (TARGET_LEGITIMATE_ADDRESS_P): New.
      	(TARGET_INITIALIZER): Include it.
      
      	* config/alpha/alpha.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/alpha/alpha-protos.h (alpha_legitimate_address_p): Remove.
      	* config/alpha/alpha.c (alpha_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	(REG_OK_STRICT_P): Delete.
      	* config/frv/frv-protos.h (frv_legitimate_address_p): Rename to...
      	(frv_legitimate_address_p_1): ... this.
      	* config/frv/frv.c (frv_legitimate_address_p): Forward to...
      	(frv_legitimate_address_p_1): ... the renamed old
      	frv_legitimate_address_p.
      	* config/frv/predicates.md: Adjust calls to frv_legitimate_address_p.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/s390/s390.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/s390/s390-protos.h (legitimate_address_p): Remove.
      	* config/s390/s390.c (legitimate_address_p): Rename to...
      	(s390_legitimate_address_p): ... this, make static.
      	(legitimize_address): Adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      	* config/s390/constraints.md ("e"): Call strict_memory_address_p.
      
      	* config/m32c/m32c.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/m32c/m32c-protos.h (m32c_legitimate_address_p): Remove.
      	* config/m32c/m32c.c (m32c_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/spu/spu.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/spu/spu-protos.h (spu_legitimate_address): Remove.
      	* config/spu/spu.c (spu_legitimate_address): Rename to...
      	(spu_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/sparc/sparc.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/sparc/sparc-protos.h (legitimate_address_p): Remove.
      	* config/sparc/sparc.c (legitimate_address_p): Rename to...
      	(sparc_legitimate_address_p): ... this, make static and return bool.
      	(legitimize_address): Adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/i386/i386.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/i386/i386-protos.h (legitimate_address_p): Remove.
      	* config/i386/i386.c (legitimate_address_p): Rename to...
      	(ix86_legitimate_address_p): ... this, make static.
      	(constant_address_p): Move after it, adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/avr/avr.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/avr/avr-protos.h (legitimate_address_p): Remove.
      	* config/avr/avr.c (legitimate_address_p): Rename to...
      	(avr_legitimate_address_p): ... this, make static.
      	(legitimize_address): Adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/crx/crx.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/crx/crx-protos.h (crx_legitimate_address_p): Remove.
      	* config/crx/crx.c (crx_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/xtensa/xtensa.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/xtensa/xtensa-protos.h (xtensa_legitimate_address_p): Remove.
      	* config/xtensa/xtensa.c (xtensa_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/stormy16/stormy16.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/stormy16/stormy16-protos.h (xstormy16_legitimate_address_p):
      	Remove.
      	* config/stormy16/stormy16.c (xstormy16_legitimate_address_p):
      	Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/m68hc11/m68hc11.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/m68hc11/m68hc11-protos.h (m68hc11_go_if_legitimate_address):
      	Remove.
      	* config/m68hc11/m68hc11.c (m68hc11_go_if_legitimate_address):
      	Rename to...
      	(m68hc11_legitimate_address_p): ... this, make static.
      	(go_if_legitimate_address_internal): Rename to...
      	(m68hc11_legitimate_address_p_1): ... this.
      	(legitimize_address): Adjust call.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/iq2000/iq2000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/iq2000/iq2000-protos.h (iq2000_legitimate_address_p):
      	Remove.
      	* config/iq2000/iq2000.c (iq2000_legitimate_address_p):
      	Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/mn10300/mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/mn10300/mn10300-protos.h (legitimate_address_p): Remove.
      	* config/mn10300/mn10300.c (legitimate_address_p): Rename to...
      	(mn10300_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/m68k/m68k.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/m68k/m68k-protos.h (m68k_legitimate_address_p): Remove.
      	* config/m68k/m68k.c (m68k_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/rs6000/rs6000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	(REG_OK_STRICT_FLAG, REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P): Delete.
      	(INT_REG_OK_FOR_BASE_P, INT_REG_OK_FOR_INDEX_P): Move above.
      	* config/rs6000/rs6000.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/rs6000/rs6000-protos.h (rs6000_legitimate_address): Remove.
      	* config/rs6000/rs6000.c (rs6000_legitimate_address): Rename to...
      	(rs6000_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      	(REG_MODE_OK_FOR_BASE_P): Delete.
      	(rs6000_legitimize_reload_address): Use INT_REG_OK_FOR_BASE_P.
      
      	* config/picochip/picochip.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/picochip/picochip-protos.h (picochip_legitimate_address_p):
      	Delete.
      	* config/picochip/picochip.c (picochip_legitimate_address_p): Make
      	static, adjust types.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/score/score.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/score/score.c (score_address_p): Rename to...
      	(score_legitimate_address_p): ... this.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      	* config/score/score3.c (score3_address_p): Rename to...
      	(score3_legitimate_address_p): ... this.
      	* config/score/score7.c (score7_address_p): Rename to...
      	(score7_legitimate_address_p): ... this.
      
      	* config/arm/arm.h (ARM_GO_IF_LEGITIMATE_ADDRESS,
      	THUMB2_GO_IF_LEGITIMATE_ADDRESS, THUMB1_GO_IF_LEGITIMATE_ADDRESS,
      	GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/arm/arm-protos.h (thumb1_legitimate_address_p,
      	thumb2_legitimate_address_p): Delete.
      	(arm_legitimate_address_p): Rename to...
      	(arm_legitimate_address_outer_p): ... this.
      	* config/arm/constraints.md ("Uq"): Adjust call.
      	* config/arm/predicates.md (arm_extendqisi_mem_op): Likewise.
      	* config/arm/arm.c (arm_legitimate_address_p): New, rename old one to...
      	(arm_legitimate_address_outer_p): ... this.
      	(thumb1_legitimate_address_p, thumb2_legitimate_address_p): Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/mips/mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/mips/mips-protos.h (mips_legitimate_address_p): Remove.
      	* config/mips/mips.c (mips_legitimate_address_p): ... Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/vax/vax.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/vax/vax-protos.h (legitimate_address_p): Remove.
      	* config/vax/vax.c (legitimate_address_p): Rename to...
      	(vax_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/h8300/h8300.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/h8300/h8300-protos.h (h8300_legitimate_address_p): Remove.
      	* config/h8300/h8300.c (h8300_legitimate_address_p): ... Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/mmix/mmix.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/mmix/mmix-protos.h (mmix_legitimize_address): Remove.
      	* config/mmix/mmix.c (mmix_legitimate_address): Rename to...
      	(mmix_legitimate_address_p): ... this, make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      	* config/bfin/bfin.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
      	* config/bfin/bfin-protos.h (bfin_legitimate_address_p): Remove.
      	* config/bfin/bfin.c (bfin_legitimate_address_p): ... Make static.
      	(TARGET_LEGITIMATE_ADDRESS_P): New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147534 138bc75d-0d04-0410-961f-82ee72b054a4
      fd50b071
  11. 12 May, 2009 1 commit
  12. 04 May, 2009 1 commit
    • bonzini's avatar
      2009-05-04 Paolo Bonzini <bonzini@gnu.org> · 41e3a0c7
      bonzini authored
       	* doc/tm.texi (LEGITIMIZE_ADDRESS): Revise documentation.
      	* gcc/defaults.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/explow.c (memory_address): Use target hook.
      	* gcc/targhooks.c (default_legitimize_address): New.
      	* gcc/targhooks.h (default_legitimize_address): New.
      	* gcc/target.h (legitimize_address): New.
      	* gcc/target-def.h (TARGET_LEGITIMIZE_ADDRESS): New.
      	(TARGET_INITIALIZER): Include it.
      	* gcc/system.h (LEGITIMIZE_ADDRESS): Poison.
      
      	* config/bfin/bfin-protos.h (legitimize_address): Remove.
      	* config/bfin/bfin.c (legitimize_address): Remove.
      	* config/bfin/bfin.h (LEGITIMIZE_ADDRESS): Remove.
      	* config/m68hc11/m68hc11-protos.h (m68hc11_legitimize_address): Remove.
      	* config/m68hc11/m68hc11.c (m68hc11_legitimize_address): Remove.
      	* config/m68hc11/m68hc11.h (LEGITIMIZE_ADDRESS): Remove.
      
      	* gcc/config/arm/arm.h (LEGITIMIZE_ADDRESS, ARM_LEGITIMIZE_ADDRESS,
      	THUMB_LEGITIMIZE_ADDRESS, THUMB2_LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/s390/s390.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/m32c/m32c.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/sparc/sparc.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/m32r/m32r.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/i386/i386.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/sh/sh.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/avr/avr.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/m68hc11/m68hc11.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/iq2000/iq2000.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/mn10300/mn10300.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/m68k/m68k.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/score/score.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/pa/pa.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/mips/mips.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/alpha/alpha.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/frv/frv.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/spu/spu.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/xtensa/xtensa.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/cris/cris.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/rs6000/rs6000.h (LEGITIMIZE_ADDRESS): Delete.
      	* gcc/config/picochip/picochip.h (LEGITIMIZE_ADDRESS): Delete.
      
      	* gcc/config/s390/s390-protos.h (legitimize_address): Delete.
      	* gcc/config/m32c/m32c-protos.h (m32c_legitimize_address): Delete.
      	* gcc/config/sparc/sparc-protos.h (legitimize_address): Delete.
      	* gcc/config/i386/i386-protos.h (legitimize_address): Delete.
      	* gcc/config/avr/avr-protos.h (legitimize_address): Delete.
      	* gcc/config/mn10300/mn10300-protos.h (legitimize_address): Delete.
      	* gcc/config/score/score-protos.h (score_legitimize_address): Delete.
      	* gcc/config/arm/arm-protos.h (arm_legitimize_address,
      	(thumb_legitimize_address): Delete.
      	* gcc/config/pa/pa-protos.h (hppa_legitimize_address): Delete.
      	* gcc/config/mips/mips-protos.h (mips_legitimize_address): Delete.
      	* gcc/config/alpha/alpha-protos.h (alpha_legitimize_address): Delete.
      	* gcc/config/frv/frv-protos.h (frv_legitimize_address): Delete.
      	* gcc/config/spu/spu-protos.h (spu_legitimize_address): Delete.
      	* gcc/config/xtensa/xtensa-protos.h (xtensa_legitimize_address): Delete.
      	* gcc/config/rs6000/rs6000-protos.h (rs6000_legitimize_address): Delete.
      
      	* config/arm/arm.c (arm_legitimize_address): Maybe call Thumb version.
      	* config/m32c/m32c.c (m32c_legitimize_address): Standardize.
      	* config/m32r/m32r.c (m32r_legitimize_address): New.
      	* config/m68k/m68k.c (m68k_legitimize_address): New.
      	* config/score/score.c (score_legitimize_address): Standardize.
      	* config/score/score3.c (score3_legitimize_address): Standardize.
      	* config/score/score3.h (score3_legitimize_address): Adjust.
      	* config/score/score7.c (score7_legitimize_address): Standardize.
      	* config/score/score7.h (score7_legitimize_address): Adjust.
      	* config/sh/sh.c (sh_legitimize_address): New.
      	* config/iq2000/iq2000.c (iq2000_legitimize_address): New.
      
      	* gcc/config/s390/s390.c (legitimize_address): Rename to...
       	(s390_legitimize_address): ... this.
      	* gcc/config/sparc/sparc.c (legitimize_address): Rename to...
      	(sparc_legitimize_address): ... this.
      	* gcc/config/i386/i386.c (legitimize_address): Rename to...
      	(ix86_legitimize_address): ... this.
      	* gcc/config/avr/avr.c (legitimize_address): Rename to...
      	(avr_legitimize_address): ... this.
      	* gcc/config/mn10300/mn10300.c (legitimize_address): Rename to...
      	(mn10300_legitimize_address): ... this.
      	* config/alpha/alpha.c (alpha_legitimize_address): Wrap...
      	(alpha_legitimize_address_1): ... the old alpha_legitimize_address.
      	(alpha_expand_mov): Adjust call.
      
      	* config/frv/frv.c (frv_legitimize_address): Return x on failure.
      	* config/spu/spu.c (spu_legitimize_address): Likewise.
      	* config/xtensa/xtensa.c (xtensa_legitimize_address): Likewise.
      	* config/rs6000/rs6000.c (rs6000_legitimize_address): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147098 138bc75d-0d04-0410-961f-82ee72b054a4
      41e3a0c7
  13. 24 Apr, 2009 1 commit
  14. 22 Apr, 2009 1 commit
    • dnovillo's avatar
      2009-04-21 Taras Glek <tglek@mozilla.com> · fb1e4f4a
      dnovillo authored
      	* include/hashtab.h: Update GTY annotations to new syntax
      	* include/splay-tree.h: Likewise
      
      
      gcc/ChangeLog
      
      2009-04-21  Taras Glek <tglek@mozilla.com>
      
      	* alias.c: Update GTY annotations to new syntax
      	* basic-block.h: Likewise
      	* bitmap.h: Likewise
      	* c-common.h: Likewise
      	* c-decl.c: Likewise
      	* c-parser.c: Likewise
      	* c-pragma.c: Likewise
      	* c-tree.h: Likewise
      	* cfgloop.h: Likewise
      	* cgraph.h: Likewise
      	* config/alpha/alpha.c: Likewise
      	* config/arm/arm.h: Likewise
      	* config/avr/avr.h: Likewise
      	* config/bfin/bfin.c: Likewise
      	* config/cris/cris.c: Likewise
      	* config/darwin.c: Likewise
      	* config/frv/frv.c: Likewise
      	* config/i386/i386.c: Likewise
      	* config/i386/i386.h: Likewise
      	* config/i386/winnt.c: Likewise
      	* config/ia64/ia64.h: Likewise
      	* config/iq2000/iq2000.c: Likewise
      	* config/mips/mips.c: Likewise
      	* config/mmix/mmix.h: Likewise
      	* config/pa/pa.c: Likewise
      	* config/pa/pa.h: Likewise
      	* config/rs6000/rs6000.c: Likewise
      	* config/s390/s390.c: Likewise
      	* config/sparc/sparc.c: Likewise
      	* config/xtensa/xtensa.c: Likewise
      	* cselib.h: Likewise
      	* dbxout.c: Likewise
      	* dwarf2out.c: Likewise
      	* except.c: Likewise
      	* except.h: Likewise
      	* fixed-value.h: Likewise
      	* function.c: Likewise
      	* function.h: Likewise
      	* gimple.h: Likewise
      	* integrate.c: Likewise
      	* optabs.c: Likewise
      	* output.h: Likewise
      	* real.h: Likewise
      	* rtl.h: Likewise
      	* stringpool.c: Likewise
      	* tree-data-ref.c: Likewise
      	* tree-flow.h: Likewise
      	* tree-scalar-evolution.c: Likewise
      	* tree-ssa-address.c: Likewise
      	* tree-ssa-alias.h: Likewise
      	* tree-ssa-operands.h: Likewise
      	* tree.c: Likewise
      	* tree.h: Likewise
      	* varasm.c: Likewise
      	* varray.h: Likewise
      	* vec.h: Likewise
      	* coretypes.h: Do not define GTY macro if it is already defined
      	* doc/gty.texi: Update GTY documentation to new syntax
      	* gengtype-lex.l: Enforce attribute-like syntax for GTY annotations on structs
      	* gengtype-parse.c: Likewise
      
      
      gcc/ada/ChangeLog
      
      2009-04-21  Taras Glek <tglek@mozilla.com>
      
      	* gcc-interface/ada-tree.h: Update GTY annotations to new syntax
      	* gcc-interface/trans.c: Likewise
      	* gcc-interface/utils.c: Likewise
      
      
      gcc/cp/ChangeLog
      
      2009-04-21  Taras Glek <tglek@mozilla.com>
      
      	* cp-tree.h: Update GTY annotations to new syntax
      	* decl.c: Likewise
      	* mangle.c: Likewise
      	* name-lookup.c: Likewise
      	* name-lookup.h: Likewise
      	* parser.c: Likewise
      	* pt.c: Likewise
      	* rtti.c: Likewise
      	* semantics.c: Likewise
      	* typeck2.c: Likewise
      
      
      gcc/fortran/ChangeLog
      
      2009-04-21  Taras Glek <tglek@mozilla.com>
      
      	* f95-lang.c: Update GTY annotations to new syntax
      	* trans-intrinsic.c: Likewise
      	* trans-io.c: Likewise
      	* trans.h: Likewise
      
      
      gcc/java/ChangeLog
      
      2009-04-21  Taras Glek <tglek@mozilla.com>
      
      	* builtins.c: Update GTY annotations to new syntax
      	* decl.c: Likewise
      	* java-tree.h: Likewise
      	* jcf.h: Likewise
      	* lang.c: Likewise
      
      
      gcc/objc/ChangeLog
      
      2009-04-21  Taras Glek <tglek@mozilla.com>
      
      	* objc-act.c: Update GTY annotations to new syntax
      	* objc-act.h: Likewise
      
      
      libcpp/ChangeLog
      
      2009-04-21  Taras Glek <tglek@mozilla.com>
      
      	* include/cpp-id-data.h: Update GTY annotations to new syntax
      	* include/cpplib.h: Likewise
      	* include/line-map.h: Likewise
      	* include/symtab.h: Likewise
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146607 138bc75d-0d04-0410-961f-82ee72b054a4
      fb1e4f4a
  15. 20 Feb, 2009 1 commit
  16. 18 Sep, 2008 1 commit
    • nickc's avatar
      * config/frv/frv.h (IRA_COVER_CLASSES): Define. · a3eb7c77
      nickc authored
        (SECONDARY_INPUT_RELOAD_CLASS): Omit unused argument in call
        to frv_secondary_reload_class.
        (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise.
        * config/frv/frv.c (TARGET_SECONDARY_RELOAD): Define.
        (frv_secondary_reload_class): Omit unused parameter.
        (frv_secondary_reload): New function.  Handle the case when
        secondary_reload_class() is called before the reload_(in|out)
        _optabs have been initialised.
        * config/frv/frv-protos.h (frv_secondary_reload_class): Omit
        unused parameter.
        * config/frv/frv.md: Define an exclusion set between fr550_m0
        and fr550_f0.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@140452 138bc75d-0d04-0410-961f-82ee72b054a4
      a3eb7c77
  17. 31 Aug, 2008 2 commits
    • hubicka's avatar
      · db65aa2c
      hubicka authored
      	* frv.c (frv_rtx_costs): Update forward declaration.
      	* spu.c (spu_rtx_costs): Likewise.
      	* pdp11.c: Include df.h
      	(pdp11_output_function_epilogue): Use df_set_regs_ever_live.
      	* m68hc11.c (m68hc11_gen_highpart): Fix call of gen_rtx_SUBREG.
      	(m68hc11_rtx_costs_1): Fix call of rtx_cost.
      	* iq2000.c (iq2000_address_cost): Add speed argument.
      	(iq2000_rtx_costs): Likewise.
      	* mn10300.c (mn10300_address_cost_1): Remove speed argument;
      	update call of mn10300_address_cost.
      	* mcore.c: Include df.h
      	(mcore_rtx_costs): Update prototype.
      	* score3.c: Include df.h
      	(score3_rtx_costs): Remove speed argument.
      	* score7.c: Include df.h
      	(score7_address_cost): Remove speed argument.
      	* score-protos.h (score_address_cost): Update prototype.
      	* score.c: Include df.h
      	(score_rtx_costs): Update call of costs functions.
      	* v850.c (v850_rtx_costs): Add bool argument.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@139843 138bc75d-0d04-0410-961f-82ee72b054a4
      db65aa2c
    • hubicka's avatar
      · f529eb25
      hubicka authored
      	* fwprop.c (should_replace_address): Add speed attribute.
      	(PR_OPTIMIZE_FOR_SPEED): New flag.
      	(propagate_rtx_1): Use it.
      	(propagate_rtx): Set it.
      	(try_fwprop_subst): Update call of rtx_costs.
      	(forward_propagate_and_simplify): LIkewise.
      	* hooks.c (hook_int_rtx_bool_0): New
      	(hook_bool_rtx_int_int_intp_false): Replace by ...
      	(hook_bool_rtx_int_int_intp_bool_false): .. thisone.
      	* hooks.h (hook_int_rtx_bool_0): New
      	(hook_bool_rtx_int_int_intp_false): Replace by ...
      	(hook_bool_rtx_int_int_intp_bool_false): .. thisone.
      	* optabs.c (avoid_expensive_constant): UPdate call of rtx_cost.
      	(prepare_cmp_insn): UPdate call of rtx_cost.
      	* postreload.c (reload_cse_simplify_set): Update call of rtx_cost.
      	(reload_cse_simplify_operands): Update call of rtx_cost.
      	(reload_cse_move2add): call of rtx_cost.
      	* target.h (struct gcc_target): Update rtx_costs and address_costs.
      	* rtlanal.c (rtx_cost): Add speed argument.
      	(address_cost): Add speed argument
      	(default_address_cost): Likewise.
      	(insn_rtx_cost): Likewise.
      	* cfgloopanal.c (seq_cost): Add speed argument.
      	(target_reg_cost, target_spill_cost): Turn to array.
      	(init_set_costs): Update for speed.
      	(estimate_reg_pressure_cost): Add speed argument.
      	* auto-inc-dec.c (attempt_change): Update call of rtx_cost.
      	* dojump.c (prefer_and_bit_test): UPdate call of rtx_cost.
      	* tree-ssa-loop-ivopts.c (struct ivopts_data): New field speed.
      	(seq_cost): Add speed argument.
      	(computation_cost): Add speed arugment.
      	(add_cost, multiply_by_const, get_address_cost): add speed argument.
      	(force_expr_to_var_cost): Update for profile info.
      	(force_var_cost): Likewise.
      	(split_address_cost): Likewise.
      	(ptr_difference_cost): Likewise.
      	(difference_cost): Likewise.
      	(get_computation_cost_at): Likewise.
      	(determine_iv_cost): Likewise.
      	(ivopts_global_cost_for_size): Likewise.
      	(rewrite_use_address): Likewise.
      	(tree_ssa_iv_optimize_loop): Initialize speed field.
      	* cse.c (optimize_this_for_speed_p): New static var.
      	(notreg_cost): Update call of rtx_cost.
      	(cse_extended_basic_block): set optimize_this_for_speed_p.
      	* ifcvt.c (cheap_bb_rtx_cost_p): Update call of rtx_cost.
      	(noce_try_cmove_arith): Likewise.
      	(noce_try_sign_mask): LIkewise.
      	* expr.c (compress_float_constant): Update rtx_cost calls.
      	* tree-ssa-address.c (most_expensive_mult_to_index): Add speed argument.
      	(addr_to_parts): Likewise.
      	(create_mem_ref): Likewise.
      	* dse.c (find_shift_sequence): Add speed argument.
      	(replace_read): Update call.
      	* calls.c (precompute_register_parameters): Update call of rtx_cost.
      	* expmed.c (sdiv_pow2_cheap, smod_pow2_cheap, zero_cost, add_cost,
      	* neg_cost, shift_cost, shiftadd_cost,
      	shiftsub_cost, mul_cost, sdiv_cost, udiv_cost ,mul_widen_cost,
      	mul_highpart_cost): Increase dimension.
      	(init_expmed): Initialize for both size and speed.
      	(expand_shift): Use profile.
      	(synth_mult): Use profile.
      	(choose_mult_variant): Use profile.
      	(expand_mult): Use profile.
      	(expand_mult_highpart_optab): Use profile.
      	(expand_mult_highpart): Use profile.
      	(expand_smod_pow2): Use profile.
      	(expand_divmod): Use profile.
      	* simplify-rtx.c (simplify_binary_operation_1): Update call of rtx_cost.
      	* loop-invariant.c (create_new_invariant): Use profile.
      	(gain_for_invariant): Add speed parameter.
      	(best_gain_for_invariant): Likewise.
      	(find_invariants_to_move): Likewise.
      	(move_single_loop_invariants): Set it.
      	* target-def.h (TARGET_RTX_COSTS): Use hook.
      	* rtl.h (rtx_cost, address_cost, insn_rtx_cost): Update prototpe.
      	(optimize_insn_for_size_p, optimize_insn_for_speed_p): Declare.
      	* output.h (default_address_cost): Update prototype.
      	* combine.c (optimize_this_for_speed_p): New static var.
      	(combine_validate_cost): Update call of rtx_cost.
      	(combine_instructions): Set optimize_this_for_speed_p.
      	(expand_compound_operation): Update call of rtx_cost.
      	(make_extraction):Update call of rtx_cost.
      	(force_to_mode):Update call of rtx_cost.
      	(distribute_and_simplify_rtx):Update call of rtx_cost.
      	* cfgloop.h (target_reg_cost, target_spill_cost): Turn to array.
      	(estimate_reg_pressure_cost): Update prototype.
      	* tree-flow.h (multiply_by_cost, create_mem_ref): Update prototype.
      	* basic-block.h (optimize_insn_for_size_p, optimize_insn_for_speed_p):
      	Remove.
      	* config/alpha/alpha.c (alpha_rtx_costs): Update.
      	(alpha_rtx_costs): Update.
      	* config/frv/frv.c (frv_rtx_costs): Update.
      	* config/s390/s390.c (s390_rtx_costs): Update.
      	* config/m32c/m32c.c (m32c_memory_move_cost): Update.
      	(m32c_rtx_costs): Update.
      	* config/spu/spu.c (TARGET_ADDRESS_COST): Upate.
      	(spu_rtx_costs): Update.
      	* config/sparc/sparc.c (sparc_rtx_costs): Update.
      	* config/m32r/m32r.c (m32r_rtx_costs): Update.
      	* config/i386/i386.c (:ix86_address_cost): Update.
      	(ix86_rtx_costs): Update.
      	* config/sh/sh.c (sh_rtx_costs, sh_address_cost): Update.
      	* config/pdp11/pdp11.c (pdp11_rtx_costs): Update.
      	* config/avr/avr.c (avr_rtx_costs, avr_address_cost): Update.
      	* config/crx/crx.c (crx_address_cost): Update.
      	* config/xtensa/xtensa.c (xtensa_rtx_costs): Update.
      	* config/stormy16/stormy16.c
      	(xstormy16_address_cost, xstormy16_rtx_costs): Update.
      	* config/m68hc11/m68hc11.c
      	(m68hc11_address_cost, m68hc11_rtx_costs): Update.
      	* config/cris/cris.c (cris_rtx_costs, cris_address_cost): Update.
      	* config/iq2000/iq2000.c (iq2000_rtx_costs, iq2000_address_cost): Update.
      	* config/mn10300/mn10300.c (mn10300_address_cost, mn10300_rtx_costs): Update
      	* config/ia64/ia64.c (ia64_rtx_costs): Update.
      	* config/m68k/m68k.c (m68k_rtx_costs): Update.
      	* config/rs6000/rs6000.c (rs6000_rtx_costs): Update.
      	* config/arc/arc.c (arc_rtx_costs, arc_address_cost): Update.
      	* config/mcore/mcore.c (TARGET_ADDRESS_COST): Update.
      	(mcore_rtx_costs): update.
      	* config/score/score3.c (score3_rtx_costs): Update.
      	* config/score/score7.c (score7_rtx_costs): Update.
      	* config/score/score3.h (score3_rtx_costs):Update.
      	* config/score/score7.h (score7_rtx_costs): Update.
      	* config/score/score.c (score_rtx_costs): Update.
      	* config/arm/arm.c (arm_address_cost): Update.
      	(arm_rtx_costs_1): Update.
      	(arm_rtx_costs_1): Update.
      	(arm_size_rtx_costs): Update.
      	(arm_size_rtx_costs): Update.
      	(arm_size_rtx_costs): Update.
      	(arm_xscale_rtx_costs): Update.
      	(arm_thumb_address_cost): Update.
      	* config/pa/pa.c (hppa_address_cost): Update.
      	* config/mips/mips.c (mips_rtx_costs): Update.
      	* config/vax/vax.c (vax_address_cost): Update.
      	* config/h8300/h8300.c (h8300_shift_costs): Update.
      	(h8300_rtx_costs): Update.
      	* config/v850/v850.c (TARGET_ADDRESS_COST): Update.
      	(v850_rtx_costs): Update.
      	* config/mmix/mmix.c (mmix_rtx_costs, mmix_rtx_costs): Update.
      	* config/bfin/bfin.c
      	(bfin_address_cost): Update.
      	(bfin_rtx_costs): Update.
      	* stmt.c (lshift_cheap_p): Update.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@139821 138bc75d-0d04-0410-961f-82ee72b054a4
      f529eb25
  18. 06 Aug, 2008 1 commit
    • ghazi's avatar
      * config/alpha/alpha.c (alpha_preferred_reload_class, · 8deb3959
      ghazi authored
      	alpha_secondary_reload, alpha_emit_set_const_1, function_value,
      	alpha_output_mi_thunk_osf): Avoid C++ keywords.
      	* config/arm/arm.c (output_move_vfp, output_move_neon): Likewise.
      	* config/arm/arm.md: Likewise.
      	* config/avr/avr-protos.h (preferred_reload_class,
      	test_hard_reg_class, avr_simplify_comparison_p,
      	out_shift_with_cnt, class_max_nregs): Likewise.
      	* config/avr/avr.c (class_max_nregs, avr_simplify_comparison_p,
      	output_movqi, output_movhi, output_movsisf, out_shift_with_cnt,
      	preferred_reload_class, test_hard_reg_class): Likewise.
      	* config/bfin/bfin.c (legitimize_pic_address, hard_regno_mode_ok,
      	bfin_memory_move_cost, bfin_secondary_reload,
      	bfin_output_mi_thunk): Likewise.
      	* config/crx/crx.c (crx_secondary_reload_class,
      	crx_memory_move_cost): Likewise.
      	* config/frv/frv-protos.h (frv_secondary_reload_class,
      	frv_class_likely_spilled_p, frv_class_max_nregs): Likewise.
      	* config/frv/frv.c (frv_override_options, frv_alloc_temp_reg,
      	frv_secondary_reload_class, frv_class_likely_spilled_p,
      	frv_class_max_nregs): Likewise.
      	* config/h8300/h8300.c (h8300_classify_operand,
      	h8300_unary_length, h8300_bitfield_length, h8300_asm_insn_count):
      	Likewise.
      	* config/i386/winnt.c (i386_pe_declare_function_type): Likewise.
      	* config/ia64/ia64.c (ia64_preferred_reload_class,
      	ia64_secondary_reload_class, ia64_output_mi_thunk): Likewise.
      	* config/iq2000/iq2000.c (gen_int_relational): Likewise.
      	* config/m32c/m32c.c (class_can_hold_mode, m32c_output_compare):
      	Likewise.
      	* config/m68hc11/m68hc11.c (preferred_reload_class,
      	m68hc11_memory_move_cost): Likewise.
      	* config/mcore/mcore.c (mcore_secondary_reload_class,
      	mcore_reload_class): Likewise.
      	* config/mips/mips.c (mips_hard_regno_mode_ok_p,
      	mips_class_max_nregs, mips_cannot_change_mode_class,
      	mips_preferred_reload_class, mips_secondary_reload_class,
      	mips_output_mi_thunk): Likewise.
      	* config/mmix/mmix.c (mmix_preferred_reload_class,
      	mmix_preferred_output_reload_class, mmix_secondary_reload_class):
      	Likewise.
      	* config/mn10300/mn10300.c (mn10300_secondary_reload_class):
      	Likewise.
      	* config/pa/pa.c (pa_secondary_reload, pa_combine_instructions,
      	pa_can_combine_p, pa_cannot_change_mode_class): Likewise.
      	* config/pa/pa.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise.
      	* config/rs6000/rs6000.c (paired_expand_vector_init,
      	rs6000_secondary_reload_class, rs6000_output_mi_thunk,
      	compare_section_name, rs6000_memory_move_cost): Likewise.
      	* config/s390/s390.c (s390_emit_compare_and_swap,
      	s390_preferred_reload_class, s390_secondary_reload,
      	legitimize_pic_address, legitimize_tls_address,
      	legitimize_reload_address, s390_expand_cs_hqi, s390_expand_atomic,
      	s390_class_max_nregs): Likewise.
      	* config/s390/s390.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise.
      	* config/s390/s390.md: Likewise.
      	* config/score/score-protos.h (score_secondary_reload_class,
      	score_preferred_reload_class): Likewise.
      	* config/score/score.c (score_preferred_reload_class,
      	score_secondary_reload_class): Likewise.
      	* config/score/score3.c (score3_output_mi_thunk,
      	score3_preferred_reload_class, score3_secondary_reload_class,
      	score3_hard_regno_mode_ok): Likewise.
      	* config/score/score3.h (score3_preferred_reload_class,
      	score3_secondary_reload_class): Likewise.
      	* config/score/score7.c (score7_output_mi_thunk,
      	score7_preferred_reload_class, score7_secondary_reload_class,
      	score7_hard_regno_mode_ok): Likewise.
      	* config/score/score7.h (score7_preferred_reload_class,
      	score7_secondary_reload_class): Likewise.
      	* config/sh/sh.c (prepare_move_operands, output_far_jump,
      	output_branchy_insn, add_constant, gen_block_redirect,
      	sh_insn_length_adjustment, sh_cannot_change_mode_class,
      	sh_output_mi_thunk, replace_n_hard_rtx, sh_secondary_reload):
      	Likewise.
      	* config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.
      	* config/stormy16/stormy16.c (xstormy16_output_cbranch_hi,
      	xstormy16_output_cbranch_si, xstormy16_secondary_reload_class,
      	xstormy16_preferred_reload_class): Likewise.
      	* config/xtensa/xtensa.c (xtensa_expand_compare_and_swap,
      	xtensa_expand_atomic, override_options,
      	xtensa_preferred_reload_class, xtensa_secondary_reload_class):
      	Likewise.
      	* reorg.c (try_merge_delay_insns): Likewise.
      	* tree.c (merge_dllimport_decl_attributes): Likewise.
      
      	* config/frv/frv.c (frv_print_operand): Change isalpha to ISALPHA.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138813 138bc75d-0d04-0410-961f-82ee72b054a4
      8deb3959
  19. 28 Jul, 2008 1 commit
    • rguenth's avatar
      2008-07-28 Richard Guenther <rguenther@suse.de> · 75a70cf9
      rguenth authored
      	Merge from gimple-tuples-branch.
      
      	* ChangeLog.tuples: ChangeLog from gimple-tuples-branch.
      	* gimple.def: New file.
      	* gsstruct.def: Likewise.
      	* gimple-iterator.c: Likewise.
      	* gimple-pretty-print.c: Likewise.
      	* tree-gimple.c: Removed.  Merged into ...
      	* gimple.c: ... here.  New file.
      	* tree-gimple.h: Removed.  Merged into ...
      	* gimple.h: ... here.  New file.
      
      	* Makefile.in: Add dependencies on GIMPLE_H and tree-iterator.h.
      	* configure.ac: Added support for ENABLE_GIMPLE_CHECKING and the
      	--enable-checking=gimple flag.
      	* config.in: Likewise.
      	* configure: Regenerated.
      
      	* tree-ssa-operands.h: Tuplified.
      	* tree-vrp.c: Likewise.
      	* tree-loop-linear.c: Likewise.
      	* tree-into-ssa.c: Likewise.
      	* tree-ssa-loop-im.c: Likewise.
      	* tree-dump.c: Likewise.
      	* tree-complex.c: Likewise.
      	* cgraphbuild.c: Likewise.
      	* tree-ssa-threadupdate.c: Likewise.
      	* tree-ssa-loop-niter.c: Likewise.
      	* tree-pretty-print.c: Likewise.
      	* tracer.c: Likewise.
      	* gengtype.c: Likewise.
      	* tree-loop-distribution.c: Likewise.
      	* tree-ssa-loop-unswitch.c: Likewise.
      	* cgraph.c: Likewise.
      	* cgraph.h: Likewise.
      	* tree-ssa-loop-manip.c: Likewise.
      	* value-prof.c: Likewise.
      	* tree-ssa-loop-ch.c: Likewise.
      	* tree-tailcall.c: Likewise.
      	* value-prof.h: Likewise.
      	* tree.c: Likewise.
      	* tree.h: Likewise.
      	* tree-pass.h: Likewise.
      	* ipa-cp.c: Likewise.
      	* tree-scalar-evolution.c: Likewise.
      	* tree-scalar-evolution.h: Likewise.
      	* target.h: Likewise.
      	* lambda-mat.c: Likewise.
      	* tree-phinodes.c: Likewise.
      	* diagnostic.h: Likewise.
      	* builtins.c: Likewise.
      	* tree-ssa-alias-warnings.c: Likewise.
      	* cfghooks.c: Likewise.
      	* fold-const.c: Likewise.
      	* cfghooks.h: Likewise.
      	* omp-low.c: Likewise.
      	* tree-ssa-dse.c: Likewise.
      	* ipa-reference.c: Likewise.
      	* tree-ssa-uncprop.c: Likewise.
      	* toplev.c: Likewise.
      	* tree-gimple.c: Likewise.
      	* tree-gimple.h: Likewise.
      	* tree-chrec.c: Likewise.
      	* tree-chrec.h: Likewise.
      	* tree-ssa-sccvn.c: Likewise.
      	* tree-ssa-sccvn.h: Likewise.
      	* cgraphunit.c: Likewise.
      	* tree-ssa-copyrename.c: Likewise.
      	* tree-ssa-ccp.c: Likewise.
      	* tree-ssa-loop-ivopts.c: Likewise.
      	* tree-nomudflap.c: Likewise.
      	* tree-call-cdce.c: Likewise.
      	* ipa-pure-const.c: Likewise.
      	* c-format.c: Likewise.
      	* tree-stdarg.c: Likewise.
      	* tree-ssa-math-opts.c: Likewise.
      	* tree-ssa-dom.c: Likewise.
      	* tree-nrv.c: Likewise.
      	* tree-ssa-propagate.c: Likewise.
      	* ipa-utils.c: Likewise.
      	* tree-ssa-propagate.h: Likewise.
      	* tree-ssa-alias.c: Likewise.
      	* gimple-low.c: Likewise.
      	* tree-ssa-sink.c: Likewise.
      	* ipa-inline.c: Likewise.
      	* c-semantics.c: Likewise.
      	* dwarf2out.c: Likewise.
      	* expr.c: Likewise.
      	* tree-ssa-loop-ivcanon.c: Likewise.
      	* predict.c: Likewise.
      	* tree-ssa-loop.c: Likewise.
      	* tree-parloops.c: Likewise.
      	* tree-ssa-address.c: Likewise.
      	* tree-ssa-ifcombine.c: Likewise.
      	* matrix-reorg.c: Likewise.
      	* c-decl.c: Likewise.
      	* tree-eh.c: Likewise.
      	* c-pretty-print.c: Likewise.
      	* lambda-trans.c: Likewise.
      	* function.c: Likewise.
      	* langhooks.c: Likewise.
      	* ebitmap.h: Likewise.
      	* tree-vectorizer.c: Likewise.
      	* function.h: Likewise.
      	* langhooks.h: Likewise.
      	* tree-vectorizer.h: Likewise.
      	* ipa-type-escape.c: Likewise.
      	* ipa-type-escape.h: Likewise.
      	* domwalk.c: Likewise.
      	* tree-if-conv.c: Likewise.
      	* profile.c: Likewise.
      	* domwalk.h: Likewise.
      	* tree-data-ref.c: Likewise.
      	* tree-data-ref.h: Likewise.
      	* tree-flow-inline.h: Likewise.
      	* tree-affine.c: Likewise.
      	* tree-vect-analyze.c: Likewise.
      	* c-typeck.c: Likewise.
      	* gimplify.c: Likewise.
      	* coretypes.h: Likewise.
      	* tree-ssa-phiopt.c: Likewise.
      	* calls.c: Likewise.
      	* tree-ssa-coalesce.c: Likewise.
      	* tree.def: Likewise.
      	* tree-dfa.c: Likewise.
      	* except.c: Likewise.
      	* except.h: Likewise.
      	* cfgexpand.c: Likewise.
      	* tree-cfgcleanup.c: Likewise.
      	* tree-ssa-pre.c: Likewise.
      	* tree-ssa-live.c: Likewise.
      	* tree-sra.c: Likewise.
      	* tree-ssa-live.h: Likewise.
      	* tree-predcom.c: Likewise.
      	* lambda.h: Likewise.
      	* tree-mudflap.c: Likewise.
      	* ipa-prop.c: Likewise.
      	* print-tree.c: Likewise.
      	* tree-ssa-copy.c: Likewise.
      	* ipa-prop.h: Likewise.
      	* tree-ssa-forwprop.c: Likewise.
      	* ggc-page.c: Likewise.
      	* c-omp.c: Likewise.
      	* tree-ssa-dce.c: Likewise.
      	* tree-vect-patterns.c: Likewise.
      	* tree-ssa-ter.c: Likewise.
      	* tree-nested.c: Likewise.
      	* tree-ssa.c: Likewise.
      	* lambda-code.c: Likewise.
      	* tree-ssa-loop-prefetch.c: Likewise.
      	* tree-inline.c: Likewise.
      	* tree-inline.h: Likewise.
      	* tree-iterator.c: Likewise.
      	* tree-optimize.c: Likewise.
      	* tree-ssa-phiprop.c: Likewise.
      	* tree-vect-transform.c: Likewise.
      	* tree-object-size.c: Likewise.
      	* tree-outof-ssa.c: Likewise.
      	* cfgloop.c: Likewise.
      	* system.h: Likewise.
      	* tree-profile.c: Likewise.
      	* cfgloop.h: Likewise.
      	* c-gimplify.c: Likewise.
      	* c-common.c: Likewise.
      	* tree-vect-generic.c: Likewise.
      	* tree-flow.h: Likewise.
      	* c-common.h: Likewise.
      	* basic-block.h: Likewise.
      	* tree-ssa-structalias.c: Likewise.
      	* tree-switch-conversion.c: Likewise.
      	* tree-ssa-structalias.h: Likewise.
      	* tree-cfg.c: Likewise.
      	* passes.c: Likewise.
      	* ipa-struct-reorg.c: Likewise.
      	* ipa-struct-reorg.h: Likewise.
      	* tree-ssa-reassoc.c: Likewise.
      	* cfgrtl.c: Likewise.
      	* varpool.c: Likewise.
      	* stmt.c: Likewise.
      	* tree-ssanames.c: Likewise.
      	* tree-ssa-threadedge.c: Likewise.
      	* langhooks-def.h: Likewise.
      	* tree-ssa-operands.c: Likewise.
      	* config/alpha/alpha.c: Likewise.
      	* config/frv/frv.c: Likewise.
      	* config/s390/s390.c: Likewise.
      	* config/m32c/m32c.c: Likewise.
      	* config/m32c/m32c-protos.h: Likewise.
      	* config/spu/spu.c: Likewise.
      	* config/sparc/sparc.c: Likewise.
      	* config/i386/i386.c: Likewise.
      	* config/sh/sh.c: Likewise.
      	* config/xtensa/xtensa.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/ia64/ia64.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/pa/pa.c: Likewise.
      	* config/mips/mips.c: Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138207 138bc75d-0d04-0410-961f-82ee72b054a4
      75a70cf9
  20. 27 Jun, 2008 1 commit
    • ghazi's avatar
      * c-format.c (handle_format_attribute): Fix -Wc++-compat and/or · 225ab426
      ghazi authored
      	-Wcast-qual warnings.
      	* c-pragma.c (dpm_eq, handle_pragma_push_macro,
      	handle_pragma_pop_macro): Likewise.
      	* collect2.c (resolve_lib_name): Likewise.
      	* config/arc/arc.c (arc_init): Likewise.
      	* config/arm/arm.c (neon_builtin_compare,
      	locate_neon_builtin_icode): Likewise.
      	* config/arm/pe.c (arm_mark_dllexport, arm_pe_unique_section):
      	Likewise.
      	* config/bfin/bfin.c (bfin_init_machine_status,
      	bfin_optimize_loop): Likewise.
      	* config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Likewise.
      	* config/cris/cris.c (cris_init_expanders): Likewise.
      	* config/darwin-c.c (frameworks_in_use, add_framework): Likewise.
      	* config/darwin.c (machopic_indirection_eq,
      	machopic_indirection_name, machopic_output_indirection):
      	Likewise.
      	* config/frv/frv.c (frv_init_machine_status, frv_compare_insns,
      	frv_io_check_address, frv_io_handle_set, frv_io_handle_use_1,
      	frv_optimize_membar): Likewise.
      	* config/i386/cygwin.h (mingw_scan,
      	GCC_DRIVER_HOST_INITIALIZATION): Likewise.
      	* config/i386/cygwin1.c (mingw_scan): Likewise.
      	* config/i386/i386.c (machopic_output_stub): Likewise.
      	* config/i386/winnt.c (gen_stdcall_or_fastcall_suffix,
      	i386_pe_unique_section): Likewise.
      	* config/ia64/ia64.c (ia64_init_machine_status,
      	ia64_h_i_d_extended, get_free_bundle_state, bundling, ia64_reorg):
      	Likewise.
      	* config/iq2000/iq2000.c, iq2000_init_machine_status): Likewise.
      	* config/m68hc11/m68hc11.c (m68hc11_encode_label): Likewise.
      	* config/m68k/m68k.c (m68k_handle_option,
      	m68k_sched_md_init_global): Likewise.
      	* config/mcore/mcore.c (mcore_mark_dllexport,
      	mcore_mark_dllimport, mcore_unique_section): Likewise.
      	* config/mips/mips.c (mips_block_move_straight,
      	mips16_rewrite_pool_refs, mips_sim_wait_regs_2,
      	mips_sim_record_set): Likewise.
      	* config/mmix/mmix.c (mmix_init_machine_status,
      	mmix_encode_section_info): Likewise.
      	* config/pa/pa.c (pa_init_machine_status, hppa_encode_label):
      	Likewise.
      	* config/rs6000/rs6000.c (rs6000_init_machine_status,
      	print_operand_address, output_toc, redefine_groups,
      	rs6000_elf_encode_section_info, machopic_output_stub): Likewise.
      	* config/s390/s390.c (s390_init_machine_status): Likewise.
      	* config/score/score.c (score_block_move_straight,
      	score_block_move_loop_body): Likewise.
      	* config/sparc/sparc.c (sparc_init_machine_status): Likewise.
      	* config/xtensa/xtensa.c (xtensa_init_machine_status): Likewise.
      	* emit-rtl.c (find_auto_inc): Likewise.
      	* gcc.c (translate_options, process_command): Likewise.
      	* reorg.c (dbr_schedule): Likewise.
      	* sdbout.c (sdbout_start_source_file, sdbout_init): Likewise.
      	* xcoffout.c (xcoffout_declare_function): Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@137191 138bc75d-0d04-0410-961f-82ee72b054a4
      225ab426
  21. 01 Jun, 2008 1 commit
    • rsandifo's avatar
      gcc/ · 18b42941
      rsandifo authored
      	* rtl.h (emit_clobber, gen_clobber, emit_use, gen_use): Declare.
      	* emit-rtl.c (emit_clobber, gen_clobber, emit_use, gen_use): New
      	functions.  Do not emit uses and clobbers of CONCATs; individually
      	use and clobber their operands.
      	* builtins.c (expand_builtin_setjmp_receiver): Use emit_clobber,
      	gen_clobber, emit_use and gen_use.
      	(expand_builtin_longjmp, expand_builtin_nonlocal_goto): Likewise.
      	(expand_builtin_return): Likewise.
      	* cfgbuild.c (count_basic_blocks): Likewise.
      	* cfgrtl.c (rtl_flow_call_edges_add): Likewise.
      	* explow.c (emit_stack_restore): Likewise.
      	* expmed.c (extract_bit_field_1): Likewise.
      	* expr.c (convert_move, emit_move_complex_parts): Likewise.
      	(emit_move_multi_word, store_constructor): Likewise.
      	* function.c (do_clobber_return_reg, do_use_return_reg): Likewise.
      	(thread_prologue_and_epilogue_insns): Likewise.
      	* lower-subreg.c (resolve_simple_move): Likewise.
      	* optabs.c (widen_operand, expand_binop): Likewise.
      	(expand_doubleword_bswap, emit_no_conflict_block): Likewise.
      	* reload.c (find_reloads): Likewise.
      	* reload1.c (eliminate_regs_in_insn): Likewise.
      	* stmt.c (expand_nl_goto_receiver): Likewise.
      	* config/alpha/alpha.md (builtin_longjmp): Likewise.
      	* config/arc/arc.md (*movdi_insn, *movdf_insn): Likewise.
      	* config/arm/arm.c (arm_load_pic_register): Likewise.
      	(thumb1_expand_epilogue, thumb_set_return_address): Likewise.
      	* config/arm/arm.md (untyped_return): Likewise.
      	* config/arm/linux-elf.h (PROFILE_HOOK): Likewise.
      	* config/avr/avr.c (expand_prologue): Likewise.
      	* config/bfin/bfin.c (do_unlink): Likewise.
      	* config/bfin/bfin.md (<optab>di3, adddi3, subdi3): Likewise.
      	* config/cris/cris.c (cris_expand_prologue): Likewise.
      	* config/darwin.c (machopic_indirect_data_reference): Likewise.
      	(machopic_legitimize_pic_address): Likewise.
      	* config/frv/frv.c (frv_frame_access, frv_expand_epilogue): Likewise.
      	(frv_ifcvt_modify_insn, frv_expand_mdpackh_builtin): Likewise.
      	* config/i386/i386.c (ix86_expand_vector_move_misalign): Likewise.
      	(ix86_expand_convert_uns_didf_sse): Likewise.
      	(ix86_expand_vector_init_general): Likewise.
      	* config/ia64/ia64.md (eh_epilogue): Likewise.
      	* config/iq2000/iq2000.c (iq2000_expand_epilogue): Likewise.
      	* config/m32c/m32c.c (m32c_emit_eh_epilogue): Likewise.
      	* config/m32r/m32r.c (m32r_reload_lr): Likewise.
      	(config/iq2000/iq2000.c): Likewise.
      	* config/mips/mips.md (fixuns_truncdfsi2): Likewise.
      	(fixuns_truncdfdi2, fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
      	(builtin_longjmp): Likewise.
      	* config/mn10300/mn10300.md (call, call_value): Likewise.
      	* config/pa/pa.md (nonlocal_goto, nonlocal_longjmp): Likewise.
      	* config/pdp11/pdp11.md (abshi2): Likewise.
      	* config/rs6000/rs6000.c (rs6000_emit_move): Likewise.
      	* config/s390/s390.c (s390_emit_prologue): Likewise.
      	* config/s390/s390.md (movmem_long, setmem_long): Likewise.
      	(cmpmem_long, extendsidi2, zero_extendsidi2, udivmoddi4): Likewise.
      	(builtin_setjmp_receiver, restore_stack_nonlocal): Likewise.
      	* config/sh/sh.c (prepare_move_operands): Likewise.
      	(output_stack_adjust, sh_expand_epilogue): Likewise.
      	(sh_set_return_address, sh_expand_t_scc): Likewise.
      	* config/sparc/sparc.c (load_pic_register): Likewise.
      	* config/sparc/sparc.md (untyped_return, nonlocal_goto): Likewise.
      	* config/spu/spu.c (spu_expand_epilogue): Likewise.
      	* config/v850/v850.c (expand_epilogue): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@136251 138bc75d-0d04-0410-961f-82ee72b054a4
      18b42941
  22. 30 Apr, 2008 1 commit
    • rsandifo's avatar
      gcc/ · 6025a5e6
      rsandifo authored
      	* config/arm/arm.c (arm_unwind_emit): Use
      	crtl->all_throwers_are_sibcalls instead of
      	cfun->all_throwers_are_sibcalls.
      	(arm_output_fn_unwind): Likewise.
      	* config/frv/frv.c (frv_stack_info): Use crtl->uses_pic_offset_table
      	instead of cfun->uses_pic_offset_table.
      	(frv_expand_prologue): Likewise.
      	(frv_frame_pointer_required): Likewise.
      	(frv_expand_fdpic_call): Likewise.
      	(frv_emit_movsi): Likewise.
      	* config/iq2000/iq2000.c (iq2000_expand_prologue): Use
      	cfun->returns_pcc_struct instead of
      	current_function_returns_pcc_struct.
      	* config/m32c/m32c.c (need_to_save): Use crtl->calls_eh_return
      	instead of cfun->calls_eh_return.
      	(m32c_pushm_popm): Likewise.
      	* config/xtensa/xtensa.h (cfun->calls_alloca): Remove bogus
      	"extern" declaration.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@134835 138bc75d-0d04-0410-961f-82ee72b054a4
      6025a5e6
  23. 25 Apr, 2008 1 commit
    • hubicka's avatar
      · 18d50ae6
      hubicka authored
      	PR testsuite/35843
      	* cfgexpand.c (pass_expand): Turn into RTL pass.
      	* passes.c (execute_one_pass): Do pass typechecking after execution.
      	* tree-pass.h (pass_expand): Turn into RTL pass.
      
      	* function.h (struct rtl_data): Move here fields
      	accesses_prior_frames, calls_eh_return, saves_all_registers,
      	has_nonlocal_goto, has_asm_statement, is_thunk,
      	all_throwers_are_sibcalls, limit_stack, profile, uses_const_pool,
      	uses_pic_offset_table, uses_eh_lsda, tail_call_emit,
      	arg_pointer_save_area_init from struct function; turn into bool.
      	(struct function): Move
      	calls_eh_return, saves_all_registers, has_nonlocal_goto,
      	has_asm_statement, is_thunk, all_throwers_are_sibcalls, limit_stack,
      	profile, uses_const_pool, uses_pic_offset_table, uses_eh_lsda,
      	tail_call_emit, arg_pointer_save_area_init
      	into struct rtl_data.  Remove recursive_call_emit and gimplified flags.
      	(current_function_returns_struct, current_function_returns_pcc_struct,
      	current_function_calls_setjmp, current_function_calls_alloca,
      	current_function_accesses_prior_frames,
      	current_function_calls_eh_return, current_function_is_thunk,
      	current_function_stdarg, current_function_profile,
      	current_function_limit_stack, current_function_uses_pic_offset_table,
      	current_function_uses_const_pool, current_function_has_nonlocal_label,
      	current_function_saves_all_registers,
      	current_function_has_nonlocal_goto,
      	current_function_has_asm_statement): Remove accesor macros.
      	* ra-conflict.c (global_conflicts): Update.
      	* tree-tailcall.c (suitable_for_tail_opt_p): Update.
      	(suitable_for_tail_call_opt_p): Update.
      	* builtins.c (expand_builtin_return_addr): Update.
      	(expand_builtin_setjmp_setup): Update.
      	(expand_builtin_nonlocal_goto): Update.
      	* final.c (final_start_function): Update.
      	(profile_function): Update.
      	(leaf_function_p): Update.
      	(only_leaf_regs_used): Update.
      	* df-scan.c (df_get_exit_block_use_set): Update.
      	* dojump.c (clear_pending_stack_adjust): Update.
      	* tree-stdarg.c (gate_optimize_stdarg): Update.
      	* gimple-low.c (lower_function_body): Update.
      	* global.c (compute_regsets): Update.
      	(global_alloc): Update.
      	* dwarf2out.c (dwarf2out_begin_prologue): Update.
      	* expr.c (expand_assignment): Update.
      	* dse.c (dse_step0): Update.
      	(dse_step1): Update.
      	* c-decl.c (store_parm_decls): Update.
      	* local-alloc.c (combine_regs): Update.
      	(find_free_reg): Update.
      	* function.c (assign_parms_augmented_arg_list): Update.
      	(assign_parm_find_data_types): Update.
      	(assign_parms): Update.
      	(allocate_struct_function): Update.
      	(expand_function_start): Update.
      	(expand_function_end): Update.
      	(get_arg_pointer_save_area): Update.
      	(thread_prologue_and_epilogue_insns): Update.
      	(rest_of_match_asm_constraints): Update.
      	* stor-layout.c (variable_size): Update.
      	* gcse.c (gcse_main): Update.
      	(bypass_jumps): Update.
      	* gimplify.c (gimplify_function_tree): Update.
      	* calls.c (emit_call_1): Update.
      	(expand_call): Update.
      	* bt-load.c (compute_defs_uses_and_gen): Update.
      	* except.c (sjlj_assign_call_site_values): Update.
      	(sjlj_emit_function_enter): Update.
      	(can_throw_external): Update.
      	(set_nothrow_function_flags): Update.
      	(expand_builtin_unwind_init): Update.
      	(expand_eh_return): Update.
      	(convert_to_eh_region_ranges): Update.
      	(output_function_exception_table): Update.
      	* emit-rtl.c (gen_tmp_stack_mem): Update.
      	* cfgexpand.c (expand_used_vars): Update.
      	(tree_expand_cfg): Update.
      	* cfgcleanup.c (rest_of_handle_jump): Update.
      	* explow.c (allocate_dynamic_stack_space): Update.
      	* varasm.c (assemble_start_function): Update.
      	(force_const_mem): Update.
      	(mark_constant_pool): Update.
      	* tree-optimize.c (tree_rest_of_compilation): Update.
      	* stack-ptr-mod.c (notice_stack_pointer_modification): Update.
      	* tree-cfg.c (notice_special_calls): Update.
      	(is_ctrl_altering_stmt): Update.
      	(tree_can_make_abnormal_goto): Update.
      	(tree_purge_dead_abnormal_call_edges): Update.
      	* config/alpha/predicates.md: Update.
      	* config/alpha/alpha.c (alpha_sa_mask): Update.
      	(alpha_sa_size): Update.
      	(alpha_does_function_need_gp): Update.
      	(alpha_expand_prologue): Update.
      	(alpha_start_function): Update.
      	(alpha_output_function_end_prologue): Update.
      	(alpha_expand_epilogue): Update.
      	* config/frv/frv.c (frv_stack_info): Update.
      	(frv_expand_epilogue): Update.
      	* config/s390/s390.c (s390_regs_ever_clobbered): Update.
      	(s390_register_info): Update.
      	(s390_frame_info): Update.
      	(s390_init_frame_layout): Update.
      	(s390_can_eliminate): Update.
      	(save_gprs): Update.
      	* config/spu/spu.c (spu_split_immediate): Update.
      	(need_to_save_reg): Update.
      	(spu_expand_prologue): Update.
      	(spu_expand_epilogue): Update.
      	* config/sparc/sparc.md: Update.
      	* config/sparc/sparc.c (eligible_for_return_delay): Update.
      	(sparc_tls_got): Update.
      	(legitimize_pic_address): Update.
      	(sparc_emit_call_insn): Update.
      	(sparc_expand_prologue): Update.
      	(output_return): Update.
      	(print_operand): Update.
      	(sparc_function_ok_for_sibcall): Update.
      	* config/sparc/sparc.h (EXIT_IGNORE_STACK): Update.
      	* config/m32r/m32r.md: Update.
      	* config/m32r/m32r.c (MUST_SAVE_RETURN_ADDR): Update.
      	(m32r_compute_frame_size): Update.
      	(m32r_expand_prologue): Update.
      	(m32r_expand_epilogue): Update.
      	(m32r_legitimize_pic_address): Update.
      	* config/m32r/m32r.h (FRAME_POINTER_REQUIRED): Update.
      	* config/i386/linux.h (SUBTARGET_FRAME_POINTER_REQUIRED): Update.
      	* config/i386/i386.c (ix86_frame_pointer_required): Update.
      	(gen_push): Update.
      	(ix86_save_reg): Update.
      	(ix86_compute_frame_layout): Update.
      	(ix86_expand_prologue): Update.
      	(ix86_expand_epilogue): Update.
      	* config/sh/sh.c (output_stack_adjust): Update.
      	(calc_live_regs): Update.
      	(sh5_schedule_saves): Update.
      	(sh_expand_prologue): Update.
      	(sh_expand_epilogue): Update.
      	(sh_setup_incoming_varargs): Update.
      	(sh_allocate_initial_value): Update.
      	(sh_get_pr_initial_val): Update.
      	* config/sh/sh.h (SHMEDIA_REGS_STACK_ADJUST): Update.
      	* config/sh/sh.md (label:): Update.
      	* config/avr/avr.c (out_movhi_mr_r): Update.
      	* config/crx/crx.h (enum): Update.
      	* config/xtensa/xtensa.h (along): Update.
      	* config/stormy16/stormy16.c Update.
      	(xstormy16_compute_stack_layout): Update.
      	* config/fr30/fr30.c (MUST_SAVE_RETURN_POINTER): Update.
      	(fr30_expand_prologue): Update.
      	* config/cris/cris.c (cris_conditional_register_usage): Update.
      	(cris_reg_saved_in_regsave_area): Update.
      	(cris_initial_frame_pointer_offset): Update.
      	(cris_simple_epilogue): Update.
      	(cris_expand_prologue): Update.
      	(cris_expand_epilogue): Update.
      	(cris_expand_pic_call_address): Update.
      	(cris_asm_output_symbol_ref): Update.
      	(cris_asm_output_label_ref): Update.
      	* config/cris/cris.md Update.
      	* config/iq2000/iq2000.c (compute_frame_size): Update.
      	(iq2000_expand_epilogue): Update.
      	* config/mt/mt.h (save_direction): Update.
      	* config/mn10300/mn10300.c (mn10300_function_value): Update.
      	* config/ia64/ia64.c (ia64_compute_frame_size): Update.
      	(ia64_secondary_reload_class): Update.
      	* config/m68k/m68k.c (m68k_save_reg): Update.
      	(m68k_expand_prologue): Update.
      	(m68k_expand_epilogue): Update.
      	(legitimize_pic_address): Update.
      	* config/rs6000/rs6000.c (rs6000_got_register): Update.
      	(first_reg_to_save): Update.
      	(first_altivec_reg_to_save): Update.
      	(compute_vrsave_mask): Update.
      	(compute_save_world_info): Update.
      	(rs6000_stack_info): Update.
      	(spe_func_has_64bit_regs_p): Update.
      	(rs6000_ra_ever_killed): Update.
      	(rs6000_emit_eh_reg_restore): Update.
      	(rs6000_emit_allocate_stack): Update.
      	(rs6000_emit_prologue): Update.
      	(rs6000_emit_epilogue): Update.
      	(rs6000_output_function_epilogue): Update.
      	(output_profile_hook): Update.
      	(rs6000_elf_declare_function_name): Update.
      	* config/rs6000/rs6000.h (rs6000_args): Update.
      	* config/rs6000/rs6000.md: Update.
      	* config/mcore/mcore.c (mcore_expand_prolog): Update.
      	* config/arc/arc.c (arc_output_function_epilogue): Update.
      	* config/arc/arc.h (FRAME_POINTER_REQUIRED): Update.
      	* config/darwin.c (machopic_function_base_name): Update.
      	* config/score/score3.c (score3_compute_frame_size): Update.
      	(rpush): Update.
      	(rpop): Update.
      	(score3_epilogue): Update.
      	* config/score/score7.c (score7_compute_frame_size): Update.
      	(score7_prologue): Update.
      	(score7_epilogue): Update.
      	* config/score/score.h (FRAME_POINTER_REQUIRED): Update.
      	* config/arm/linux-elf.h (SUBTARGET_FRAME_POINTER_REQUIRED): Update.
      	* config/arm/arm.c (use_return_insn): Update.
      	(require_pic_register): Update.
      	(arm_load_pic_register): Update.
      	(arm_compute_save_reg0_reg12_mask): Update.
      	(arm_compute_save_reg_mask): Update.
      	(thumb1_compute_save_reg_mask): Update.
      	(output_return_instruction): Update.
      	(arm_output_function_prologue): Update.
      	(arm_output_epilogue): Update.
      	(arm_get_frame_offsets): Update.
      	(arm_expand_prologue): Update.
      	(thumb_pushpop): Update.
      	(thumb_exit): Update.
      	(thumb1_expand_prologue): Update.
      	(thumb1_expand_epilogue): Update.
      	(arm_unwind_emit): Update.
      	(arm_output_fn_unwind): Update.
      	* config/arm/arm.h (FRAME_POINTER_REQUIRED): Update.
      	* config/arm/arm.md: Update.
      	* config/pa/pa.md: Update.
      	* config/pa/pa.c (legitimize_pic_address): Update.
      	(compute_frame_size): Update.
      	(hppa_expand_prologue): Update.
      	(hppa_expand_epilogue): Update.
      	(borx_reg_operand): Update.
      	* config/pa/pa.h (FRAME_POINTER_REQUIRED): Update.
      	(HARD_REGNO_RENAME_OK): Update.
      	* config/mips/mips.c (mips_global_pointer): Update.
      	(mips_save_reg_p): Update.
      	(mips_compute_frame_info): Update.
      	(mips_frame_pointer_required): Update.
      	(mips_expand_prologue): Update.
      	(mips_expand_epilogue): Update.
      	(mips_can_use_return_insn): Update.
      	(mips_reorg_process_insns): Update.
      	* config/v850/v850.c (compute_register_save_size): Update.
      	* config/mmix/mmix.h (FRAME_POINTER_REQUIRED): Update.
      	* config/mmix/mmix.c (along): Update.
      	(mmix_expand_epilogue): Update.
      	* config/bfin/bfin.c (legitimize_pic_address): Update.
      	(must_save_p): Update.
      	(stack_frame_needed_p): Update.
      	(add_to_reg): Update.
      	(bfin_expand_prologue): Update.
      	* stmt.c (expand_asm_operands): Update.
      	* reload1.c (reload): Update.
      	(init_elim_table): Update.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@134682 138bc75d-0d04-0410-961f-82ee72b054a4
      18d50ae6
  24. 22 Apr, 2008 1 commit
  25. 06 Dec, 2007 1 commit
    • jakub's avatar
      PR middle-end/20983 · 8a58ed0a
      jakub authored
      	* tree-ssa-ccp.c (optimize_stdarg_builtin): New function.
      	(execute_fold_all_builtins): Call it for BUILT_IN_VA_START,
      	BUILT_IN_VA_COPY and BUILT_IN_VA_END.
      
      	* target.h (struct ggc_target): Add expand_builtin_va_start
      	hook.
      	* target-def.h (TARGET_EXPAND_BUILTIN_VA_START): Define.
      	(TARGET_INITIALIZER): Add it.
      	* builtins.c (expand_builtin_va_start): Use
      	targetm.expand_builtin_va_start hook instead of
      	EXPAND_BUILTIN_VA_START macro.
      	* alpha/alpha.c (alpha_va_start): Made static.
      	(override_options): Clear targetm.expand_builtin_va_start if
      	TARGET_UNICOSMK.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* alpha/unicosmk.h (EXPAND_BUILTIN_VA_START): Remove.
      	* alpha/alpha.h (EXPAND_BUILTIN_VA_START): Remove.
      	* alpha/alpha-protos.h (alpha_va_start): Remove prototype.
      	* xtensa/xtensa.h (EXPAND_BUILTIN_VA_START): Remove.
      	* xtensa/xtensa.c (TARGET_EXPAND_BUILTIN_VA_START): Define.
      	(xtensa_va_start): Made static.
      	* xtensa/xtensa-protos.h (xtensa_va_start): Remove prototype.
      	* pa/pa-protos.h (hppa_va_start): Remove prototype.
      	* pa/pa.h (EXPAND_BUILTIN_VA_START): Remove.
      	* pa/pa.c (hppa_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* frv/frv.c (frv_expand_builtin_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* frv/frv-protos.h (frv_expand_builtin_va_start): Remove prototype.
      	* frv/frv.h (EXPAND_BUILTIN_VA_START): Remove.
      	* i386/i386.c (override_options): Clear
      	targetm.expand_builtin_va_start if -m32 or 64-bit MS ABI.
      	(ix86_va_start): Made static.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* i386/i386.h (EXPAND_BUILTIN_VA_START): Remove.
      	* i386/i386-protos.h (ix86_va_start, ix86_va_arg): Remove prototypes.
      	* iq2000/iq2000-protos.h (iq2000_va_start): Remove prototype.
      	* iq2000/iq2000.h (EXPAND_BUILTIN_VA_START): Remove.
      	* iq2000/iq2000.c (iq2000_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* rs6000/rs6000-protos.h (rs6000_va_start): Remove prototype.
      	* rs6000/rs6000.c (rs6000_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	(rs6000_override_options): Clear targetm.expand_builtin_va_start if
      	DEFAULT_ABI != ABI_V4.
      	* rs6000/rs6000.h (EXPAND_BUILTIN_VA_START): Remove.
      	* spu/spu.c (spu_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* spu/spu.h (EXPAND_BUILTIN_VA_START): Remove.
      	* spu/spu-protos.h spu_va_start): Remove prototype.
      	* stormy16/stormy16.h (EXPAND_BUILTIN_VA_START): Remove.
      	* stormy16/stormy16-protos.h (xstormy16_expand_builtin_va_start):
      	Remove prototype.
      	* stormy16/stormy16.c (xstormy16_expand_builtin_va_start): Made
      	static.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* s390/s390-protos.h (s390_va_start): Remove prototype.
      	* s390/s390.c (s390_va_start): Made static.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* s390/s390.h (EXPAND_BUILTIN_VA_START): Remove.
      	* mn10300/mn10300.h (EXPAND_BUILTIN_VA_START): Remove.
      	* mn10300/mn10300-protos.h (mn10300_va_start): Remove prototype.
      	* mn10300/mn10300.c (mn10300_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* arc/arc.c (arc_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* arc/arc.h (EXPAND_BUILTIN_VA_START): Remove.
      	* arc/arc-protos.h (arc_va_start): Remove prototype.
      	* mt/mt-protos.h (mt_va_start): Remove prototype.
      	* sparc/sparc.c (sparc_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* sparc/sparc-protos.h (sparc_va_start): Remove prototype.
      	* sparc/sparc.h (EXPAND_BUILTIN_VA_START): Remove.
      	* sh/sh.c (sh_va_start): Made static, add prototype.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      	* sh/sh-protos.h (sh_va_start): Remove prototype.
      	* sh/sh.h (EXPAND_BUILTIN_VA_START): Remove.
      	* mips/mips-protos.h (mips_va_start): Remove prototype.
      	* mips/mips.h (EXPAND_BUILTIN_VA_START): Remove.
      	* mips/mips.c (mips_va_start): Made static.
      	(TARGET_EXPAND_BUILTIN_VA_START): Define.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@130650 138bc75d-0d04-0410-961f-82ee72b054a4
      8a58ed0a
  26. 24 Aug, 2007 1 commit
    • ghazi's avatar
      * config/alpha/alpha.c (alpha_mangle_type, decl_has_samegp, · a9f1838b
      ghazi authored
      	alpha_in_small_data_p, alpha_split_complex_arg,
      	alpha_stdarg_optimize_hook, TARGET_ASM_CAN_OUTPUT_MI_THUNK):
      	Constify.
      	* config/arm/arm-protos.h (arm_mangle_type): Likewise.
      	* config/arm/arm.c (arm_comp_type_attributes, arm_mangle_type):
      	Likewise.
      	* config/bfin/bfin.c (funkind, bfin_comp_type_attributes,
      	TARGET_ASM_CAN_OUTPUT_MI_THUNK): Likewise.
      	* config/darwin-protos.h (darwin_binds_local_p): Likewise.
      	* config/darwin.c (darwin_binds_local_p): Likewise.
      	* config/frv/frv.c (frv_string_begins_with, frv_in_small_data_p):
      	Likewise.
      	* config/i386/i386-protos.h (i386_pe_binds_local_p,
      	i386_pe_valid_dllimport_attribute_p): Likewise.
      	* config/i386/i386.c (ix86_function_regparm,
      	ix86_comp_type_attributes, ix86_ms_bitfield_layout_p,
      	x86_can_output_mi_thunk, ix86_mangle_type,
      	TARGET_USE_BLOCKS_FOR_CONSTANT_P): Likewise.
      	* config/i386/winnt.c (i386_pe_valid_dllimport_attribute_p,
      	i386_pe_binds_local_p): Likewise.
      	* config/ia64/ia64.c
      	(ia64_first_cycle_multipass_dfa_lookahead_guard_spec,
      	ia64_needs_block_p, ia64_in_small_data_p, ia64_mangle_type,
      	ia64_invalid_conversion, ia64_invalid_unary_op,
      	ia64_invalid_binary_op, TARGET_ASM_CAN_OUTPUT_MI_THUNK):
      	Likewise.
      	* config/m32c/m32c.c (m32c_comp_type_attributes): Likewise.
      	* config/m32r/m32r.c (m32r_in_small_data_p): Likewise.
      	* config/m68k/m68k.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Likewise.
      	* config/mips/mips.c (mips_use_blocks_for_constant_p,
      	mips_in_small_data_p, mips_use_anchors_for_symbol_p,
      	mips_comp_type_attributes, TARGET_ASM_CAN_OUTPUT_MI_THUNK,
      	mips_near_type_p, mips_far_type_p, mips_global_symbol_p,
      	mips_symbol_binds_local_p, mips_classify_symbol): Likewise.
      	* config/pa/pa.c (pa_commutative_p): Likewise.
      	* config/rs6000/rs6000-protos.h (rs6000_elf_in_small_data_p):
      	Likewise.
      	* config/rs6000/rs6000.c (rs6000_invalid_within_doloop,
      	rs6000_ms_bitfield_layout_p, rs6000_mangle_type,
      	rs6000_use_blocks_for_constant_p,
      	rs6000_vector_alignment_reachable, rs6000_is_opaque_type,
      	invalid_arg_for_unprototyped_fn, TARGET_ASM_CAN_OUTPUT_MI_THUNK,
      	TARGET_SPLIT_COMPLEX_ARG, rs6000_elf_in_small_data_p): Likewise.
      	* config/s390/s390.c (s390_mangle_type,
      	TARGET_ASM_CAN_OUTPUT_MI_THUNK, TARGET_INVALID_WITHIN_DOLOOP):
      	Likewise.
      	* config/score/score.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK,
      	th_in_small_data_p): Likewise.
      	* config/sh/sh.c (sh_ms_bitfield_layout_p,
      	sh_dwarf_calling_convention, TARGET_ASM_CAN_OUTPUT_MI_THUNK):
      	Likewise.
      	* config/sparc/sparc.c (sparc_can_output_mi_thunk,
      	sparc_mangle_type): Likewise.
      	* config/spu/spu.c (spu_vector_alignment_reachable): Likewise.
      	* config/xtensa/xtensa.c (TARGET_SPLIT_COMPLEX_ARG): Likewise.
      	* emit-rtl.c (const_fixed_htab_hash, const_fixed_htab_eq):
      	Likewise.
      	* hooks.c (hook_bool_mode_const_rtx_false,
      	hook_bool_mode_const_rtx_true,
      	hook_bool_const_tree_hwi_hwi_const_tree_false,
      	hook_bool_const_tree_hwi_hwi_const_tree_true,
      	hook_int_const_tree_0, hook_int_const_tree_const_tree_1,
      	hook_constcharptr_const_tree_null,
      	hook_constcharptr_const_rtx_null,
      	hook_constcharptr_const_tree_const_tree_null,
      	hook_constcharptr_int_const_tree_null,
      	hook_constcharptr_int_const_tree_const_tree_null): New.
      	(hook_bool_mode_rtx_false, hook_bool_mode_rtx_true,
      	hook_bool_tree_hwi_hwi_tree_false,
      	hook_bool_tree_hwi_hwi_tree_true, hook_int_tree_0,
      	hook_int_tree_tree_1, hook_constcharptr_tree_null,
      	hook_constcharptr_rtx_null, hook_constcharptr_tree_tree_null,
      	hook_constcharptr_int_tree_null,
      	hook_constcharptr_int_tree_tree_null): Delete.
      	(default_can_output_mi_thunk_no_vcall): Constify.
      	* hooks.h (hook_bool_mode_rtx_false, hook_bool_mode_rtx_true,
      	hook_bool_tree_hwi_hwi_tree_false,
      	hook_bool_tree_hwi_hwi_tree_true, hook_int_tree_0,
      	hook_int_tree_tree_1, hook_constcharptr_tree_null,
      	hook_constcharptr_rtx_null, hook_constcharptr_tree_tree_null,
      	hook_constcharptr_int_tree_null,
      	hook_constcharptr_int_tree_tree_null): Delete.
      	(hook_bool_mode_const_rtx_false, hook_bool_mode_const_rtx_true,
      	hook_bool_const_tree_hwi_hwi_const_tree_false,
      	hook_bool_const_tree_hwi_hwi_const_tree_true,
      	hook_int_const_tree_0, hook_int_const_tree_const_tree_1,
      	hook_constcharptr_const_tree_null,
      	hook_constcharptr_const_rtx_null,
      	hook_constcharptr_const_tree_const_tree_null,
      	hook_constcharptr_int_const_tree_null,
      	hook_constcharptr_int_const_tree_const_tree_null): New.
      	(default_can_output_mi_thunk_no_vcall): Constify.
      	* integrate.c (function_attribute_inlinable_p): Likewise.
      	* integrate.h (function_attribute_inlinable_p): Likewise.
      	* jump.c (rtx_renumbered_equal_p): Likewise.
      	* output.h (decl_readonly_section, categorize_decl_for_section,
      	default_use_anchors_for_symbol_p, default_binds_local_p,
      	default_binds_local_p_1): Likewise.
      	* rtl.h (rtx_renumbered_equal_p, decl_default_tls_model):
      	Likewise.
      	* target-def.h (TARGET_ASM_CAN_OUTPUT_MI_THUNK,
      	TARGET_VALID_DLLIMPORT_ATTRIBUTE_P, TARGET_VECTOR_OPAQUE_P,
      	TARGET_COMMUTATIVE_P, TARGET_USE_BLOCKS_FOR_CONSTANT_P,
      	TARGET_COMP_TYPE_ATTRIBUTES,
      	TARGET_FUNCTION_ATTRIBUTE_INLINABLE_P,
      	TARGET_MS_BITFIELD_LAYOUT_P, TARGET_MANGLE_TYPE,
      	TARGET_IN_SMALL_DATA_P, TARGET_INVALID_CONVERSION,
      	TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP,
      	TARGET_DWARF_CALLING_CONVENTION): Likewise.
      	* target.h (can_output_mi_thunk, needs_block_p,
      	first_cycle_multipass_dfa_lookahead_guard_spec,
      	vector_alignment_reachable, comp_type_attributes,
      	function_attribute_inlinable_p, ms_bitfield_layout_p, mangle_type,
      	commutative_p, use_blocks_for_constant_p,
      	use_anchors_for_symbol_p, in_small_data_p, binds_local_p,
      	vector_opaque_p, dwarf_calling_convention, stdarg_optimize_hook,
      	invalid_within_doloop, valid_dllimport_attribute_p,
      	split_complex_arg, invalid_arg_for_unprototyped_fn,
      	invalid_conversion, invalid_unary_op, invalid_binary_op):
      	Likewise.
      	* targhooks.c (default_invalid_within_doloop,
      	hook_invalid_arg_for_unprototyped_fn,
      	default_builtin_vector_alignment_reachable): Likewise.
      	(hook_bool_rtx_commutative_p): Delete.
      	(hook_bool_const_rtx_commutative_p): New.
      	* targhooks.h (default_invalid_within_doloop,
      	default_builtin_vector_alignment_reachable,
      	hook_invalid_arg_for_unprototyped_fn): Constify.
      	(hook_bool_rtx_commutative_p): Delete.
      	(hook_bool_const_rtx_commutative_p): New.
      	* varasm.c (bss_initializer_p, decl_default_tls_model,
      	categorize_decl_for_section, decl_readonly_section,
      	default_use_anchors_for_symbol_p, default_binds_local_p,
      	default_binds_local_p_1): Constify.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127785 138bc75d-0d04-0410-961f-82ee72b054a4
      a9f1838b
  27. 23 Aug, 2007 1 commit
    • ghazi's avatar
      * config/arc/arc-protos.h arc_select_cc_mode, gen_compare_reg): · fb80456a
      ghazi authored
      	Wrap in RTX_CODE macro guard.
      	* config/arm/pe.c (arm_dllexport_p, arm_dllimport_p,
      	arm_dllexport_name_p, arm_dllimport_name_p, arm_mark_dllexport,
      	arm_mark_dllimport, arm_pe_encode_section_info,
      	arm_pe_unique_section): Use ISO-C function declarations.
      	* config/c4x/c4x-c.c (c4x_parse_pragma, c4x_pr_CODE_SECTION,
      	c4x_pr_DATA_SECTION, c4x_pr_FUNC_IS_PURE,
      	c4x_pr_FUNC_NEVER_RETURNS, c4x_pr_INTERRUPT, c4x_pr_ignored):
      	Likewise.
      	* config/iq2000/iq2000.h (ASM_OUTPUT_SKIP): Fix format warning.
      	* config/m68hc11/m68hc11.h (ASM_OUTPUT_EXTERNAL): Undef before
      	defining.
      	* config/mips/mips.h (ASM_DECLARE_OBJECT_NAME): Fix format
      	warnings.
      	* config/mn10300/mn10300.h (OUTPUT_ADDR_CONST_EXTRA): Likewise.
      	* config/pdp11/pdp11.c (pdp11_output_function_epilogue): Likewise.
      	(register_move_cost): Use ISO-C function declarations.
      	* config/pdp11/pdp11.h (PRINT_OPERAND): Fix format warnings.
      	* config/score/score-protos.h (score_declare_object): Add
      	ATTRIBUTE_PRINTF_4.
      	* config/score/score.h (ASM_DECLARE_OBJECT_NAME): Fix format
      	warnings.
      	* final.c (profile_function): Avoid empty if-bodies.
      	
      	
      	* calls.c (must_pass_in_stack_var_size,
      	must_pass_in_stack_var_size_or_pad): Constify.
      	* config/alpha/alpha-protos.h (function_value): Likewise.
      	* config/alpha/alpha.c (alpha_return_in_memory,
      	alpha_pass_by_reference, function_value,
      	unicosmk_must_pass_in_stack, TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES):
      	Likewise.
      	* config/arc/arc.c (arc_return_in_memory, arc_pass_by_reference,
      	TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
      	TARGET_PROMOTE_PROTOTYPES): Likewise.
      	* config/arm/arm-protos.h (arm_return_in_memory,
      	arm_pad_arg_upward, arm_function_value): Likewise.
      	* config/arm/arm.c (arm_pass_by_reference,
      	arm_promote_prototypes, arm_return_in_msb, arm_must_pass_in_stack,
      	TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
      	arm_function_value, arm_return_in_memory, arm_pad_arg_upward):
      	Likewise.
      	* config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Likewise.
      	* config/avr/avr-protos.h (avr_function_value): Likewise.
      	* config/avr/avr.c (avr_return_in_memory,
      	gas_output_limited_string, gas_output_ascii, avr_function_value,
      	avr_return_in_memory): Likewise.
      	* config/bfin/bfin-protos.h (bfin_return_in_memory): Likewise.
      	* config/bfin/bfin.c (bfin_pass_by_reference,
      	bfin_return_in_memory, TARGET_PROMOTE_PROTOTYPES,
      	TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN):
      	Likewise.
      	* config/cris/cris.c (cris_pass_by_reference,
      	TARGET_PROMOTE_FUNCTION_ARGS): Likewise.
      	* config/crx/crx.c (crx_return_in_memory): Likewise.
      	* config/darwin.c (function_base, machopic_function_base_name):
      	Likewise.
      	* config/fr30/fr30.c (fr30_must_pass_in_stack,
      	TARGET_PROMOTE_PROTOTYPES): Likewise.
      	* config/frv/frv.c (frv_must_pass_in_stack): Likewise.
      	* config/h8300/h8300.c (h8300_return_in_memory): Likewise.
      	* config/i386/i386-protos.h (ix86_return_in_memory,
      	ix86_sol10_return_in_memory): Likewise.
      	* config/i386/i386.c (ix86_function_value,
      	ix86_function_sseregparm, ix86_must_pass_in_stack,
      	type_natural_mode, classify_argument, examine_argument,
      	construct_container, ix86_pass_by_reference, function_value_32,
      	function_value_64, ix86_function_value_1, return_in_memory_32,
      	return_in_memory_64, return_in_memory_ms_64,
      	ix86_return_in_memory, ix86_sol10_return_in_memory,
      	TARGET_PROMOTE_PROTOTYPES): Likewise.
      	* config/ia64/ia64-protos.h (ia64_function_value,
      	ia64_hpux_function_arg_padding): Likewise.
      	* config/ia64/ia64.c (hfa_element_mode, ia64_return_in_memory,
      	ia64_function_value, bundle_state_hash, bundle_state_eq_p,
      	ia64_hpux_function_arg_padding): Likewise.
      	* config/iq2000/iq2000-protos.h (function_arg,
      	iq2000_function_value): Likewise.
      	* config/iq2000/iq2000.c (iq2000_return_in_memory,
      	iq2000_pass_by_reference, TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES,
      	function_arg, iq2000_function_value): Likewise.
      	* config/m32c/m32c-protos.h (m32c_function_value,
      	m32c_promote_function_return): Likewise.
      	* config/m32c/m32c.c (m32c_pass_by_reference,
      	m32c_promote_prototypes, m32c_promote_function_return,
      	m32c_function_value): Likewise.
      	* config/m32r/m32r.c (m32r_return_in_memory,
      	m32r_pass_by_reference, TARGET_PROMOTE_PROTOTYPES,
      	m32r_in_small_data_p): Likewise.
      	* config/m68hc11/m68hc11-protos.h (m68hc11_function_arg_padding):
      	Likewise.
      	* config/m68hc11/m68hc11.c (m68hc11_return_in_memory,
      	m68hc11_function_arg_padding): Likewise.
      	* config/m68k/m68k-protos.h (m68k_function_value): Likewise.
      	* config/m68k/m68k.c (TARGET_PROMOTE_PROTOTYPES,
      	m68k_function_value): Likewise.
      	* config/mcore/mcore-protos.h (mcore_num_arg_regs,
      	mcore_function_value): Likewise.
      	* config/mcore/mcore.c (handle_structs_in_regs,
      	mcore_return_in_memory, TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES,
      	mcore_num_arg_regs, mcore_function_value): Likewise.
      	* config/mips/mips-protos.h (mips_pad_arg_upward,
      	mips_function_value): Likewise.
      	* config/mips/mips.c (mips_fpr_return_fields, mips_return_in_msb,
      	mips_return_in_memory, mips_pass_by_reference, mips_callee_copies,
      	TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
      	TARGET_PROMOTE_PROTOTYPES, mips_pad_arg_upward,
      	mips_function_value): Likewise.
      	* config/mmix/mmix-protos.h (mmix_function_outgoing_value):
      	Likewise.
      	* config/mmix/mmix.c (mmix_pass_by_reference,
      	TARGET_PROMOTE_FUNCTION_ARGS, mmix_function_outgoing_value,
      	mmix_encode_section_info): Likewise.
      	* config/mn10300/mn10300-protos.h (mn10300_function_value):
      	Likewise.
      	* config/mn10300/mn10300.c (mn10300_return_in_memory,
      	mn10300_pass_by_reference, TARGET_PROMOTE_PROTOTYPES,
      	mn10300_function_value): Likewise.
      	* config/mt/mt-protos.h (mt_function_value): Likewise.
      	* config/mt/mt.c (mt_pass_by_reference, mt_function_value,
      	mt_pass_in_stack, TARGET_PROMOTE_PROTOTYPES): Likewise.
      	* config/pa/pa-protos.h (function_arg_padding, function_value,
      	pa_return_in_memory): Likewise.
      	* config/pa/pa.c (pa_pass_by_reference,
      	TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES,
      	function_arg_padding, function_value, pa_return_in_memory):
      	Likewise.
      	* config/pdp11/pdp11.c (pdp11_return_in_memory): Likewise.
      	* config/rs6000/rs6000-protos.h (rs6000_function_value,
      	function_arg_padding): Likewise.
      	* config/rs6000/rs6000.c (rs6000_return_in_memory,
      	rs6000_darwin64_record_arg_recurse, rs6000_darwin64_record_arg,
      	rs6000_pass_by_reference, rs6000_must_pass_in_stack,
      	TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
      	function_arg_padding, altivec_expand_dst_builtin,
      	altivec_expand_builtin, rs6000_expand_builtin, spe_init_builtins,
      	altivec_init_builtins, rs6000_common_init_builtins,
      	rs6000_function_value): Likewise.
      	* s390/s390-protos.h (s390_function_value): Likewise.
      	* config/s390/s390.c (s390_function_arg_size,
      	s390_pass_by_reference, s390_return_in_memory,
      	s390_function_value, TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
      	* config/score/score-protos.h (score_function_value): Likewise.
      	* config/score/score.c (score_arg_partial_bytes,
      	TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
      	TARGET_PROMOTE_PROTOTYPES, score_return_in_memory,
      	score_pass_by_reference, score_add_offset, score_function_value):
      	Likewise.
      	* config/sh/sh-protos.h (sh_attr_renesas_p,
      	sh_promote_prototypes): Likewise.
      	* config/sh/sh.c (sh_return_in_memory, sh_pass_by_reference,
      	sh_callee_copies, sh_promote_prototypes, shcompact_byref,
      	sh_attr_renesas_p): Likewise.
      	* config/sparc/sparc-protos.h (function_value,
      	function_arg_padding): Likewise.
      	* config/sparc/sparc.c (sparc_promote_prototypes,
      	sparc_return_in_memory, sparc_pass_by_reference,
      	TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
      	function_arg_record_value_2, function_arg_record_value_1,
      	function_arg_record_value, function_arg_record_value,
      	function_arg_padding, function_value): Likewise.
      	* config/spu/spu-protos.h (spu_function_value): Likewise.
      	* config/spu/spu.c (spu_pass_by_reference, spu_return_in_memory,
      	spu_function_value): Likewise.
      	* config/stormy16/stormy16-protos.h (xstormy16_function_value):
      	Likewise.
      	* config/stormy16/stormy16.c (xstormy16_return_in_memory,
      	xstormy16_function_value, TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES):
      	Likewise.
      	* config/v850/v850.c (v850_return_in_memory,
      	v850_pass_by_reference, TARGET_PROMOTE_PROTOTYPES): Likewise.
      	* config/vax/vax.c (TARGET_PROMOTE_PROTOTYPES): Likewise.
      	* config/xtensa/xtensa.c (xtensa_return_in_msb,
      	xtensa_return_in_memory, TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES):
      	Likewise.
      	* explow.c (promote_mode, hard_function_value): Likewise.
      	* expr.h (hard_function_value, promote_mode): Likewise.
      	* function.c (aggregate_value_p): Likewise.
      	* hooks.c (hook_bool_const_tree_true): New.
      	* hooks.h (hook_bool_const_tree_true): New.
      	* sdbout.c (SET_KNOWN_TYPE_TAG, plain_type_1): Constify.
      	* target-def.h (TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES,
      	TARGET_RETURN_IN_MSB): Likewise.
      	* target.h (promote_function_args, promote_function_return,
      	promote_prototypes, return_in_memory, return_in_msb,
      	pass_by_reference, must_pass_in_stack, callee_copies,
      	function_value): Likewise.
      	* targhooks.c (default_return_in_memory,
      	hook_pass_by_reference_must_pass_in_stack,
      	hook_callee_copies_named,
      	hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false,
      	hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true,
      	default_function_value): Likewise. 
      	* targhooks.h (default_return_in_memory,
      	hook_pass_by_reference_must_pass_in_stack,
      	hook_callee_copies_named,
      	hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false,
      	hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true,
      	default_function_value): Likewise.
      	* tree-ssa-structalias.c (const_equiv_class_label_t): New.
      	(equiv_class_label_hash, equiv_class_label_eq): Constify.
      	* tree-vectorizer.c (bb_in_loop_p): Likewise.
      	* tree.c (needs_to_live_in_memory): Likewise.
      	* tree.h (struct tree_type, needs_to_live_in_memory,
      	aggregate_value_p, must_pass_in_stack_var_size,
      	must_pass_in_stack_var_size_or_pad): Likewise.
      	* vmsdbgout.c (write_debug_addr, write_debug_delta4,
      	write_debug_string, ASM_OUTPUT_DEBUG_STRING, write_rtnbeg,
      	lookup_filename): Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127743 138bc75d-0d04-0410-961f-82ee72b054a4
      fb80456a
  28. 02 Aug, 2007 1 commit
    • nickc's avatar
      * config/host-hpux.c: Change copyright header to refer to version 3 of the GNU · 038d1e19
      nickc authored
        General Public License and to point readers at the COPYING3 file and the FSF's
        license web page.
      * config/alpha/predicates.md, config/alpha/vms-ld.c,
      config/alpha/linux.h, config/alpha/alpha.opt,
      config/alpha/linux-elf.h, config/alpha/vms.h, config/alpha/elf.h,
      config/alpha/vms-unwind.h, config/alpha/ev4.md,
      config/alpha/ev6.md, config/alpha/alpha.c, config/alpha/vms-cc.c,
      config/alpha/alpha.h, config/alpha/sync.md,
      config/alpha/openbsd.h, config/alpha/alpha.md,
      config/alpha/alpha-modes.def, config/alpha/ev5.md,
      config/alpha/alpha-protos.h, config/alpha/freebsd.h,
      config/alpha/osf5.h, config/alpha/netbsd.h, config/alpha/vms64.h,
      config/alpha/constraints.md, config/alpha/osf.h,
      config/alpha/xm-vms.h, config/alpha/unicosmk.h, config/linux.h,
      config/frv/predicates.md, config/frv/frv.h, config/frv/linux.h,
      config/frv/frv.md, config/frv/frv.opt, config/frv/frv-modes.def,
      config/frv/frv-asm.h, config/frv/frv-protos.h,
      config/frv/frv-abi.h, config/frv/frv.c, config/s390/tpf.h,
      config/s390/s390.c, config/s390/predicates.md, config/s390/s390.h,
      config/s390/linux.h, config/s390/tpf.md, config/s390/tpf.opt,
      config/s390/2064.md, config/s390/2084.md, config/s390/s390.md,
      config/s390/s390.opt, config/s390/s390-modes.def,
      config/s390/fixdfdi.h, config/s390/constraints.md,
      config/s390/s390-protos.h, config/s390/s390x.h, config/elfos.h,
      config/dbxcoff.h, config/m32c/predicates.md, config/m32c/cond.md,
      config/m32c/m32c.c, config/m32c/minmax.md, config/m32c/blkmov.md,
      config/m32c/m32c-pragma.c, config/m32c/m32c.h,
      config/m32c/prologue.md, config/m32c/m32c.abi,
      config/m32c/muldiv.md, config/m32c/bitops.md, config/m32c/mov.md,
      config/m32c/addsub.md, config/m32c/m32c.md, config/m32c/m32c.opt,
      config/m32c/t-m32c, config/m32c/m32c-modes.def,
      config/m32c/jump.md, config/m32c/shift.md,
      config/m32c/m32c-protos.h, config/libgloss.h,
      config/spu/spu-protos.h, config/spu/predicates.md,
      config/spu/spu-builtins.h, config/spu/spu.c,
      config/spu/spu-builtins.def, config/spu/spu-builtins.md,
      config/spu/spu.h, config/spu/spu-elf.h, config/spu/constraints.md,
      config/spu/spu.md, config/spu/spu-c.c, config/spu/spu.opt,
      config/spu/spu-modes.def, config/spu/t-spu-elf, config/interix.h,
      config/sparc/hypersparc.md, config/sparc/predicates.md,
      config/sparc/linux.h, config/sparc/sp64-elf.h,
      config/sparc/supersparc.md, config/sparc/cypress.md,
      config/sparc/openbsd1-64.h, config/sparc/openbsd64.h,
      config/sparc/niagara.md, config/sparc/sparc.md,
      config/sparc/long-double-switch.opt, config/sparc/ultra3.md,
      config/sparc/sparc.opt, config/sparc/sync.md,
      config/sparc/sp-elf.h, config/sparc/sparc-protos.h,
      config/sparc/ultra1_2.md, config/sparc/biarch64.h,
      config/sparc/sparc.c, config/sparc/little-endian.opt,
      config/sparc/sysv4-only.h, config/sparc/sparc.h,
      config/sparc/linux64.h, config/sparc/freebsd.h,
      config/sparc/sol2.h, config/sparc/rtemself.h,
      config/sparc/netbsd-elf.h, config/sparc/vxworks.h,
      config/sparc/sparc-modes.def, config/sparc/sparclet.md,
      config/sparc/sysv4.h, config/vx-common.h, config/netbsd-aout.h,
      config/flat.h, config/m32r/m32r.md, config/m32r/predicates.md,
      config/m32r/little.h, config/m32r/m32r.c, config/m32r/m32r.opt,
      config/m32r/linux.h, config/m32r/constraints.md,
      config/m32r/m32r.h, config/m32r/m32r-protos.h, config/vxworks.opt,
      config/darwin-c.c, config/darwin.opt, config/i386/i386.h,
      config/i386/cygming.h, config/i386/linux.h, config/i386/cygwin.h,
      config/i386/i386.md, config/i386/netware-crt0.c,
      config/i386/sco5.h, config/i386/mmx.md, config/i386/vx-common.h,
      config/i386/kaos-i386.h, config/i386/winnt-stubs.c,
      config/i386/netbsd64.h, config/i386/djgpp.h, config/i386/gas.h,
      config/i386/sol2.h, config/i386/constraints.md,
      config/i386/netware-libgcc.c, config/i386/sysv5.h,
      config/i386/predicates.md, config/i386/geode.md,
      config/i386/x86-64.h, config/i386/kfreebsd-gnu.h,
      config/i386/freebsd64.h, config/i386/vxworksae.h,
      config/i386/pentium.md, config/i386/lynx.h, config/i386/i386elf.h,
      config/i386/rtemself.h, config/i386/netbsd-elf.h,
      config/i386/ppro.md, config/i386/k6.md, config/i386/netware.c,
      config/i386/netware.h, config/i386/i386-modes.def,
      config/i386/sysv4-cpp.h, config/i386/i386-interix.h,
      config/i386/cygwin1.c, config/i386/djgpp.opt, config/i386/uwin.h,
      config/i386/unix.h, config/i386/ptx4-i.h, config/i386/xm-djgpp.h,
      config/i386/att.h, config/i386/winnt.c, config/i386/beos-elf.h,
      config/i386/sol2-10.h, config/i386/darwin64.h, config/i386/sse.md,
      config/i386/i386.opt, config/i386/bsd.h, config/i386/cygming.opt,
      config/i386/xm-mingw32.h, config/i386/linux64.h,
      config/i386/openbsdelf.h, config/i386/xm-cygwin.h,
      config/i386/sco5.opt, config/i386/darwin.h, config/i386/mingw32.h,
      config/i386/winnt-cxx.c, config/i386/i386-interix3.h,
      config/i386/nwld.c, config/i386/nwld.h, config/i386/host-cygwin.c,
      config/i386/cygwin2.c, config/i386/i386-protos.h,
      config/i386/sync.md, config/i386/openbsd.h,
      config/i386/host-mingw32.c, config/i386/i386-aout.h,
      config/i386/nto.h, config/i386/biarch64.h,
      config/i386/i386-coff.h, config/i386/freebsd.h,
      config/i386/driver-i386.c, config/i386/knetbsd-gnu.h,
      config/i386/host-i386-darwin.c, config/i386/vxworks.h,
      config/i386/crtdll.h, config/i386/i386.c, config/i386/sysv4.h,
      config/darwin-protos.h, config/linux.opt, config/sol2.c,
      config/sol2.h, config/sh/symbian.c, config/sh/sh-protos.h,
      config/sh/linux.h, config/sh/elf.h, config/sh/superh.h,
      config/sh/sh4.md, config/sh/coff.h, config/sh/newlib.h,
      config/sh/embed-elf.h, config/sh/symbian-pre.h, config/sh/rtems.h,
      config/sh/kaos-sh.h, config/sh/sh4a.md, config/sh/constraints.md,
      config/sh/sh64.h, config/sh/sh.opt, config/sh/symbian-post.h,
      config/sh/sh-c.c, config/sh/predicates.md, config/sh/sh.c,
      config/sh/sh.h, config/sh/shmedia.md, config/sh/sh-modes.def,
      config/sh/little.h, config/sh/sh1.md, config/sh/sh4-300.md,
      config/sh/superh64.h, config/sh/rtemself.h,
      config/sh/netbsd-elf.h, config/sh/sh.md, config/sh/vxworks.h,
      config/usegas.h, config/svr3.h, config/pdp11/pdp11-protos.h,
      config/pdp11/2bsd.h, config/pdp11/pdp11.md, config/pdp11/pdp11.c,
      config/pdp11/pdp11.opt, config/pdp11/pdp11-modes.def,
      config/pdp11/pdp11.h, config/avr/rtems.h, config/avr/avr-protos.h,
      config/avr/predicates.md, config/avr/constraints.md,
      config/avr/avr.md, config/avr/avr.c, config/avr/avr.opt,
      config/avr/avr.h, config/sol2-protos.h, config/dbxelf.h,
      config/lynx.opt, config/crx/crx.h, config/crx/crx-protos.h,
      config/crx/crx.md, config/crx/crx.c, config/crx/crx.opt,
      config/c4x/c4x-c.c, config/c4x/c4x.c, config/c4x/c4x.opt,
      config/c4x/c4x-modes.def, config/c4x/rtems.h,
      config/c4x/predicates.md, config/c4x/c4x.h,
      config/c4x/c4x-protos.h, config/c4x/c4x.md, config/kfreebsd-gnu.h,
      config/xtensa/predicates.md, config/xtensa/xtensa.c,
      config/xtensa/linux.h, config/xtensa/xtensa.h,
      config/xtensa/elf.h, config/xtensa/xtensa.md,
      config/xtensa/xtensa.opt, config/xtensa/constraints.md,
      config/xtensa/xtensa-protos.h, config/dbx.h,
      config/stormy16/predicates.md, config/stormy16/stormy16.md,
      config/stormy16/stormy16.c, config/stormy16/stormy16.opt,
      config/stormy16/stormy16.h, config/stormy16/stormy16-protos.h,
      config/host-solaris.c, config/fr30/fr30.h,
      config/fr30/predicates.md, config/fr30/fr30-protos.h,
      config/fr30/fr30.md, config/fr30/fr30.c, config/fr30/fr30.opt,
      config/vxworksae.h, config/sol2-c.c, config/lynx.h,
      config/m68hc11/m68hc11-protos.h, config/m68hc11/predicates.md,
      config/m68hc11/m68hc11.md, config/m68hc11/m68hc11.c,
      config/m68hc11/m68hc11.opt, config/m68hc11/m68hc11.h,
      config/m68hc11/m68hc12.h, config/openbsd-oldgas.h,
      config/host-linux.c, config/interix3.h, config/cris/cris.c,
      config/cris/predicates.md, config/cris/linux.h,
      config/cris/cris.h, config/cris/aout.h, config/cris/cris.md,
      config/cris/linux.opt, config/cris/cris.opt, config/cris/elf.opt,
      config/cris/aout.opt, config/cris/cris-protos.h,
      config/vxworks-dummy.h, config/netbsd.h, config/netbsd-elf.h,
      config/iq2000/iq2000.h, config/iq2000/predicates.md,
      config/iq2000/iq2000-protos.h, config/iq2000/iq2000.md,
      config/iq2000/iq2000.c, config/iq2000/iq2000.opt,
      config/host-darwin.c, config/mt/mt.md, config/mt/mt.c,
      config/mt/mt.opt, config/mt/t-mt, config/mt/mt.h,
      config/mt/mt-protos.h, config/svr4.h, config/host-darwin.h,
      config/chorus.h, config/mn10300/mn10300.c,
      config/mn10300/mn10300.opt, config/mn10300/predicates.md,
      config/mn10300/mn10300.h, config/mn10300/linux.h,
      config/mn10300/constraints.md, config/mn10300/mn10300-protos.h,
      config/mn10300/mn10300.md, config/ia64/predicates.md,
      config/ia64/itanium1.md, config/ia64/unwind-ia64.h,
      config/ia64/ia64-c.c, config/ia64/sync.md, config/ia64/ia64.c,
      config/ia64/itanium2.md, config/ia64/ia64.h, config/ia64/vect.md,
      config/ia64/freebsd.h, config/ia64/ia64.md,
      config/ia64/ia64-modes.def, config/ia64/constraints.md,
      config/ia64/hpux.h, config/ia64/ia64-protos.h, config/windiss.h,
      config/gofast.h, config/rtems.h, config/sol2-10.h,
      config/m68k/predicates.md, config/m68k/m68k.md,
      config/m68k/linux.h, config/m68k/m68k-modes.def,
      config/m68k/print-sysroot-suffix.sh, config/m68k/m68k-protos.h,
      config/m68k/coff.h, config/m68k/m68k-none.h, config/m68k/ieee.opt,
      config/m68k/openbsd.h, config/m68k/m68k-aout.h,
      config/m68k/m68k.opt, config/m68k/m68020-elf.h,
      config/m68k/m68kelf.h, config/m68k/m68k-devices.def,
      config/m68k/uclinux-oldabi.h, config/m68k/m68k.c,
      config/m68k/constraints.md, config/m68k/rtemself.h,
      config/m68k/netbsd-elf.h, config/m68k/m68k.h,
      config/m68k/uclinux.h, config/rs6000/power4.md,
      config/rs6000/host-darwin.c, config/rs6000/6xx.md,
      config/rs6000/linux.h, config/rs6000/eabi.h,
      config/rs6000/aix41.opt, config/rs6000/xcoff.h,
      config/rs6000/secureplt.h, config/rs6000/linuxspe.h,
      config/rs6000/eabialtivec.h, config/rs6000/8540.md,
      config/rs6000/darwin8.h, config/rs6000/kaos-ppc.h,
      config/rs6000/windiss.h, config/rs6000/603.md,
      config/rs6000/aix41.h, config/rs6000/cell.md,
      config/rs6000/mpc.md, config/rs6000/aix43.h, config/rs6000/beos.h,
      config/rs6000/gnu.h, config/rs6000/rtems.h, config/rs6000/aix.opt,
      config/rs6000/darwin.md, config/rs6000/darwin64.h,
      config/rs6000/default64.h, config/rs6000/7xx.md,
      config/rs6000/darwin.opt, config/rs6000/spe.md,
      config/rs6000/rs6000.opt, config/rs6000/rs6000-c.c,
      config/rs6000/rios2.md, config/rs6000/linuxaltivec.h,
      config/rs6000/7450.md, config/rs6000/linux64.h,
      config/rs6000/constraints.md, config/rs6000/440.md,
      config/rs6000/darwin.h, config/rs6000/host-ppc64-darwin.c,
      config/rs6000/rs6000.c, config/rs6000/aix52.h,
      config/rs6000/rs6000.h, config/rs6000/power6.md,
      config/rs6000/predicates.md, config/rs6000/altivec.md,
      config/rs6000/aix64.opt, config/rs6000/rios1.md,
      config/rs6000/rs6000-modes.def, config/rs6000/rs64.md,
      config/rs6000/eabisim.h, config/rs6000/sysv4le.h,
      config/rs6000/darwin7.h, config/rs6000/dfp.md,
      config/rs6000/linux64.opt, config/rs6000/sync.md,
      config/rs6000/vxworksae.h, config/rs6000/power5.md,
      config/rs6000/lynx.h, config/rs6000/biarch64.h,
      config/rs6000/rs6000.md, config/rs6000/sysv4.opt,
      config/rs6000/eabispe.h, config/rs6000/e500.h,
      config/rs6000/freebsd.h, config/rs6000/rs6000-protos.h,
      config/rs6000/netbsd.h, config/rs6000/e500-double.h,
      config/rs6000/aix.h, config/rs6000/vxworks.h,
      config/rs6000/40x.md, config/rs6000/aix51.h,
      config/rs6000/sysv4.h, config/arc/arc-protos.h, config/arc/arc.md,
      config/arc/arc.c, config/arc/arc.opt, config/arc/arc-modes.def,
      config/arc/arc.h, config/mcore/mcore-elf.h,
      config/mcore/mcore-protos.h, config/mcore/predicates.md,
      config/mcore/mcore.md, config/mcore/mcore.c,
      config/mcore/mcore.opt, config/mcore/mcore.h,
      config/mcore/mcore-pe.h, config/darwin.c, config/freebsd-nthr.h,
      config/score/predicates.md, config/score/score-version.h,
      config/score/score-protos.h, config/score/misc.md,
      config/score/elf.h, config/score/score.c, config/score/mac.md,
      config/score/score7.md, config/score/score.h,
      config/score/score-conv.h, config/score/score-mdaux.c,
      config/score/score.md, config/score/score.opt,
      config/score/score-modes.def, config/score/score-mdaux.h,
      config/score/mul-div.S, config/arm/uclinux-elf.h,
      config/arm/semi.h, config/arm/ecos-elf.h, config/arm/arm1020e.md,
      config/arm/symbian.h, config/arm/linux-elf.h,
      config/arm/arm1026ejs.md, config/arm/arm1136jfs.md,
      config/arm/elf.h, config/arm/aout.h, config/arm/arm.c,
      config/arm/thumb2.md, config/arm/vec-common.md, config/arm/coff.h,
      config/arm/strongarm-pe.h, config/arm/arm.h,
      config/arm/cortex-a8-neon.md, config/arm/semiaof.h,
      config/arm/cortex-a8.md, config/arm/uclinux-eabi.h,
      config/arm/arm-modes.def, config/arm/linux-eabi.h,
      config/arm/rtems-elf.h, config/arm/neon-schedgen.ml,
      config/arm/arm-cores.def, config/arm/arm-protos.h,
      config/arm/vfp.md, config/arm/aof.h, config/arm/linux-gas.h,
      config/arm/wince-pe.h, config/arm/neon.md,
      config/arm/constraints.md, config/arm/neon.ml,
      config/arm/xscale-elf.h, config/arm/strongarm-coff.h,
      config/arm/arm.opt, config/arm/arm926ejs.md,
      config/arm/predicates.md, config/arm/iwmmxt.md,
      config/arm/arm_neon.h, config/arm/unknown-elf.h,
      config/arm/kaos-arm.h, config/arm/bpabi.h, config/arm/pe.opt,
      config/arm/neon-testgen.ml, config/arm/arm.md,
      config/arm/xscale-coff.h, config/arm/pe.c,
      config/arm/arm-generic.md, config/arm/pe.h,
      config/arm/kaos-strongarm.h, config/arm/freebsd.h,
      config/arm/neon-docgen.ml, config/arm/netbsd.h, config/arm/fpa.md,
      config/arm/strongarm-elf.h, config/arm/cirrus.md,
      config/arm/netbsd-elf.h, config/arm/vxworks.h,
      config/arm/neon-gen.ml, config/kaos.h, config/darwin-driver.c,
      config/pa/predicates.md, config/pa/pa64-hpux.h,
      config/pa/pa-hpux.opt, config/pa/som.h, config/pa/pa-hpux1010.opt,
      config/pa/pa-hpux1111.opt, config/pa/pa-pro-end.h,
      config/pa/elf.h, config/pa/fptr.c, config/pa/pa64-linux.h,
      config/pa/pa.md, config/pa/pa.opt, config/pa/pa-hpux.h,
      config/pa/pa-hpux10.h, config/pa/pa-hpux11.h,
      config/pa/pa-hpux1010.h, config/pa/pa-protos.h,
      config/pa/pa-osf.h, config/pa/pa-hpux1111.h, config/pa/pa-64.h,
      config/pa/milli64.S, config/pa/pa.c, config/pa/pa-linux.h,
      config/pa/pa.h, config/pa/pa32-linux.h, config/pa/pa64-hpux.opt,
      config/pa/pa64-regs.h, config/pa/pa-modes.def,
      config/pa/constraints.md, config/darwin9.h, config/mips/4100.md,
      config/mips/linux.h, config/mips/elfoabi.h, config/mips/elf.h,
      config/mips/sdb.h, config/mips/windiss.h, config/mips/rtems.h,
      config/mips/3000.md, config/mips/iris5.h, config/mips/5000.md,
      config/mips/7000.md, config/mips/9000.md, config/mips/4600.md,
      config/mips/linux64.h, config/mips/elforion.h,
      config/mips/constraints.md, config/mips/generic.md,
      config/mips/predicates.md, config/mips/4300.md,
      config/mips/mips-ps-3d.md, config/mips/iris.h, config/mips/24k.md,
      config/mips/mips.md, config/mips/mips.opt, config/mips/4k.md,
      config/mips/5k.md, config/mips/vr4120-div.S,
      config/mips/openbsd.h, config/mips/iris6.h, config/mips/4000.md,
      config/mips/mips-protos.h, config/mips/6000.md,
      config/mips/mips.c, config/mips/mips.h, config/mips/r3900.h,
      config/mips/74k.md, config/mips/netbsd.h, config/mips/vxworks.h,
      config/mips/mips-modes.def, config/mips/vr.h,
      config/soft-fp/t-softfp, config/openbsd.h, config/ptx4.h,
      config/freebsd-spec.h, config/vax/vax.c, config/vax/openbsd.h,
      config/vax/vax.h, config/vax/elf.h, config/vax/vax.md,
      config/vax/bsd.h, config/vax/vax.opt, config/vax/vax-modes.def,
      config/vax/openbsd1.h, config/vax/netbsd.h,
      config/vax/vax-protos.h, config/vax/netbsd-elf.h,
      config/vax/vaxv.h, config/vax/ultrix.h, config/freebsd.h,
      config/h8300/rtems.h, config/h8300/predicates.md,
      config/h8300/h8300.c, config/h8300/h8300.h, config/h8300/elf.h,
      config/h8300/h8300.md, config/h8300/h8300.opt,
      config/h8300/coff.h, config/h8300/h8300-protos.h,
      config/v850/v850.md, config/v850/predicates.md,
      config/v850/v850-c.c, config/v850/v850.c, config/v850/v850.opt,
      config/v850/v850.h, config/v850/v850-protos.h, config/vxworks.c,
      config/knetbsd-gnu.h, config/sol2-6.h, config/vxworks.h,
      config/mmix/mmix.h, config/mmix/predicates.md,
      config/mmix/mmix-protos.h, config/mmix/mmix.md,
      config/mmix/mmix.c, config/mmix/mmix.opt,
      config/mmix/mmix-modes.def, config/bfin/bfin.opt,
      config/bfin/rtems.h, config/bfin/bfin-modes.def,
      config/bfin/predicates.md, config/bfin/bfin-protos.h,
      config/bfin/bfin.c, config/bfin/bfin.h, config/bfin/bfin.md: Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127157 138bc75d-0d04-0410-961f-82ee72b054a4
      038d1e19
  29. 30 Jul, 2007 1 commit
    • ghazi's avatar
      * alias.c (record_set, memory_modified_1): Constify. · 81a410b1
      ghazi authored
      	* bt-load.c (note_btr_set): Likewise.
      	* caller-save.c (mark_set_regs, add_stored_regs): Likewise.
      	* combine.c (set_nonzero_bits_and_sign_copies,
      	expand_field_assignment, record_dead_and_set_regs_1,
      	use_crosses_set_p, reg_dead_at_p_1, can_combine_p,
      	likely_spilled_retval_1): Likewise.
      	* config/frv/frv.c (frv_registers_update_1, frv_io_check_address,
      	frv_io_handle_set): Likewise.
      	* config/mips/mips.c (mips_sim_record_set,
      	vr4130_true_reg_dependence_p_1): Likewise.
      	* config/mt/mt.c (insn_dependent_p_1): Likewise.
      	* config/s390/s390.c (s390_reg_clobbered_rtx): Likewise.
      	* config/sh/sh.c (flow_dependent_p_1): Likewise.
      	* cselib.c (cselib_invalidate_rtx_note_stores): Likewise.
      	* dce.c (mark_nonreg_stores_1, mark_nonreg_stores_2): Likewise.
      	* ddg.c (mark_mem_store): Likewise.
      	* df-problems.c (df_urec_mark_reg_change): Likewise.
      	* function.c (update_epilogue_consts): Likewise.
      	* gcse.c (record_set_info, record_last_set_info,
      	mems_conflict_for_gcse_p, canon_list_insert, reg_set_info,
      	reg_clear_last_set): Likewise.
      	* global.c (mark_reg_store, mark_reg_clobber, reg_becomes_live):
      	Likewise.
      	* jump.c (reversed_comparison_code_parts): Likewise.
      	* local-alloc.c (validate_equiv_mem_from_store, no_equiv,
      	reg_is_set): Likewise.
      	* loop-iv.c (mark_altered): Likewise.
      	* mode-switching.c (reg_becomes_live): Likewise.
      	* optabs.c (no_conflict_move_test): Likewise.
      	* postreload-gcse.c (record_last_set_info, find_mem_conflicts):
      	Likewise.
      	* postreload.c (reload_combine_note_store, move2add_note_store):
      	Likewise.
      	* regmove.c (flags_set_1): Likewise.
      	* regrename.c (note_sets, kill_clobbered_value, kill_set_value):
      	Likewise.
      	* reload1.c (mark_not_eliminable, forget_old_reloads_1):
      	Likewise. 
      	* resource.c (update_live_status): Likewise.
      	* rtl.h (set_of, note_stores): Likewise.
      	* rtlanal.c (set_of_1, parms_set, struct set_of_data, set_of,
      	note_stores, parms_set): Likewise.
      	* sched-rgn.c (sets_likely_spilled_1): Likewise.
      	* stack-ptr-mod.c (notice_stack_pointer_modification_1):
      	Likewise. 
      	* var-tracking.c (count_stores, add_stores): Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127065 138bc75d-0d04-0410-961f-82ee72b054a4
      81a410b1
  30. 19 Jun, 2007 1 commit
  31. 16 Jun, 2007 1 commit
    • pinskia's avatar
      2007-06-15 Andrew Pinski <andrew_pinski@playstation.sony.com> · 0de36bdb
      pinskia authored
                  Zdenek Dvorak <dvorakz@suse.cz>
                  Richard Guenther  <rguenther@suse.de>
                  Kaz Kojima  <kkojima@gcc.gnu.org>
      
      	* tree-vrp.c (compare_values_warnv): Convert val2 to
      	the type of val1.
      	(extract_range_from_assert): Create
      	POINTER_PLUS_EXPR for pointer types.
      	(extract_range_from_binary_expr): Handle
      	only POINTER_PLUS_EXPR, MIN_EXPR, and MAX_EXPR
      	for pointer types.
      	* doc/c-tree.texi (POINTER_PLUS_EXPR): Document.
      	* tree-ssa-loop-niter.c (split_to_var_and_offset): Handle
      	POINTER_PLUS_EXPR as PLUS_EXPR.
      	(number_of_iterations_lt_to_ne):
      	For pointer types, use sizetype when
      	creating MINUS_EXPR/PLUS_EXPRs.
      	(assert_loop_rolls_lt): For pointer types, use sizetype when
      	creating MINUS_EXPR/PLUS_EXPRs.
      	(number_of_iterations_le): Likewise.
      	(expand_simple_operations): POINTER_PLUS_EXPR are simple also.
      	(derive_constant_upper_bound): Handle POINTER_PLUS_EXPR just
      	like PLUS_EXPR and MINUS_EXPR.
      	* tree-pretty-print.c (dump_generic_node): Handle
      	POINTER_PLUS_EXPR.
      	(op_prio): Likewise.
      	(op_symbol_1): Likewise.
      	* optabs.c (optab_for_tree_code): Likewise.
      	* tree-ssa-loop-manip.c (create_iv): Handle pointer base
      	specially.
      	* tree-tailcall.c (process_assignment): Mention
      	POINTER_PLUS_EXPR in a TODO comment.
      	* tree.c (build2_stat): Assert when trying to use PLUS_EXPR or 
      	MINUS_EXPR with a pointer. Also assert for POINTER_PLUS_EXPR
      	not used with a pointer and an integer type.
      	* tree-scalar-evolution.c (add_to_evolution_1): Convert the
      	increment using chrec_convert_rhs instead of chrec_convert.
      	(follow_ssa_edge_in_rhs): Handle POINTER_PLUS_EXPR like
      	PLUS_EXPR except for the right hand side's type will be
      	sizetype.
      	(interpret_rhs_modify_stmt): Handle POINTER_PLUS_EXPR.
      	(fold_used_pointer_cast): Kill.
      	(pointer_offset_p): Kill.
      	(fold_used_pointer): Kill.
      	(pointer_used_p): Kill.
      	(analyze_scalar_evolution_1 <case GIMPLE_MODIFY_STMT>): Don't
      	call fold_used_pointer.
      	(instantiate_parameters_1): Convert the increment
      	using chrec_convert_rhs instead of chrec_convert.
      	Handle POINTER_PLUS_EXPR as PLUS_EXPR.
      	* builtins.c (get_pointer_alignment): Handle POINTER_PLUS_EXPR
      	instead of PLUS_EXPR.
      	(expand_builtin_strcat): Create a POINTER_PLUS_EXPR instead of
      	PLUS_EXPR for pointers.
      	(std_gimplify_va_arg_expr): Likewise.
      	(fold_builtin_memory_op): Likewise.
      	(fold_builtin_strstr): Likewise.
      	(fold_builtin_strchr): Likewise.
      	(fold_builtin_strrchr): Likewise.
      	(fold_builtin_strpbrk): Likewise.
      	(expand_builtin_memory_chk): Likewise.
      	(fold_builtin_memory_chk): Likewise.
      	(std_expand_builtin_va_start): Use
      	sizetype for the call to make_tree and then convert
      	to the pointer type.
      	(fold_builtin_memchr): Use POINTER_PLUS_EXPR
      	instead of PLUS_EXPR for adding to a pointer.
      	(std_gimplify_va_arg_expr): Use fold_build2 for
      	the creating of POINTER_PLUS_EXPR.  For the BIT_AND_EXPR, cast
      	the operands to sizetype first and then cast the BIT_AND_EXPR
      	back to the pointer type.
      	* fold-const.c (build_range_check): Handle pointer types
      	specially.
      	(extract_array_ref): Look for POINTER_PLUS_EXPR instead
      	of PLUS_EXPR's. Make sure the offset is converted to
      	sizetype.
      	(try_move_mult_to_index): Strip the NOPs from the offset.
      	Remove code argument and replace all uses with PLUS_EXPR.
      	(fold_to_nonsharp_ineq_using_bound): Handle pointer types
      	specially. Don't use a pointer type for MINUS_EXPR.
      	(fold_unary): Handle for (T1)(X op Y),
      	only p+ as that is the only as that can be handled for
      	binary operators now.
      	(fold_binary <case POINTER_PLUS_EXPR>): Add folding of
      	POINTER_PLUS_EXPR.
      	<case PLUS_EXPR>: Add folding of PTR+INT into
      	PTR p+ INT.
      	Don't call try_move_mult_to_index.
      	<case MINUS_EXPR>: Fold (PTR0 p+ A) - (PTR1 p+ B)
      	into (PTR0 - PTR1) + (A - B). Fold (PTR0 p+ A) - PTR1 into
      	(PTR0 - PTR1) + A iff (PTR0 - PTR1) simplifies.
      	Don't call try_move_mult_to_index.
      	(tree_expr_nonnegative_warnv_p): Handle POINTER_PLUS_EXPR.
      	(tree_expr_nonzero_p): Likewise.
      	(fold_indirect_ref_1): Look at POINTER_PLUS_EXPR instead
      	of PLUS_EXPR for the complex expression folding.
      	* tree-chrec.c (chrec_fold_plus_poly_poly): If the
      	first chrec is a pointer type, then the second should
      	be sizetype and not the first's type.
      	For POINTER_PLUS_EXPR, use a different right hand side type.
      	Handle POINTER_PLUS_EXPR like PLUS_EXPR.
      	(chrec_fold_plus_1): For POINTER_PLUS_EXPR, use a
      	different right hand side type.
      	Handle POINTER_PLUS_EXPR like PLUS_EXPR.
      	(chrec_fold_plus): For pointer types, use POINTER_PLUS_EXPR
      	instead of PLUS_EXPR.
      	When either operand is zero, convert the other operand.
      	(chrec_apply): Use chrec_convert_rhs
      	on the argument x instead of chrec_convert.
      	(reset_evolution_in_loop): For pointer types, the new_evol
      	should be sizetype.
      	(convert_affine_scev): For POINTER_PLUS_EXPR, use a
      	different right hand side type.
      	Handle POINTER_PLUS_EXPR like PLUS_EXPR.
      	(chrec_convert_rhs): New function.
      	(chrec_convert_aggressive): For POINTER_PLUS_EXPR, use a
      	different right hand side type.
      	Handle POINTER_PLUS_EXPR like PLUS_EXPR.
      	* tree-chrec.h (chrec_convert_rhs): New prototype.
      	(build_polynomial_chrec): For pointer types, the right hand
      	* tree-ssa-ccp.c (maybe_fold_stmt_indirect): Look for
      	POINTER_PLUS_EXPR instead of PLUS_EXPR's.
      	Remove subtraction case as it is always addition now.
      	Make sure the offset is converted to sizetype.
      	(fold_stmt_r): Don't handle PLUS_EXPR/MINUS_EXPR specially.
      	Handle POINTER_PLUS_EXPR like PLUS_EXPR was handled before.
      	* tree-ssa-loop-ivopts.c (determine_base_object): Abort for 
      	PLUS_EXPR in pointer type.
      	Handle POINTER_PLUS_EXPR.
      	(tree_to_aff_combination): Likewise.
      	(force_expr_to_var_cost): Likewise.
      	(force_expr_to_var_cost): Likewise. Create a POINTER_PLUS_EXPR
      	instead of PLUS_EXPR for pointers.
      	* c-format.c (check_format_arg): Handle POINTER_PLUS_EXPR
      	instead of PLUS_EXPR of pointer types.
      	* tree-stdarg.c (va_list_counter_bump): Handle POINTER_PLUS_EXPR
      	as PLUS_EXPR.
      	(check_va_list_escapes): Likewise.
      	(check_all_va_list_escapes): Likewise.
      	* dwarf2out.c (loc_descriptor_from_tree_1):
      	Handle POINT_PLUS_EXPR as a PLUS_EXPR.
      	* expr.c (expand_expr_real_1): Handle POINTER_PLUS_EXPR.
      	(string_constant): Likewise.
      	* tree-ssa-address.c (tree_mem_ref_addr): When adding
      	the offset to the base, use POINTER_PLUS_EXPR.
      	(add_to_parts): Convert the index to sizetype.
      	(create_mem_ref): Create A POINTER_PLUS_EXPR for the one case.
      	* matrix-reorg.c (collect_data_for_malloc_call): Stmt
      	will now only be either INDIRECT_REF and POINTER_PLUS_EXPR.
      	Offset only holds something for PLUS_EXPR.
      	(ssa_accessed_in_tree): Handle POINTER_PLUS_EXPR just as
      	a PLUS_EXPR.
      	(analyze_transpose): POINTER_PLUS_EXPR will only show up now
      	and not PLUS_EXPR.
      	(analyze_accesses_for_modify_stmt): Likewise.
      	Remove comment about the type being integral type as it is
      	wrong now.
      	(can_calculate_expr_before_stmt): Handle POINTER_PLUS_EXPR as
      	PLUS_EXPR.
      	(transform_access_sites): POINTER_PLUS_EXPR will only show up now
      	and not PLUS_EXPR.
      	Correct the type which the artimentic is done in (is now
      	sizetype).
      	Reindent one loop.
      	* tree-data-ref.c (split_constant_offset): Handle
      	POINTER_PLUS_EXPR
      	* tree-affine.c (tree_to_aff_combination): Likewise.
      	* c-typeck.c (build_unary_op): For pointers create the increment
      	as a sizetype. Create a POINTER_PLUS_EXPR instead of PLUS_EXPR
      	for pointers.
      	* gimplify.c (gimplify_self_mod_expr): Create a
      	POINTER_PLUS_EXPR instead of PLUS_EXPR for pointers.
      	(gimplify_omp_atomic_fetch_op): Handle POINTER_PLUS_EXPR.
      	* tree.def (POINTER_PLUS_EXPR): New tree code.
      	* tree-predcom.c (ref_at_iteration): If we have a pointer
      	type do the multiplication in sizetype.
      	* tree-mudflap.c (mf_xform_derefs_1): Create a
      	POINTER_PLUS_EXPR instead of PLUS_EXPR for pointers.
      	* tree-ssa-forwprop.c 
      	(forward_propagate_addr_into_variable_array_index):
      	Don't expect there to be a cast for the index as that
      	does not exist anymore.
      	(forward_propagate_addr_expr_1): Check for POINTER_PLUS_EXPR
      	instead of PLUS_EXPR.
      	Don't check for the first operand of the POINTER_PLUS_EXPR
      	was the index as it cannot be.
      	Call forward_propagate_addr_into_variable_array_index with
      	the SSA_NAME instead of the statement.
      	* varasm.c (const_hash_1): Handle POINTER_PLUS_EXPR.
      	(compare_constant): Likewise.
      	(copy_constant): Likewise.
      	(compute_reloc_for_constant): Likewise.
      	(output_addressed_constants): Likewise.
      	(initializer_constant_valid_p): Likewise.
      	* tree-ssa.c (tree_ssa_useless_type_conversion_1):
      	Convert the MIN/MAX of the inner type to the outer
      	type before comparing them.
      	* tree-ssa-loop-prefetch.c (idx_analyze_ref):  Handle
      	POINTER_PLUS_EXPR instead of PLUS_EXPR.
      	(issue_prefetch_ref): Create a POINTER_PLUS_EXPR instead
      	of PLUS_EXPR for pointers.
      	* tree-inline.c (estimate_num_insns_1): Handle
      	POINTER_PLUS_EXPR.
      	* tree-vect-transform.c (vect_create_addr_base_for_vector_ref): 
      	Create a POINTER_PLUS_EXPR instead of PLUS_EXPR for pointers.
      	(bump_vector_ptr): Create a POINTER_PLUS_EXPR
      	instead of PLUS_EXPR for the pointer increment statement.
      	(vect_update_ivs_after_vectorizer): For pointer types, create
      	POINTER_PLUS_EXPR instead of PLUS_EXPR and also create
      	MULT_EXPR in sizetype.
      	(vect_gen_niters_for_prolog_loop): Add a cast when creating
      	byte_misalign.
      	* tree-object-size.c (plus_expr_object_size): Handle
      	POINTER_PLUS_EXPR instead of PLUS_EXPR.  Removing all the extra
      	code which is trying to figure out which side is a pointer and 
      	is the index.
      	(check_for_plus_in_loops_1): Likewise.
      	(check_for_plus_in_loops): Likewise.
      	* c-common.c (pointer_int_sum): Create a
      	POINTER_PLUS_EXPR instead of PLUS_EXPR for pointers.
      	* tree-ssa-structalias.c (handle_ptr_arith): Handle
      	only POINTER_PLUS_EXPR.  Removing all the extra
      	code which is trying to figure out which side is a pointer and 
      	is the index.
      	* tree-cfg.c (verify_expr): Add extra checking for pointers and
      	PLUS_EXPR and MINUS_EXPR.
      	Also add checking to make sure the operands of POINTER_PLUS_EXPR
      	are correct.
      	* config/frv/frv.c (frv_expand_builtin_va_start): Use sizetype
      	with make_tree, instead of a pointer type.
      	* config/s390/s390.c (s390_va_start): Use POINTER_PLUS_EXPR
      	for pointers instead of PLUS_EXPR.
      	(s390_gimplify_va_arg): Likewise.
      	* config/spu/spu.c (spu_va_start): Create POINTER_PLUS_EXPR
      	instead of PLUS_EXPR when doing addition on pointer
      	types.  Use sizetype for the second operand.
      	(spu_gimplify_va_arg_expr): Likewise.
      	* config/sparc/sparc.c (sparc_gimplify_va_arg): Use 
      	POINTER_PLUS_EXPR instead of PLUS_EXPR when the operand was
      	a pointer.  Don't create a BIT_AND_EXPR for pointer types.
      	* config/i386/i386.c (ix86_va_start): Use POINTER_PLUS_EXPR
      	for the pointer addition and also use size_int/sizetype
      	for the offset.
      	(ix86_gimplify_va_arg): Likewise.
      	Perform BIT_AND_EXPR on sizetype arguments.
      	* config/sh/sh.c (sh_va_start): Call make_tree with sizetype
      	and convert its result to a pointer type.  Use POINTER_PLUS_EXPR
      	for the pointer additions and also use size_int for the offsets.
      	(sh_gimplify_va_arg_expr): Use POINTER_PLUS_EXPR for the pointer
      	additions and also use size_int for the offsets.  Perform
      	BIT_AND_EXPR on sizetype arguments.
      	* config/ia64/ia64.c (ia64_gimplify_va_arg): Use
      	POINTER_PLUS_EXPR for pointers and create the
      	BIT_AND_EXPR in sizetype.
      	* config/rs6000/rs6000.c (rs6000_va_start): Use POINTER_PLUS_EXPR
      	instead of PLUS_EXPR for pointer addition.
      	(rs6000_va_start): Likewise.
      	Also use sizetype for the offset.
      	* config/pa/pa.c (reloc_needed): Handle POINTER_PLUS_EXPR
      	as PLUS_EXPR/MINUS_EXPR.
      	(hppa_gimplify_va_arg_expr): Don't create MINUS_EXPR or
      	PLUS_EXPR for pointers, instead use POINTER_PLUS_EXPR.
      	Don't use BIT_AND_EXPR on a pointer type, convert the
      	expression to sizetype first.
      	* config/mips/mips.c (mips_va_start): Use POINTER_PLUS_EXPR
      	for pointers.
      	(mips_gimplify_va_arg_expr): Likewise.
      	Don't create BIT_AND_EXPR in a pointer type.
      
      
      
      2007-06-15  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
              * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
              POINTER_PLUS_EXPR instead of PLUS_EXPR for pointer addition.
              * trans-expr.c (gfc_trans_string_copy): Create
              POINTER_PLUS_EXPR instead of a PLUS_EXPR
              for pointer types.
      
      2007-06-15  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
      	* typeck.c (build_binary_op): For templates build the
      	expression in pieces to avoid the assert in build2_stat.
      	(get_member_function_from_ptrfunc):
      	Change over to using POINTER_PLUS_EXPR and convert
      	the second operand to sizetype.
      	* typeck2.c (build_m_component_ref):  Likewise.
      	* init.c (expand_virtual_init): Create a POINTER_PLUS_EXPR
      	instead of PLUS_EXPR for pointers.
      	(build_new_1): Likewise.
      	(build_vec_delete_1): Likewise.
      	(build_vec_delete): Likewise.
      	* class.c (build_base_path): Likewise.
      	(build_base_path): Likewise.
      	(convert_to_base_statically): Likewise.
      	(fixed_type_or_null): Handle POINTER_PLUS_EXPR.
      	(get_vtbl_decl_for_binfo): Handle POINTER_PLUS_EXPR
      	instead of PLUS_EXPR.
      	(dfs_accumulate_vtbl_inits): Create a POINTER_PLUS_EXPR
      	instead of PLUS_EXPR for pointers.
      	* call.c (build_special_member_call): Likewise.
      	* rtti.c (build_headof): Likewise.
      	Use sizetype instead of ptrdiff_type_node.
      	(tinfo_base_init): Create a POINTER_PLUS_EXPR
      	instead of PLUS_EXPR for pointers.
      	* except.c (expand_start_catch_block):  Do a
      	NEGATIVE and then a POINTER_PLUS_EXPR instead
      	of a MINUS_EXPR.
      	* cp-gimplify.c (cxx_omp_clause_apply_fn): Convert
      	PLUS_EXPR on pointer types over to use
      	POINTER_PLUS_EXPR and remove the conversion
      	to the pointer types.
      	* method.c (thunk_adjust): Use POINTER_PLUS_EXPR for
      	adding to a pointer type. Use size_int instead of
      	ssize_int. Convert the index to sizetype before
      	adding it to the pointer.
      
      
      
      2007-06-15  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
              * trans.c (Attribute_to_gnu): When subtracting an
              offset from a pointer, use POINTER_PLUS_EXPR with
              NEGATE_EXPR instead of MINUS_EXPR.
              (gnat_to_gnu): Likewise.
              * utils.c (convert): When converting between
              thin pointers, use POINTER_PLUS_EXPR and sizetype
              for the offset.
              * utils2.c (known_alignment): POINTER_PLUS_EXPR
              have the same semantics as PLUS_EXPR for alignment.
              (build_binary_op): Add support for the semantics of
              POINTER_PLUS_EXPR's operands.
              When adding an offset to a pointer, use POINTER_PLUS_EXPR.
      
      
      
      2007-06-15 Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
              * class.c (make_class_data): Build the index in sizetype.
              Use POINTER_PLUS_EXPR instead of PLUS_EXPR when
              adding to a pointer type.
              (build_symbol_entry): Likewise.
              * expr.c (build_java_arrayaccess): Likewise.
              (build_field_ref): Likewise.
              (build_known_method_ref): Likewise.
              (build_invokevirtual): Likewise.
              * except.c (build_exception_object_ref): Do a
              NEGATIVE and then a POINTER_PLUS_EXPR instead
              of a MINUS_EXPR.
      
      
      2007-06-15  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
      	PR tree-opt/32225
      	* gcc.c-torture/compile/20070605-1.c: New test.
      
      	* gcc.c-torture/compile/20070603-1.c: New testcase.
      	* gcc.c-torture/compile/20070603-2.c: New testcase.
      
      	* gcc.c-torture/compile/20070531-1.c: New test.
      
      	PR tree-opt/32167
      	* gcc.c-torture/compile/20070531-2.c: New test.
      
      	PR tree-opt/32144
      	* gcc.c-torture/compile/20070529-1.c: New test.
      
      	PR tree-opt/32145
      	* gcc.c-torture/compile/20070529-2.c: New test.
      
      	PR tree-opt/32015
      	* gcc.c-torture/compile/20070520-1.c: New test.
      
      	* g++.dg/ext/java-1.C: New test.
      
      	* gcc.dg/vect/vect-106.c: We are now able to vectorize two
      	loops instead of one. Remove the "can't determine dependence"
      	check.
      	* gcc.dg/tree-ssa/20030815-1.c: Remove testcase which is no longer
      	needed as the cast is gone in the first place.
      	* gcc.dg/max-1.c: Change local variable a to be a global one.
      	* gcc.dg/tree-ssa/ssa-pre-8.c: Update testcase since we don't
      	have a cast which is PREd.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125755 138bc75d-0d04-0410-961f-82ee72b054a4
      0de36bdb
  32. 11 Jun, 2007 1 commit
  33. 21 Feb, 2007 1 commit
    • echristo's avatar
      2007-02-20 Eric Christopher <echristo@gmail.com> · 1da85181
      echristo authored
              * config/frv/frv.c (frv_read_argument): Take a tree and int argument.
              Rewrite accordingly.
              (frv_read_iacc_argument): Ditto.
              (frv_expand_set_builtin): Take a call instead of arglist, update for
              above changes.
              (frv_expand_unop_builtin): Ditto.
              (frv_expand_binop_builtin): Ditto.
              (frv_expand_cut_builtin): Ditto.
              (frv_expand_binopimm_builtin): Ditto.
              (frv_expand_voidbinop_builtin): Ditto.
              (frv_expand_int_void2arg): Ditto.
              (frv_expand_prefetches): Ditto.
              (frv_expand_voidtriop_builtin): Ditto.
              (frv_expand_voidaccop_builtin): Ditto.
              (frv_expand_load_builtin): Ditto.
              (frv_expand_store_builtin): Ditto.
              (frv_expand_mdpackh_builtin): Ditto.
              (frv_expand_mclracc_builtin): Ditto.
              (frv_expand_mrdacc_builtin): Ditto.
              (frv_expand_mwtacc_builtin): Ditto.
              (frv_expand_builtin): Remove usage of CALL_EXPR_ARGS, update
              calls for above.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@122182 138bc75d-0d04-0410-961f-82ee72b054a4
      1da85181
  34. 19 Feb, 2007 1 commit
  35. 15 Feb, 2007 1 commit
    • sandra's avatar
      2007-02-15 Sandra Loosemore <sandra@codesourcery.com> · c2f47e15
      sandra authored
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* tree.h (enum tree_code_class): Add tcc_vl_exp.
      	(VL_EXP_CLASS_P): New.
      	(TREE_OPERAND_CHECK): Use TREE_OPERAND_LENGTH instead of
      	TREE_CODE_LENGTH.
      	(TREE_OPERAND_CHECK_CODE): Likewise.
      	(GIMPLE_STMT_OPERAND_CHECK): Likewise.
      	(TREE_RTL_OPERAND_CHECK): Likewise.
      	(tree_operand_check_failed): Make second parameter the whole tree
      	instead of its code.  Fixed callers.
      	(VL_EXP_CHECK): New.
      	(TREE_OPERAND_LENGTH): New.
      	(VL_EXP_OPERAND_LENGTH): New.
      	(CALL_EXPR_FN): New.
      	(CALL_EXPR_STATIC_CHAIN): New.
      	(CALL_EXPR_ARGS): New.
      	(CALL_EXPR_ARG): New.
      	(call_expr_nargs): New.
      	(CALL_EXPR_ARGP): New.
      	(build_nt_call_list): Declare.
      	(build_vl_exp_stat): Declare.
      	(build_vl_exp): New.
      	(build_call_list): Declare.
      	(build_call_nary): Declare.
      	(build_call_valist): Declare.
      	(build_call_array): Declare.
      	(call_expr_arg): Declare.
      	(call_expr_argp): Declare.
      	(call_expr_arglist): Declare.
      	(fold_build_call_list): Declare.
      	(fold_build_call_list_initializer): Declare.
      	(fold_call_expr): Declare to replace fold_builtin.
      	(fold_builtin_fputs): Update to agree with modified definition.
      	(fold_builtin_strcpy): Likewise.
      	(fold_builtin_strncpy): Likewise.
      	(fold_builtin_memory_chk): Likewise.
      	(fold_builtin_stxcpy_chk): Likewise.
      	(fold_builtin_strncpy_chk): Likewise.
      	(fold_builtin_next_arg): Likewise.
      	(fold_build_call_expr): Declare.
      	(fold_builtin_call_list): Declare.
      	(fold_builtin_call_valist): Declare.
      	(build_call_expr): Declare.
      	(validate_arglist): Update to agree with modified definition.
      	(tree_operand_length): New.
      	(call_expr_arg_iterator): New.
      	(init_call_expr_arg_iterator): New.
      	(next_call_expr_arg): New.
      	(first_call_expr_arg): New.
      	(more_call_expr_args_p): New.
      	(FOR_EACH_CALL_EXPR_ARG): New.
      
      	* tree.c (tree_code_class_string): Add entries for tcc_vl_exp
      	and tcc_gimple_stmt.
      	(tree_code_size): Update documentation.  Use sizeof (tree) rather
      	than sizeof (char *).
      	(tree_size): Likewise.  Add case for tcc_vl_exp.
      	(tree_node_structure): Add case for tcc_vl_exp.
      	(contains_placeholder_p): Likewise.
      	(substitute_in_expr): Likewise.
      	(substitute_placeholder_in_expr): Likewise.
      	(stabilize_reference_1): Likewise.
      	(build3_stat): Remove logic for CALL_EXPRs.  Replace with assertion
      	to diagnose breakage of this interface for constructing CALL_EXPRs.
      	(build_nt): Add similar assertion here.
      	(build_nt_call_list): New.
      	(simple_cst_equal) <CALL_EXPR>: Rewrite to use new accessors.
      	(iterative_hash_expr): Use TREE_OPERAND_LENGTH instead of
      	TREE_CODE_LENGTH.
      	(get_callee_fndecl): Use new CALL_EXPR accessors.
      	(tree_operand_check_failed): Change parameters to pass entire node
      	instead of its code, so that we can call TREE_OPERAND_LENGTH on it.
      	(process_call_operands): New.
      	(build_vl_exp_stat): New.
      	(build_call_list): New.
      	(build_call_nary): New.
      	(build_call_valist): New.
      	(build_call_array): New.
      	(walk_tree): Use TREE_OPERAND_LENGTH instead of TREE_CODE_LENGTH.
      	(call_expr_arglist): New.
      
      	* tree.def (CALL_EXPR): Change representation of CALL_EXPRs to use
      	tcc_vl_exp instead of a fixed-size tcc_expression.
      
      	* doc/c-tree.texi (CALL_EXPR): Document new representation and
      	accessors for CALL_EXPRs.
      	(AGGR_INIT_EXPR): Likewise.
      
      2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* builtins.c (c_strlen): Return NULL_TREE instead of 0.
      	(expand_builtin_nonlocal_goto): Change parameter to be entire
      	CALL_EXPR instead of an arglist.  Use new CALL_EXPR accessors.
      	(expand_builtin_prefetch): Likewise.
      	(expand_builtin_classify_type): Likewise.
      	(mathfn_built_in): Return NULL_TREE instead of 0.
      	(expand_errno_check): Use new CALL_EXPR accessors.
      	(expand_builtin_mathfn): Use new CALL_EXPR accessors and constructors.
      	Return NULL_RTX instead of 0.
      	(expand_builtin_mathfn_2): Likewise.
      	(expand_builtin_mathfn_3): Likewise.
      	(expand_builtin_interclass_mathfn): Likewise.
      	(expand_builtin_sincos): Likewise.
      	(expand_builtin_cexpi): Likewise.
      	(expand_builtin_int_roundingfn): Likewise.
      	(expand_builtin_int_roundingfn_2): Likewise.
      	(expand_builtin_pow): Likewise.
      	(expand_builtin_powi): Likewise.
      	(expand_builtin_strlen): Pass entire CALL_EXPR as parameter instead
      	of arglist, fixing callers appropriately.  Use new CALL_EXPR
      	accessors and constructors.  Return NULL_RTX instead of 0.
      	(expand_builtin_strstr): Likewise.
      	(expand_builtin_strchr): Likewise.
      	(expand_builtin_strrchr): Likewise.
      	(expand_builtin_strpbrk): Likewise.
      	(expand_builtin_memcpy): Likewise.
      	(expand_builtin_mempcpy): Likewise.
      	(expand_builtin_mempcpy_args): New.
      	(expand_builtin_memmove): Similarly to expand_builtin_mempcpy.
      	(expand_builtin_memmove_args): New.
      	(expand_builtin_bcopy): Similarly to expand_builtin_mempcpy.
      	(expand_movstr): Likewise.
      	(expand_builtin_strcpy): Likewise.
      	(expand_builtin_strcpy_args): New.
      	(expand_builtin_stpcpy): Similarly to expand_builtin_strcpy.
      	(expand_builtin_strncpy): Likewise.
      	(expand_builtin_memset): Likewise.
      	(expand_builtin_memset_args): New.
      	(expand_builtin_bzero): Similarly to expand_builtin_memset.
      	(expand_builtin_memcmp): Likewise.
      	(expand_builtin_strcmp): Likewise.
      	(expand_builtin_strncmp): Likewise.
      	(expand_builtin_strcat): Likewise.
      	(expand_builtin_strncat): Likewise.
      	(expand_builtin_strspn): Likewise.
      	(expand_builtin_strcspn): Likewise.
      	(expand_builtin_args_info): Likewise.
      	(expand_builtin_va_start): Likewise.
      	(gimplify_va_arg_expr): Likewise.
      	(expand_builtin_va_end): Likewise.
      	(expand_builtin_va_copy): Likewise.
      	(expand_builtin_frame_address): Likewise.
      	(expand_builtin_alloca): Likewise.
      	(expand_builtin_bswap): Likewise.
      	(expand_builtin_unop): Likewise.
      	(expand_builtin_fputs): Likewise.
      	(expand_builtin_expect): Likewise.
      	(expand_builtin_fabs): Likewise.
      	(expand_builtin_copysign): Likewise.
      	(expand_builtin_printf): Likewise.
      	(expand_builtin_fprintf): Likewise.
      	(expand_builtin_sprintf): Likewise.
      	(expand_builtin_init_trampoline): Likewise.
      	(expand_builtin_signbit): Likewise.
      	(expand_builtin_fork_or_exec): Likewise.
      	(expand_builtin_sync_operation): Likewise.
      	(expand_builtin_compare_and_swap): Likewise.
      	(expand_builtin_lock_test_and_set): Likewise.
      	(expand_builtin_lock_release): Likewise.
      	(expand_builtin): Likewise.
      	(builtin_mathfn_code): Likewise.
      
      	(fold_builtin_constant_p): Pass call arguments individually instead
      	of as an arglist, fixing callers appropriately.  Use new CALL_EXPR
      	accessors and constructors.  Return NULL_TREE instead of 0.
      	(fold_builtin_expect): Likewise.
      	(fold_builtin_classify_type): Likewise.
      	(fold_builtin_strlen): Likewise.
      	(fold_builtin_nan): Likewise.
      	(integer_valued_real_p): Likewise.
      	(fold_trunc_transparent_mathfn): Likewise.
      	(fold_fixed_mathfn): Likewise.
      	(fold_builtin_cabs): Likewise.
      	(fold_builtin_sqrt): Likewise.
      	(fold_builtin_cbrt): Likewise.
      	(fold_builtin_cos): Likewise.
      	(fold_builtin_cosh): Likewise.
      	(fold_builtin_tan): Likewise.
      	(fold_builtin_sincos): Likewise.
      	(fold_builtin_cexp): Likewise.
      	(fold_builtin_trunc): Likewise.
      	(fold_builtin_floor): Likewise.
      	(fold_builtin_ceil): Likewise.
      	(fold_builtin_round): Likewise.
      	(fold_builtin_int_roundingfn): Likewise.
      	(fold_builtin_bitop): Likewise.
      	(fold_builtin_bswap): Likewise.
      	(fold_builtin_logarithm): Likewise.
      	(fold_builtin_hypot): Likewise.
      	(fold_builtin_pow): Likewise.
      	(fold_builtin_powi): Likewise.
      	(fold_builtin_exponent): Likewise.
      	(fold_builtin_memset): Likewise.
      	(fold_builtin_bzero): Likewise.
      	(fold_builtin_memory_op): Likewise.
      	(fold_builtin_bcopy): Deleted; call site changed to invoke
      	fold_builtin_memory_op directly.
      	(fold_builtin_strcpy): Similarly as for fold_builtin_memory_op.
      	(fold_builtin_strncpy): Likewise.
      	(fold_builtin_memcmp): Likewise.
      	(fold_builtin_strcmp): Likewise.
      	(fold_builtin_strncmp): Likewise.
      	(fold_builtin_signbit): Likewise.
      	(fold_builtin_copysign): Likewise.
      	(fold_builtin_isascii): Likewise.
      	(fold_builtin_toascii): Likewise.
      	(fold_builtin_isdigit): Likewise.
      	(fold_builtin_fabs): Likewise.
      	(fold_builtin_abs): Likewise.
      	(fold_builtin_fmin_fmax): Likewise.
      	(fold_builtin_carg): Likewise.
      	(fold_builtin_classify): Likewise.
      	(fold_builtin_unordered_cmp): Likewise.
      
      	(fold_builtin_0, fold_builtin_2, fold_builtin_3, fold_builtin_4):
      	New functions split out from fold_builtin_1.
      	(fold_builtin_n): New.
      	(fold_builtin_varargs): New.
      	(fold_builtin): Deleted.  Most callers changed to use fold_call_expr
      	instead.
      	(fold_call_expr): New.
      	(build_function_call_expr): Rewrite to use new helper function.
      	(fold_builtin_call_list): New.
      	(build_call_expr): New.
      	(fold_builtin_call_valist): New.
      	(rewrite_call_expr): New.
      	(validate_arg): New.
      	(validate_arglist): Change parameter to be entire CALL_EXPR instead
      	of an arglist.  Change return type to bool.  Use new CALL_EXPR
      	accessors.
      
      	(fold_builtin_strstr):  Pass call arguments individually instead
      	of as an arglist, fixing callers appropriately.  Use new CALL_EXPR
      	accessors and constructors.  Return NULL_TREE instead of 0.
      	(fold_builtin_strchr): Likewise.
      	(fold_builtin_strrchr): Likewise.
      	(fold_builtin_strpbrk): Likewise.
      	(fold_builtin_strcat): Likewise.
      	(fold_builtin_strncat): Likewise.
      	(fold_builtin_strspn): Likewise.
      	(fold_builtin_strcspn): Likewise.
      	(fold_builtin_fputs): Likewise.
      	(fold_builtin_next_arg): Likewise.
      	(fold_builtin_sprintf): Likewise.
      
      	(expand_builtin_object_size): Use new CALL_EXPR accessors.  Use
      	NULL_RTX instead of 0.
      	(expand_builtin_memory_chk): Likewise.
      	(maybe_emit_chk_warning): Likewise.
      	(maybe_emit_sprintf_chk_warning): Likewise.
      
      	(fold_builtin_object_size): Pass call arguments individually instead
      	of as an arglist, fixing callers appropriately.  Use new CALL_EXPR
      	accessors and constructors.  Return NULL_TREE instead of 0.
      	(fold_builtin_memory_chk): Likewise.
      	(fold_builtin_stxcpy_chk): Likewise.
      	(fold_builtin_strncpy_chk): Likewise.
      	(fold_builtin_strcat_chk): Likewise.
      	(fold_builtin_strcat_chk): Likewise.
      	(fold_builtin_strncat_chk): Likewise.
      	(fold_builtin_sprintf_chk): Likewise.
      	(fold_builtin_snprintf_chk): Likewise.
      	(fold_builtin_printf): Likewise.
      	(fold_builtin_vprintf): Likewise.
      
      	* fold-const.c (negate_expr_p): Use new CALL_EXPR accessors and
      	constructors.
      	(operand_equal_p): Add separate tcc_vl_exp/CALL_EXPR case.
      	(make_range): Use TREE_OPERAND_LENGTH instead of TREE_CODE_LENGTH.
      	(extract_muldiv_1): Add VL_EXP_CLASS_P case.
      	(fold_mathfn_compare): Use new CALL_EXPR accessors and constructors.
      	(fold_unary): Likewise.
      	(fold_binary): Likewise.
      	(fold_ternary): Remove CALL_EXPR case, since they are no longer
      	ternary expressions.
      	(fold): Add logic for tcc_vl_exp.
      	(fold_checksum_tree):  Make it know about tcc_vl_exp.  Use
      	TREE_OPERAND_LENGTH instead of TREE_CODE_LENGTH.
      	(fold_build3_stat): Add assertion to flag broken interface for
      	constructing CALL_EXPRs.
      	(fold_build_call_list): New.
      	(fold_build_call_list_initializer): New.
      	(tree_expr_nonnegative_p): Use new CALL_EXPR accessors and
      	constructors.
      	(fold_strip_sign_ops): Likewise.
      
      2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* tree-dump.c (dequeue_and_dump) <CALL_EXPR>: Use new CALL_EXPR
      	accessors and dump arguments explicitly.
      
      	* tree-pretty-print.c (do_niy): Use TREE_OPERAND_LENGTH instead of
      	TREE_CODE_LENGTH.
      	(dump_generic_node): Use new CALL_EXPR accessors and walk arguments
      	explicitly.
      	(print_call_name): Use new CALL_EXPR accessors.
      
      	* print-tree.c (print_node): Add case tcc_vl_exp.  Print
      	CALL_EXPR arguments explicitly instead of as a list.  Use
      	TREE_OPERAND_LENGTH instead of TREE_CODE_LENGTH.
      
      	* tree-vrp.c (stmt_interesting_for_vrp): Use new CALL_EXPR accessors.
      	(vrp_visit_stmt): Likewise.
      
      	* tree-ssa-loop-im.c (outermost_invariant_loop_expr):  Make it
      	know about tcc_vl_exp.  Use TREE_OPERAND_LENGTH instead of
      	TREE_CODE_LENGTH.
      	(force_move_till_expr): Likewise.
      
      	* targhooks.c (default_external_stack_protect_fail): Use
      	build_call_expr instead of build_function_call_expr.
      	(default_hidden_stack_protect_fail): Likewise.
      
      	* tree-complex.c (expand_complex_libcall): Use build_call_expr to
      	build the call.
      
      	* cgraphbuild.c (build_cgraph_edges): Use new CALL_EXPR accessors
      	and walk arguments explicitly.
      
      	* tree-ssa-loop-niter.c (simplify_replace_tree): Use
      	TREE_OPERAND_LENGTH instead of TREE_CODE_LENGTH.
      	(expand_simple_operations): Likewise.
      	(infer_loop_bounds_from_array): Use new CALL_EXPR accessors.
      
      	* gengtype.c (adjust_field_tree_exp): Use TREE_OPERAND_LENGTH instead
      	of TREE_CODE_LENGTH.
      	(walk_type): Tweak walking of arrays not to blow up on CALL_EXPRs.
      
      	* optabs.c (expand_widen_pattern-expr): Use TREE_OPERAND_LENGTH
      	instead of TREE_CODE_LENGTH.
      
      	* value_prof.c (tree_ic): Use new CALL_EXPR accessors.
      	(tree_ic_transform): Likewise.
      	(interesting_stringop_to_profile_p): Pass entire CALL_EXPR as
      	parameter instead of arglist.  Fix callers.
      	(tree_stringop_fixed_value): Use new CALL_EXPR accessors.
      	(tree_stringops_transform): Likewise.
      	(tree_indirect_call_to_profile): Likewise.
      	(tree_stringops_values_to_profile): Likewise.
      
      	* tree-tailcall.c (find_tail_calls): Use new CALL_EXPR iterator.
      	(eliminate_tail_call): Likewise.
      
      	* ipa-cp.c (ipcp_update_callgraph): Use new CALL_EXPR accessors.
      
      	* tree-scalar-evolution.c (chrec_contains_symbols_defined_in_loop):
      	Use TREE_OPERAND_LENGTH and generalize to handle any number of
      	operands.
      	(instantiate_parameters_1): Can't handle tcc_vl_exp here.
      
      	* omp-low.c (build_omp_barrier): Use build_call_expr.
      	(lower_rec_input_clauses): Likewise.
      	(lower_reduction_clauses): Likewise.
      	(expand_parallel_call): Likewise.
      	(maybe_catch_exception): Likewise.
      	(expand_omp_for_generic): Likewise.
      	(expand_omp_for_static_nochunk): Likewise.
      	(expand_omp_sections): Likewise.
      	(lower_omp_single_simple): Likewise.
      	(lower_omp_single_copy): Likewise.
      	(lower_omp_master): Likewise.
      	(lower_omp_ordered): Likewise.
      	(lower_omp_critical): Likewise.
      
      	* ipa-reference.c (check-call): Use new CALL_EXPR iterator.
      	(scan_for_static_refs): Create tcc_vl_exp case for CALL_EXPR.
      
      	* tree-gimple.c (is_gimple_call_addr): Fix doc.
      	(recalculate_side_effects): Use TREE_OPERAND_LENGTH instead of
      	TREE_CODE_LENGTH.  Add tcc_vl_exp case.
      
      	* tree-chrec.c (chrec_contains_symbols): Use TREE_OPERAND_LENGTH
      	and generalize to handle any number of operands.
      	(chrec_contains_undetermined): Likewise.
      	(tree_contains_chrecs): Likewise.
      	(evolution_function_is_invariant_rec_p): Use TREE_OPERAND_LENGTH.
      
      	* cgraphunit.c (update_call_expr): Use new CALL_EXPR accessors.
      
      	* tree-ssa-ccp.c (ccp_fold): Use new CALL_EXPR accessors.  Use
      	fold_call_expr instead of fold_builtin.
      	(ccp_fold_builtin): Likewise.  Update calls into builtins.c to
      	match declarations there.
      	(fold_stmt): Use new CALL_EXPR constructor and accessors.  Doc
      	updates.
      
      	* tree-ssa-loop-ivopts.c (expr_invariant_in_loop_p): Use
      	TREE_OPERAND_LENGTH instead of TREE_CODE_LENGTH.
      
      	* ipa-pure-const.c (check_call): Use new CALL_EXPR accessors.
      	(scan_function): Add case tcc_vl_exp for CALL_EXPR.
      
      	* tree-stdarg.c (execute_optimize_stdarg): Use new CALL_EXPR
      	accessors.
      
      	* tree-ssa-math-opts.c (execute_cse_sincos_1): Use build_call_expr.
      	(execute_cse_sincos): Use new CALL_EXPR accessors.
      
      	* tree-ssa-alias.c (find_used_portions): Use new CALL_EXPR iterator.
      
      	* gimple-low.c (lower_function_body): Use build_call_expr.
      	(lower_builtin_setjmp): Likewise.
      
      	* expr.c (emit_block_move_via_libcall): Use build_call_expr.
      	(set_storage_via_libcall): Likewise.
      	(safe_from_p): Add tcc_vl_exp case.  Use TREE_OPERAND_LENGTH
      	instead of TREE_CODE_LENGTH.
      	(expand_expr_real_1): Use new CALL_EXPR accessors.
      
      	* tree-browser.c (store_child_info): Use TREE_OPERAND_LENGTH and
      	generalize to handle any number of operands.
      	(TB_parent_eq): Likewise.
      
      	* predict.c (expr_expected_value): Use new CALL_EXPR accessors.
      	(strip_builtin_expect): Likewise.
      
      	* function.c (gimplify_parameters): Use build_call_expr.
      
      	* tree-vectorizer.c (vect_is_simple_reduction): Use TREE_OPERAND_LENGTH
      	instead of TREE_CODE_LENGTH.
      
      	* ipa-type-escape.c (check_call): Use new CALL_EXPR iterators.
      	(scan_for_refs): Add case tcc_vl_exp for CALL_EXPR.
      
      	* tree-data-ref.c (get_references_in_stmt): Use new CALL_EXPR
      	iterators.
      
      	* gimplify.c (build_stack_save_restore): Use build_call_expr.
      	(gimplify_decl_expr): Likewise.
      	(gimplify_call_expr): Use fold_call_expr instead of fold_builtin.
      	Use new CALL_EXPR iterators.
      	(gimplify_modify_expr_to_memcpy): Use build_call_expr.
      	(gimplify_modify_expr_to_memset): Likewise.
      	(gimplify_variable_sized_compare): Likewise.
      	(gimplify_omp_atomic_fetch_op): Likewise.
      	(gimplify_omp_atomic_pipeline): Likewise.
      	(gimplify_omp_atomic_mutex): Likewise.
      	(gimplify_function_tree): Likewise.
      
      	* calls.c (alloca_call_p): Use new CALL_EXPR accessors.
      	(call_expr_flags): Likewise.
      	(expand_call): Likewise.
      
      	* except.c (expand_builtin_eh_return_data_regno): Pass entire
      	CALL_EXPR as parameter instead of arglist.  Use new CALL_EXPR 
              accessors.
      
      	* coverage.c (create_coverage): Use build_call_expr.
      
      	* tree-ssa-pre.c (expression_node_pool, list_node_pool): Delete.
      	(temp_call_expr_obstack): New.
      	(pool_copy_list): Delete.
      	(temp_copy_call_expr): New.
      	(phi_translate): Add case tcc_vl_exp for CALL_EXPR.  Use new
      	CALL_EXPR accessors.  Get rid of special goo for copying argument
      	lists and use temp_copy_call_expr instead.
      	(valid_in_sets): Add case tcc_vl_exp for CALL_EXPR.  Use new
      	CALL_EXPR accessors.
      	(create_expression_by_pieces): Likewise.  Use build_call_array
      	to construct the result instead of fold_build3.
      	(create_value_expr_from): Add tcc_vl_exp.  Delete special goo for
      	dealing with argument lists.
      	(init_pre): Remove references to expression_node_pool and
      	list_node_pool.  Init temp_call_expr_obstack instead.
      	(fini_pre): Remove references to expression_node_pool and
      	list_node_pool.
      
      	* tree-sra.c (sra_walk_call_expr): Use new CALL_EXPR accessors
      	and walk arguments explicitly instead of as a list.
      
      	* tree-mudflap.c (mf_build_check_statement_for): Use build_call_expr.
      	(mx_register_decls): Likewise.
      	(mudflap_register_call): Likewise.
      	(mudflap_finish_file): Likewise.
      
      	* ipa-prop.c (ipa_callsite_compute_count): Use new CALL_EXPR accessors.
      	(ipa_callsite_compute_param): Likewise.
      
      	* tree-vect-patterns.c (vect_recog_pow_pattern): Use new CALL_EXPR
      	accessors and constructor.
      
      	* tree-nested.c (convert_nl_goto_reference): Use new CALL_EXPR
      	accessors and constructor.
      	(convert_tramp_reference): Likewise. 
      	(convert_call_expr): Likewise.
      	(finalize_nesting_tree_1): Likewise.
      
      	* tree-ssa.c (tree_ssa_useless_type_conversion): Use new CALL_EXPR
      	accessors.
      
      	* tree-ssa-loop-prefetch.c (issue_prefetch_ref): Use build_call_expr.
      
      	* tree-inline.c (initialize_inlined_parameters): Pass entire
      	CALL_EXPR as parameter instead of arglist.  Use new CALL_EXPR
      	accessors.
      	(estimate_num_insns_1): Use new CALL_EXPR accessors.
      	(expand_call_inline): Tidy up call to initialize_inlined_parameters.
      
      	* tree-vect-transform.c (vect_create_epilog_for_reduction):  Use
      	TREE_OPERAND_LENGTH instead of TREE_CODE_LENGTH.
      	(vectorizable_reduction): Likewise.
      	(vectorizable_call): Use new CALL_EXPR iterators.
      	(vectorizable_conversion): Use build_call_expr.
      	(vectorizable_operation): Use TREE_OPERAND_LENGTH.
      	(vect_gen_widened_results_half): Use build_call_expr.
      	(vect_setup_realignment): Likewise.
      	(vectorizable_live_operation): Use TREE_OPERAND_LENGTH.
      
      	* tree-object-size.c (alloc_object_size): Use new CALL_EXPR accessors.
      	(pass_through_call): Likewise.
      	(compute_object_sizes): Likewise.  Use fold_call_expr instead of
      	fold_builtin.
      
      	* tree-profile.c (tree_gen_interval_profiler): Use build_call_expr.
      	(tree_gen_pow2_profiler): Likewise.
      	(tree_gen_one_value_profiler): Likewise.
      	(tree_gen_ic_func_profiler): Likewise.
      	(tree_gen_average_profiler): Likewise.
      	(tree_gen_ior_profiler): Likewise.
      
      	* tree-ssa-structalias.c (get_constraint_for): Add case tcc_vl_exp.
      	(find_func_aliases): Use new CALL_EXPR accessors.  Add case
      	tcc_vl_exp.  Use TREE_OPERAND_LENGTH instead of TREE_CODE_LENGTH.
      
      	* tree-ssa-reassoc.c (get_rank): Use TREE_OPERAND_LENGTH instead
      	of TREE_CODE_LENGTH.
      
      	* stmt.c (warn_if_unused_value): Use TREE_OPERAND_LENGTH instead
      	of TREE_CODE_LENGTH.
      
      	* convert.c (convert_to_real): Use new CALL_EXPR accessors and
      	constructor.
      	(convert_to_integer): Likewise.
      
      	* tree-ssa-operands.c (get_call_expr_operands): Use new CALL_EXPR
      	accessors.
      
      2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* config/alpha/alpha.c (alpha_expand_builtin): Use new CALL_EXPR
      	accessors.
      	* config/frv/frv.c (frv_expand_builtin): Likewise.
      	* config/s390/s390.c (s390_expand_builtin): Likewise.
      
      	* config/sparc/sparc.c (sparc_gimplify_va_arg): Use build_call_expr.
      	(sparc_expand_builtin): Use new CALL_EXPR accessors.
      
      	* config/i386/i386.c (ix86_function_ok_for_sibcall): Likewise.
      	(ix86_expand_binop_builtin): Pass entire CALL_EXPR as parameter
      	instead of arglist.  Use new CALL_EXPR accessors on it.  Fix callers.
      	(ix86_expand_store_builtin): Likewise.
      	(ix86_expand_unop_builtin): Likewise.
      	(ix86_expand_unop1_builtin): Likewise.
      	(ix86_expand_sse_compare): Likewise.
      	(ix86_expand_sse_comi): Likewise.
      	(ix86_expand_vec_init_builtin): Likewise.
      	(ix86_expand_vec_ext_builtin): Likewise.
      	(ix86_expand_vec_set_builtin): Likewise.
      	(ix86_expand_builtin): Use new CALL_EXPR accessors.
      
      	* config/sh/sh.c (sh_expand_builtin): Use new CALL_EXPR accessors.
      	* config/c4x/c4x.c (c4x_expand_builtin): Likewise.
      
      	* config/iq2000/iq2000.c (expand_one_builtin): Pass entire CALL_EXPR
      	instead of arglist.  Use new CALL_EXPR accessors.  Fix callers.
      	(iq2000_expand_builtin): Use new CALL_EXPR accessors.
      
      	* config/rs6000/rs6000-c.c (altivec_build_resolved_builtin): Use
      	build_call_expr.
      	* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Likewise.
      	(rs6000_expand_unop_builtin): Pass entire CALL_EXPR instead of
      	arglist.  Use new CALL_EXPR accessors.  Fix callers.
      	(altivec_expand_abs_builtin): Likewise.
      	(rs6000_expand_binop_builtin): Likewise.
      	(altivec_expand_predicate_builtin): Likewise.
      	(altivec_expand_lv_builtin): Likewise.
      	(spe_expand_stv_builtin): Likewise.
      	(altivec_expand_stv_builtin): Likewise.
      	(rs6000_expand_ternop_builtin): Likewise.
      	(altivec_expand_ld_builtin): Use new CALL_EXPR accessors.
      	(altivec_expand_st_builtin): Likewise.
      	(altivec_expand_dst_builtin): Likewise.
      	(altivec_expand_vec_init_builtin): Pass entire CALL_EXPR instead of
      	arglist.  Use new CALL_EXPR accessors.  Fix callers.
      	(altivec_expand_vec_set_builtin): Likewise.
      	(altivec_expand_vec_ext_builtin): Likewise.
      	(altivec_expand_builtin): Use new CALL_EXPR accessors.
      	(spe_expand_builtin): Likewise.
      	(spe_expand_predicate_builtin): Pass entire CALL_EXPR instead of
      	arglist.  Use new CALL_EXPR accessors.  Fix callers.
      	(spe_expand_evsel_builtin): Likewise.
      	(rs6000_expand_builtin): Use new CALL_EXPR accessors.  VCFUX and
      	FCFSX cases must construct whole new CALL_EXPR, not just arglist.
      
      	* config/arm/arm.c (arm_expand_binop_builtin): Pass entire CALL_EXPR
      	instead of arglist.  Use new CALL_EXPR accessors.  Fix callers.
      	(arm_expand_unop_builtin): Likewise.
      	(arm_expand_builtin): Use new CALL_EXPR accessors.
      
      	* config/mips/mips.c (mips_expand_builtin):  Use new CALL_EXPR
      	accessors.
      
      	* config/bfin/bfin.c (bfin_expand_binop_builtin): Pass entire CALL_EXPR
      	instead of arglist.  Use new CALL_EXPR accessors.  Fix callers.
      	(bfin_expand_unop_builtin): Likewise.
      	(bfin_expand_builtin): Use new CALL_EXPR accessors.
      
      2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* c-semantics.c (build_stmt): Add internal diagnostic check.
      
      	* c-pretty-print.c (pp_c_postfix_expression): Use new CALL_EXPR
      	accessors.  Print arguments explicitly instead of as a list.
      
      	* c-typeck.c (build_function_call): Use new CALL_EXPR constructors.
      
      	* c-omp.c (c_finish_omp_barrier): Use build_call_expr.
      	(c_finish_omp_flish): Likewise.
      
      	* c-common.c (verify_tree): Use new CALL_EXPR accessors.  Traverse
      	arguments explicitly instead of as a list.  Use TREE_OPERAND_LENGTH
      	instead of TREE_CODE_LENGTH.
      	(check_function_arguments_recurse): Use new CALL_EXPR accessors.
      	(c_warn_unused_result): Likewise.
      
      2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* cp-tree.def (AGGR_INIT_EXPR): Adjust documentation.
      	Change class to tcc_vl_exp.
      
      	* call.c (build_call): Use build_call_list instead 
      	of build3. 
      	(build_over_call): Likewise.
      	(build_new_method_call): Use build_min_non_dep_call_list 
      	instead of build_min_non_dep.
      
      	* error.c (dump_call_expr_args): New function.
      	(dump_aggr_init_expr_args): New function.
      	(dump_expr) <AGGR_INIT_EXPR, CALL_EXPR, INDIRECT_REF>: Use them. 
      	Update to use new CALL_EXPR and AGGR_INIT_EXPR accessor macros.
      
      	* cvt.c (convert_to_void): Use build_call_array instead
      	of build3; use new AGGR_INIT_EXPR accessor macros.
      
      	* mangle.c (write_expression): Use TREE_OPERAND_LENGTH
      	instead of TREE_CODE_LENGTH.
      
      	* dump.c (cp_dump_tree) <AGGR_INIT_EXPR>: Update to use new
      	AGGR_INIT_EXPR accessor macros.
      
      	* cp-gimplify.c (cp_gimplify_init_expr): Use 
      	AGGR_INIT_EXPR_SLOT to set the slot operand.
      
      	* cp-tree.h (AGGR_INIT_EXPR_FN): New macro.
      	(AGGR_INIT_EXPR_SLOT): New macro.
      	(AGGR_INIT_EXPR_ARG): New macro.
      	(aggr_init_expr_nargs): New macro.
      	(AGGR_INIT_EXPR_ARGP): New macro.
      	(aggr_init_expr_arg_iterator): New.
      	(init_aggr_init_expr_arg_iterator): New.
      	(next_aggr_init_expr_arg): New.
      	(first_aggr_init_expr_arg): New.
      	(more_aggr_init_expr_args_p): New.
      	(FOR_EACH_AGGR_INIT_EXPR_ARG): New.
      	(stabilize_aggr_init): New declaration.
      	(build_min_non_dep_call_list): Likewise.
      
      	* tree.c (process_aggr_init_operands): New function.
      	(build_aggr_init_array) New function.
      	(build_cplus_new): Update to use new CALL_EXPR and
      	AGGR_INIT_EXPR accessor macros. Replace use of build3 with
      	build_aggr_init_array.
      	(build_min_non_dep_call_list) New function.
      	(build_min_nt): Assert input code parameter is not a variable
      	length expression class.
      	(build_min, build_min_non_dep): Likewise.
      	(cp_tree_equal) <CALL_EXPR>: Iterate through the arguments
      	to check for equality instead of recursing. Handle tcc_vl_exp
      	tree code classes.
      	(stabilize_call): Update to only handle CALL_EXPRs, not 
      	AGGR_INIT_EXPRs; use new CALL_EXPR accessor macros.
      	(stabilize_aggr_init): New function.
      	(stabilize_init): Use it.
      
      	* cxx-pretty-print.c (pp_cxx_postfix_expression)
      	<AGGR_INIT_EXPR, CALL_EXPR>: Update to use new CALL_EXPR and
      	AGGR_INIT_EXPR accessor macros and argument iterators.
      	
      	* pt.c (tsubst_copy) <CALL_EXPR>: Replace build_nt with
      	build_vl_exp. Iterate through the operands, recursively 
      	processing each one.
      	(tsubst_copy_and_build) <CALL_EXPR>: Update to use new
      	CALL_EXPR accessor macros.
      	(value_dependent_expression_p) <default>: Handle tcc_vl_exp
      	tree code classes. Use TREE_OPERAND_LENGTH instead of 
      	TREE_CODE_LENGTH.
      
      	* semantics.c (finish_call_expr): Use build_nt_call_list
      	instead of build_nt.
      	(simplify_aggr_init_expr): Update to use new AGGR_INIT_EXPR 
      	accessor macros. Use build_call_array to construct the 
      	CALL_EXPR node instead of build3
      	
      	* decl2.c (build_offset_ref_call_from_tree): Use 
      	build_nt_call_list and build_min_non_dep_call_list instead
      	of build_min_nt and build_min_non_dep.
      
      	* parser.c (cp_parser_postfix_expression) <CPP_OPEN_PAREN>:
      	Use build_nt_call_list instead of build_min_nt.
      
      2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* java-tree.h (BUILD_MONITOR_ENTER): Use build_call_nary instead
      	of build3.
      	(BUILD_MONITOR_EXIT): Likewise.
      
      	* java-gimplify.c (java_gimplify_component_ref): Use build_call_expr.
      	(java_gimplify_modify_expr): Likewise.
      
      	* class.c (cache_this_class_ref): Use build_call_expr.
      	(build_static_field_ref): Likewise.
      	(emit_indirect_register_classes): Likewise.
      	(emit_register_classes): Likewise.
      
      	* resource.c (write_resource_constructor): Use build_call_expr.
      
      	* builtins.c (builtin_creator_function): Change interpretation of
      	the second parameter to be the whole CALL_EXPR instead of the arglist.
      	(max_builtin): Tweak parameter list.  Use new CALL_EXPR accessors.
      	(min_builtin): Likewise.
      	(abs_builtin): Likewise.
      	(java_build_function_call_expr): Likewise.
      	(convert_real): Likewise.
      	(UNMARSHAL3): Likewise.
      	(UNMARSHAL4): Likewise.
      	(UNMARSHAL5): Likewise.
      	(build_arglist_for_builtin): Delete.  Fix callers to use
      	build_call_expr instead.
      	(putObject_builtin): Tweak parameter list.  Use new CALL_EXPR
      	accessors.
      	(compareAndSwapInt_builtin): Likewise.
      	(compareAndSwapLong_builtin): Likewise.
      	(compareAndSwapObject_builtin): Likewise.
      	(putVolatile_builtin): Likewise.
      	(getVolatile_builtin): Likewise.
      	(VMSupportsCS8_builtin): Likewise.
      	(check_for_builtin): Pass entire CALL_EXPR to builtin expander
      	instead of arglist.
      
      	* expr.c (build_java_athrow): Use build_call_nary instead of build3.
      	(build_java_throw_out_of_bounds_exception): Likewise.
      	(java_check_reference): Likewise.
      	(build_java_arraystore_check): Likewise.
      	(build_newarray): Likewise.
      	(build_anewarray): Likewise.
      	(expand_java_multinewarray): Use build_call_list instead of build3.
      	(build_java_monitor): Use build_call_nary instead of build3.
      	(java_create_object): Likewise.
      	(expand_java_NEW): Likewise.
      	(build_instanceof): Likewise.
      	(expand_java_CHECKCAST): Likewise.
      	(build_java_soft_divmod): Likewise.
      	(build_java_binop): Likewise.
      	(build_field_ref): Likewise.
      	(build_class_init): Likewise.
      	(rewrite_arglist_getcaller): Use build_call_expr.
      	(build_invokeinterface):  Use build_call_nary instead of build3.
      	(expand_invoke): Use build_call_list instead of build3.
      	(build_jni_stub): Use build_call_nary, build_call_list, or
      	build_call_expr instead	of build3.
      	(expand_java_field_op): Use build_call_expr instead of build3.
      	(force_evaluation_order): Use new CALL_EXPR accessors.
      
      	* lang.c (java_get_callee_fndecl): Use new CALL_EXPR accessors.
      
      2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* objc-act.c (receiver_is_class_object): Use new CALL_EXPR accessors.
      	(objc_get_callee_fndecl): Likewise.
      
      2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
      	    Brooks Moses  <brooks.moses@codesourcery.com>
      	    Lee Millward  <lee.millward@codesourcery.com>
      
      	* trans-expr.c (gfc_conv_power_op): Use build_call_expr.
      	(gfc_conv_string_tmp): Likewise.
      	(gfc_conv_concat_op): Likewise.
      	(gfc_build_compare_string): Likewise.
      	(gfc_conv_function_call): Use build_call_list instead of build3.
      
      	* trans-array.c (gfc_trans_allocate_array_storage): Use
      	build_call_expr.
      	(gfc_grow_array): Likewise.
      	(gfc_trans_array_ctor_element): Likewise.
      	(gfc_trans_array_constructor_value): Likewise.
      	(gfc_array_allocate): Likewise.
      	(gfc_array_deallocate): Likewise.
      	(gfc_trans_auto_array_allocation): Likewise.
      	(gfc_trans_dummy_array_bias): Likewise.
      	(gfc_conv_array_parameter): Likewise.
      	(gfc_trans_dealloc_allocated): Likewise.
      	(gfc_duplicate_allocatable): Likewise.
      
      	* trans-openmp.c (gfc_trans_omp_barrier): Use build_call_expr.
      	(gfc_trans_omp_flush): Likewise.
      
      	* trans-stmt.c (gfc_conv_elementel_dependencies): Use build_call_expr.
      	(gfc_trans_pause): Likewise.
      	(gfc_trans_stop): Likewise.
      	(gfc_trans_character_select): Likewise.
      	(gfc_do_allocate): Likewise.
      	(gfc_trans_assign_need_temp): Likewise.
      	(gfc_trans_pointer_assign_need_temp): Likewise.
      	(gfc_trans_forall_1): Likewise.
      	(gfc_trans_where_2): Likewise.
      	(gfc_trans_allocate): Likewise.
      	(gfc_trans_deallocate): Likewise.
      
      	* trans.c (gfc_trans_runtime_check): Use build_call_expr.
      
      	* trans-io.c (gfc_trans_open): Use build_call_expr.
      	(gfc_trans_close): Likewise.
      	(build_filepos): Likewise.
      	(gfc_trans_inquire): Likewise.
      	(NML_FIRST_ARG): Delete.
      	(NML_ADD_ARG): Delete.
      	(transfer_namelist_element): Use build_call_expr.
      	(build_dt): Likewise.
      	(gfc_trans_dt_end): Likewise.
      	(transfer_expr): Likewise.
      	(transfer_array-desc): Likewise.
      
      	* trans-decl.c (gfc_generate_function_code): Use build_call_expr.
      	(gfc_generate_constructors): Likewise.
      
      	* trans-intrinsic.c (gfc_conv_intrinsic_ctime): Use build_call_expr.
      	(gfc_conv_intrinsic_fdate): Likewise.
      	(gfc_conv_intrinsic_ttynam): Likewise.
      	(gfc_conv_intrinsic_array_transfer): Likewise.
      	(gfc_conv_associated): Likewise.
      	(gfc_conv_intrinsic_si_kind): Likewise.
      	(gfc_conv_intrinsic_trim): Likewise.
      	(gfc_conv_intrinsic_repeat: Likewise.
      	(gfc_conv_intrinsic_iargc): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@122018 138bc75d-0d04-0410-961f-82ee72b054a4
      c2f47e15
  36. 05 Dec, 2006 1 commit
  37. 23 Oct, 2006 1 commit
    • espindola's avatar
      * gcc/java/decl.c: Include langhooks.h. · 54be5d7e
      espindola authored
             (builtin_function): Remove.
             (java_init_decl_processing): Replace calls to builtin_function
             with add_builtin_function.
      
             * gcc/java/Make-lang.in (jc1$(exeext)): Depend on and link with
             attribs.o.
             (java/decl.o): Depend on langhooks.h.
      
             * gcc/java/java-tree.h (builtin_function): Remove.
      
             * gcc/tree.c (local_define_builtin): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/objc/objc-act.c (synth_module_prologue): Replace calls to
             builtin_function with add_builtin_function.
             (build_next_objc_exception_stuff): Replace calls to
             builtin_function with add_builtin_function.
             (build_objc_exception_stuff): Replace calls to
             builtin_function with add_builtin_function.
      
             * gcc/objcp/objcp-decl.h (objcp_builtin_function): Remove.
      
             * gcc/cp/decl.c (builtin_function_1): Move common code to
             add_builtin_function.
             (builtin_function): Rename to cxx_builtin_function.
             Change the signature.
      
             * gcc/cp/call.c: Include langhooks.h.
             (build_java_interface_fn_ref):  Replace calls to
             builtin_function with add_builtin_function.
      
             * gcc/cp/Make-lang.in (cp/call.o): Depend on langhooks.h.
      
             * gcc/cp/cp-objcp-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as
             cxx_builtin_function.
      
             * gcc/cp/cp-tree.h (builtin_function): Rename to cxx_builtin_function.
             Change the signature.
      
             * gcc/c-objc-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as
             c_builtin_function.
      
             * gcc/c-tree.h (builtin_function): Rename to c_builtin_function. Change
             the signature.
      
             * gcc/ada/utils.c (builtin_function): Rename to gnat_builtin_function.
             Move common code to add_builtin_function.
      
             * gcc/ada/misc.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as
             gnat_builtin_function.
      
             * gcc/ada/gigi.h (builtin_function): Rename to gnat_builtin_function.
             Change the signature.
      
             * gcc/c-decl.c (builtin_function): Rename to c_builtin_function. Move
             common code to add_builtin_function.
      
             * gcc/fortran/Make-lang.in (f951$(exeext)): Depend on and link with
             attribs.o.
      
             * gcc/fortran/trans.h (builtin_function): Rename to
             gfc_builtin_function. Change the signature.
      
             * gcc/fortran/f95-lang.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as
             gfc_builtin_function.
             (builtin_function): Rename to gfc_builtin_function. Move common
             code to builtin_function.
             (gfc_define_builtin): Replace calls to builtin_function with
             gfc_define_builtin.
      
             * gcc/langhooks.c (add_builtin_function): New function.
             (lhd_builtin_function): New function.
      
             * gcc/langhooks.h (struct lang_hooks): Change the signature of
             builtin_function.
             (add_builtin_function): New function.
      
             * gcc/treelang/treetree.c (builtin_function): Remove.
      
             * gcc/tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Replace
             calls to lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/c-common.c (decl_builtin_1): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/alpha/alpha.c (alpha_init_builtins): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/frv/frv.c (def_builtin): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/s390/s390.c (s390_init_builtins): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/sparc/sparc.c (def_builtin): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/i386/i386.c (def_builtin): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
             (def_builtin): Replace calls to lang_hooks.builtin_function with
             add_builtin_function.
      
             * gcc/config/sh/sh.c (sh_media_init_builtins): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/c4x/c4x.c (c4x_init_builtins): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/stormy16/stormy16.c (xstormy16_init_builtins):
             Replace calls to lang_hooks.builtin_function with
             add_builtin_function.
      
             * gcc/config/iq2000/iq2000.c (def_builtin):
             Replace calls to lang_hooks.builtin_function with
             add_builtin_function.
      
             * gcc/config/ia64/ia64.c (def_builtin): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/rs6000/rs6000.c (def_builtin): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
             (altivec_init_builtins): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/arm/arm.c (def_mbuiltin): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
             (arm_init_tls_builtins): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/mips/mips.c (mips_init_builtins): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/config/bfin/bfin.c (def_builtin): Replace calls to
             lang_hooks.builtin_function with add_builtin_function.
      
             * gcc/langhooks-def.h (lhd_builtin_function): New function.
             (LANG_HOOKS_BUILTIN_FUNCTION): Define as lhd_builtin_function.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117981 138bc75d-0d04-0410-961f-82ee72b054a4
      54be5d7e
  38. 07 Dec, 2005 1 commit
    • rsandifo's avatar
      * config/alpha/alpha.c (alpha_start_function): Use switch_to_section. · 2f14b1f9
      rsandifo authored
      	(alpha_elf_select_rtx_section): Return the selected section rather
      	than emitting assembly code.
      	(alpha_write_linkage): Emit a ".link" directive directly and then
      	set in_section to NULL.
      	(vms_asm_out_constructor): Use switch_to_section.
      	(vms_asm_out_destructor): Likewise.
      	(unicosmk_output_common): Set in_section to NULL instead of calling
      	the dummy common_section function.
      	(unicosmk_text_section): Delete in favor of...
      	(unicosmk_output_text_section_asm_op): ...this new function.
      	(unicosmk_data_section): Delete in favor of...
      	(unicosmk_output_data_section_asm_op): ...this new function.
      	(unicosmk_init_sections): New function.
      	(unicosmk_output_deferred_case_vectors): Use switch_to_section.
      	(unicosmk_output_ssib): Set in_section to NULL instead of calling
      	the dummy ssib_section function.
      	(unicosmk_section_buf): Delete.
      	* config/alpha/alpha-protos.h (unicosmk_text_section): Delete.
      	(unicosmk_data_section): Delete.
      	* config/alpha/elf.h (ASM_OUTPUT_ALIGNED_LOCAL): Use switch_to_section.
      	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, sbss_section, sdata_section)
      	(SECTION_FUNCTION_TEMPLATE): Delete.
      	* config/alpha/unicosmk.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP)
      	(READONLY_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
      	(common_section, COMMON_SECTION, ssib_section, SSIB_SECTION): Delete.
      	(ASM_OUTPUT_ALIGNED_LOCAL): Use switch_to_section.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	* config/alpha/vms.h (LINK_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP)
      	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
      	(link_section, literals_section): Delete.
      	(ASM_OUTPUT_DEF): Emit the ".literal" directive directly and then
      	set in_section to NULL.
      
      	* config/arm/aof.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Delete.
      	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, ZERO_INIT_SECTION): Delete.
      	(COMMON_SECTION): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	(ASM_OUTPUT_COMMON): Set in_section to NULL rather than calling
      	the dummy common_section function.
      	* config/arm/aout.h (ASM_OUTPUT_ALIGNED_LOCAL): Use switch_to_section.
      	* config/arm/arm.c (get_jump_table_size): Use pointer comparison
      	between readonly_data_section and text_section to check whether
      	read-only data is being put in the text section.
      	(arm_output_function_epilogue): Use switch_to_section.
      	(arm_elf_asm_constructor): Likewise.
      	(thumb_call_via_reg): Replace call to in_text_section with
      	a comparison between in_section and text_section.
      	(arm_file_end): Use switch_to_section.
      	(aof_text_section): Delete in favor of...
      	(aof_output_text_section_asm_op): ...this new function.
      	(aof_data_section): Delete in favor of...
      	(aof_output_data_section_asm_op): ...this new function.
      	(aof_asm_init_sections): New function.
      	(zero_init_section): Moved from config/arm/aof.h.
      	(aof_dump_imports, aof_file_start): Use switch_to_section.
      	* config/arm/arm.h (thumb_call_via_label): Update comment.
      	* config/arm/arm-protos.h (aof_text_section, aof_data_section): Delete.
      	(common_section): Delete.
      	* config/arm/pe.h (ASM_DECLARE_FUNCTION_NAME): Use switch_to_section.
      	(ASM_DECLARE_OBJECT_NAME): Update the type of save_section.  Use the
      	global switch_to_section function instead of the old port-local one.
      	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, DRECTVE_SECTION_FUNCTION)
      	(SWITCH_TO_SECTION_FUNCTION): Delete.
      	(drectve_section): Redefine as a macro.
      	* config/arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS):
      	(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Use get_named_section and
      	switch_to_section.
      
      	* config/avr/avr.c (progmem_section): New variable.
      	(avr_output_progmem_section_asm_op): New function.
      	(avr_asm_init_sections): New function.
      	(avr_output_addr_vec_elt): Use switch_to_section.
      	* config/avr/avr.h (progmem_section): Declare.
      	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
      	(READONLY_DATA_SECTION): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	(ASM_OUTPUT_CASE_LABEL): Use switch_to_section.
      	* config/avr/avr-protos.h (progmem_section): Delete.
      
      	* config/bfin/bfin.h (ASM_OUTPUT_LOCAL): Use switch_to_section.
      
      	* config/c4x/c4x.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
      	(INIT_SECTION_FUNCTION, FINI_SECTION_FUNCTION): Delete.
      
      	* config/darwin-sections.def: New file.
      	* config/darwin.c: Define all sections in darwin-sections.def.
      	(output_objc_section_asm_op, darwin_init_sections): New functions.
      	(machopic_output_indirection): Use switch_to_section.
      	(machopic_select_section): Return the selected section rather than
      	emitting assembly code.  Replace the static function table with
      	inline conditional expressions.  Update the tests of last_text_section
      	and move them into the FUNCTION_DECL block.
      	(machopic_select_rtx_section): Return the selected section rather than
      	emitting assembly code.
      	(machopic_asm_out_constructor, machopic_asm_out_destructor)
      	(darwin_file_end): Use switch_to_section.
      	* config/darwin.h: Use darwin-sections.def to declare sections.
      	(INIT_SECTION_ASM_OP): Remove empty definition.
      	(HAS_INIT_SECTION): Define this instead.
      	(SECTION_FUNCTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
      	(READONLY_DATA_SECTION, TARGET_ASM_EXCEPTION_SECTION): Delete.
      	(TARGET_ASM_EH_FRAME_SECTION): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	* config/darwin-protos.h (darwin_init_sections): Declare.
      	(machopic_picsymbol_stub_section, machopic_picsymbol_stub1_section)
      	(machopic_symbol_stub_section, machopic_symbol_stub1_section): Delete.
      	(machopic_lazy_symbol_ptr_section, machopic_nl_symbol_ptr_section)
      	(constructor_section, destructor_section, mod_init_section): Delete.
      	(mod_term_section): Delete.
      	(darwin_exception_section, darwin_eh_frame_section): Delete.
      	(machopic_select_section): Return a section.
      	(machopic_select_rtx_section): Likewise.
      	(text_coal_section, text_unlikely_section, text_unlikely_coal_section)
      	(const_section, const_coal_section, const_data_section): Delete.
      	(const_data_coal_section, data_coal_section, cstring_section): Delete.
      	(literal4_section, literal8_section, constructor_section): Delete.
      	(mod_init_section, mod_term_section, destructor_section): Delete.
      	(objc_class_section, objc_meta_class_section, objc_category_section)
      	(objc_class_vars_section, objc_instance_vars_section): Delete.
      	(objc_cls_meth_section, objc_inst_meth_section): Delete.
      	(objc_cat_cls_meth_section, objc_cat_inst_meth_section): Delete.
      	(objc_selector_refs_section, objc_selector_fixup_section): Delete.
      	(objc_symbols_section, objc_module_info_section): Delete.
      	(objc_image_info_section, objc_protocol_section): Delete.
      	(objc_string_object_section, objc_constant_string_object_section)
      	(objc_class_names_section, objc_meth_var_names_section): Delete.
      	(objc_meth_var_types_section, objc_cls_refs_section): Delete.
      	(machopic_lazy_symbol_ptr_section, machopic_nl_symbol_ptr_section)
      	(machopic_symbol_stub_section, machopic_picsymbol_stub_section)
      	(darwin_exception_section, darwin_eh_frame_section): Delete.
      	* config/t-darwin (darwin.o): Depend on config/darwin-sections.def.
      
      	* config/frv/frv.c (frv_asm_out_constructor): Use switch_to_section.
      	(frv_asm_out_destructor): Likewise.
      	* config/frv/frv.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
      	(SDATA_SECTION_FUNCTION, FIXUP_SECTION_FUNCTION): Delete.
      	(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Use switch_to_section and
      	get_named_section.
      	(ASM_OUTPUT_CASE_LABEL): Use switch_to_section.
      	* config/frv/frv-protos.h (fixup_section, sdata_section, sbss_section)
      	(data_section): Delete.
      
      	* config/i386/cygming.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
      	(DRECTVE_SECTION_FUNCTION): Delete.
      	(drectve_section): Redefine as a macro that sets in_section after
      	emitting the directive.
      	(SWITCH_TO_SECTION_FUNCTION): Delete.
      	* config/i386/darwin.h (ASM_OUTPUT_ALIGN): Replace call to
      	in_text_section with comparison between in_section and text_section.
      	* config/i386/i386.c (x86_64_elf_select_section): Return the section
      	rather than emitting assembly code.  Use get_named_section.
      	(x86_output_aligned_bss, ix86_file_end): Use switch_to_section and
      	get_named_section.
      	(machopic_output_stub): Use switch_to_section.
      	* config/i386/nwld.c (nwld_named_section_asm_out_constructor)
      	(nwld_named_section_asm_out_destructor): Use get_section and
      	switch_to_section.
      
      	* config/ia64/ia64.c (ia64_select_rtx_section): Return the section
      	rather than emitting assembly code.
      	(ia64_rwreloc_select_section): Likewise.
      	(ia64_rwreloc_select_rtx_section): Likewise.
      	* config/ia64/ia64-protos.h (sdata_section, sbss_section): Delete.
      	* config/ia64/sysv4.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Use
      	switch_to_section.
      	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
      	(SDATA_SECTION_FUNCTION, SBSS_SECTION_FUNCTION): Delete.
      
      	* config/iq2000/iq2000.c (iq2000_select_rtx_section): Return the
      	section rather than emitting assembly code.
      	(iq2000_select_section): Likewise.
      	* config/iq2000/iq2000.h (rdata_section, sdata_section): Delete.
      	(sbss_section): Delete.
      
      	* config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use switch_to_section
      	and get_named_section.
      	* config/m32r/m32r-protos.h (sbss_section, sdata_section): Delete.
      
      	* config/mcore/mcore-elf.h (EXPORTS_SECTION_ASM_OP): Delete.
      	(SUBTARGET_EXTRA_SECTIONS, SUBTARGET_EXTRA_SECTION_FUNCTIONS): Delete.
      	(EXPORT_SECTION_FUNCTION, SUBTARGET_SWITCH_SECTIONS): Delete.
      	(MCORE_EXPORT_NAME): Emit the exports directive directly, then set
      	in_section to NULL.
      	(ASM_DECLARE_FUNCTION_NAME): Use switch_to_section.
      	(ASM_DECLARE_OBJECT_NAME): Update the type of save_section.  Use the
      	global switch_to_section function instead of the old port-local one.
      	* config/mcore/mcore.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
      	(SWITCH_SECTION_FUNCTION): Delete.
      	* config/mcore/mcore-pe.h (SUBTARGET_SWITCH_SECTIONS): Delete.
      	(DRECTVE_SECTION_ASM_OP, SUBTARGET_EXTRA_SECTIONS): Delete.
      	(SUBTARGET_EXTRA_SECTION_FUNCTIONS, DRECTVE_SECTION_FUNCTION): Delete.
      	(MCORE_EXPORT_NAME): Emit ".section .drectve" directly, then set
      	in_section to NULL.
      	(ASM_DECLARE_OBJECT_NAME): Update the type of save_section.  Use the
      	global switch_to_section function instead of the old port-local one.
      	(ASM_DECLARE_FUNCTION_NAME): Use switch_to_section.
      
      	* config/mips/mips.c (mips_file_start): Update comment.
      	(mips_output_aligned_bss): Use switch_to_section and get_named_section.
      	(mips_output_aligned_decl_common): Use switch_to_section.
      	(mips_select_rtx_section): Return the section rather than emitting
      	assembly code.  Use get_named_section.
      	(mips_function_rodata_section: Likewise get_section.
      	(build_mips16_function_stub): Use switch_to_section.
      	* config/mips/mips.h (ASM_OUTPUT_IDENT): Use switch_to_section.
      	(SDATA_SECTION_ASM_OP): Delete.
      	* config/mips/vxworks.h (EXTRA_SECTIONS): Delete.
      	(EXTRA_SECTION_FUNCTIONS): Delete.
      
      	* config/mmix/mmix.c (mmix_file_start, mmix_file_end)
      	(mmix_asm_output_aligned_local): Use switch_to_section.
      
      	* config/pa/pa.c (som_readonly_data_section, som_one_only_data_section)
      	(som_one_only_readonly_data_section): New variables.
      	(pa_output_function_epilogue): Set in_section to NULL instead of
      	calling forget_section.
      	(output_deferred_plabels): Use select_section.
      	(pa_asm_output_mi_thunk): Likewise.  Set in_section to NULL instead
      	of calling forget_section.
      	(pa_asm_output_aligned_bss, pa_asm_output_aligned_common)
      	(pa_asm_output_aligned_local): Use select_section.
      	(som_text_section_asm_op): Delete in favor of...
      	(som_output_text_section_asm_op): ...this new function.
      	(pa_som_asm_init_sections): New function.
      	(pa_select_section): Return the section rather than emitting
      	assembly code.
      	* config/pa/pa.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
      	(SOM_READONLY_DATA_SECTION_FUNCTION): Delete.
      	(SOM_ONE_ONLY_READONLY_DATA_SECTION_FUNCTION): Delete.
      	(SOM_ONE_ONLY_DATA_SECTION_FUNCTION, FORGET_SECTION_FUNCTION): Delete.
      	* config/pa/pa-protos.h (som_text_section_asm_op): Delete.
      	(som_readonly_data_section, som_one_only_readonly_data_section)
      	(som_one_only_data_section, forget_section): Delete.
      	* config/pa/som.h (TEXT_SECTION_ASM_OP): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	(READONLY_DATA_SECTION, TARGET_ASM_EXCEPTION_SECTION): Delete.
      
      	* config/rs6000/rs6000.c (read_only_data_section): New variable.
      	(private_data_section, read_only_private_data_section): New variables.
      	(sdata2_section, toc_section): New variables.
      	(rs6000_file_start): Use switch_to_section.
      	(rs6000_assemble_integer): Use comparisons against in_section
      	instead of calling in_toc_section and in_text_section.  Use
      	unlikely_text_section_p.
      	(rs6000_elf_output_toc_section_asm_op): New function, derived
      	from the old rs6000/sysv4.h toc_section function.
      	(rs6000_elf_asm_init_sections): New function.
      	(rs6000_elf_select_rtx_section, rs6000_elf_select_section): Return
      	the section rather than emitting assembly code.
      	(machopic_output_stub): Use switch_to_section.
      	(toc_section): Delete dummy function.
      	(rs6000_elf_asm_out_constructor, rs6000_elf_asm_out_destructor): Use
      	switch_to_section and get_section.
      	(rs6000_xcoff_output_readonly_section_asm_op): New function.
      	(rs6000_xcoff_output_readwrite_section_asm_op): New function.
      	(rs6000_xcoff_output_toc_section_asm_op): New function, derived from
      	the old rs6000/xcoff.h toc_section function.
      	(rs6000_xcoff_asm_init_sections): New function.
      	(rs6000_xcoff_select_section, rs6000_xcoff_select_rtx_section): Return
      	the section rather than emitting assembly code.
      	(rs6000_xcoff_file_start): Use switch_to_section.
      	(rs6000_xcoff_file_end): Likewise.
      	* config/rs6000/rs6000-protos.h (toc_section, sdata_section): Delete.
      	(sdata2_section, sbss_section, private_data_section): Delete.
      	(read_only_data_section, read_only_private_data_section): Delete.
      	* config/rs6000/sysv4.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
      	(TOC_SECTION_FUNCTION, SDATA_SECTION_FUNCTION, SDATA2_SECTION_FUNCTION)
      	(SBSS_SECTION_FUNCTION, INIT_SECTION_FUNCTION): Delete.
      	(FINI_SECTION_FUNCTION): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	(ASM_OUTPUT_ALIGNED_LOCAL): Use switch_to_section.
      	* config/rs6000/xcoff.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
      	(READ_ONLY_DATA_SECTION_FUNCTION, PRIVATE_DATA_SECTION_FUNCTION)
      	(READ_ONLY_PRIVATE_DATA_SECTION_FUNCTION, TOC_SECTION_FUNCTION)
      	(READONLY_DATA_SECTION): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	(ASM_DECLARE_FUNCTION_NAME): Use switch_to_section.  Set in_section
      	to NULL rather than no_section.
      	(TARGET_ASM_EXCEPTION_SECTION): Delete.
      
      	* config/sh/sh.c (sh_file_start): Use switch_to_section.
      
      	* config/sparc/sparc.c (emit_pic_helper): Use switch_to_section.
      	(sparc_output_deferred_case_vectors): Likewise.  Remove argument
      	from call to current_function_section.
      
      	* config/stormy16/stormy16.c: Include ggc.h and gt-storm16.h.
      	(bss100_section): New variable.
      	(xstormy16_asm_output_aligned_common): Use switch_to_section.
      	(xstormy16_asm_init_sections): New function.
      	(xstormy16_asm_out_destructor, xstormy16_asm_out_constructor): Use
      	switch_to_section and get_section.
      	(xstormy16_output_addr_vec): Use switch_to_section.  Remove argument
      	from calls to current_function_section.
      	* config/stormy16/stormy16.h (EXTRA_SECTIONS): Delete.
      	(XSTORMY16_SECTION_FUNCTION, EXTRA_SECTION_FUNCTIONS): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	* config/stormy16/stormy16-protos.h (bss100_section): Delete.
      
      	* config/svr3.h (ASM_OUTPUT_LOCAL): Use switch_to_section.
      	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, INIT_SECTION_FUNCTION)
      	(FINI_SECTION_FUNCTION): Delete.
      
      	* config/v850/v850.c: Include gt-v850.h.
      	(rosdata_section, rozdata_section, tdata_section, zdata_section)
      	(zbss_section): New variables.
      	(v850_output_aligned_bss): Use switch_to_section.
      	(v850_asm_init_sections): New function.
      	(v850_select_section): Return the section rather than emitting
      	assembly code.
      	* config/v850/v850.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS)
      	(ZDATA_SECTION_ASM_OP, ZBSS_SECTION_ASM_OP, TDATA_SECTION_ASM_OP)
      	(ROSDATA_SECTION_ASM_OP, ROZDATA_SECTION_ASM_OP): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	* config/v850/v850-protos.h (sdata_section, rosdata_section): Delete.
      	(sbss_section, tdata_section, zdata_section, rozdata_section): Delete.
      	(zbss_section): Delete.
      
      	* config/vax/vaxv.h (ASM_OUTPUT_LOCAL): Use switch_to_section.
      
      	* config/vx-common.h (vxworks_exception_section): Delete.
      	(TARGET_ASM_EXCEPTION_SECTION): Delete.
      
      	* config/xtensa/xtensa.c (xtensa_select_rtx_section): Return the
      	section rather than emitting assembly code.
      	* config/xtensa/xtensa.h (ASM_OUTPUT_POOL_PROLOGUE): Use
      	switch_to_section.
      
      	* Makefile.in (GTFILES): Add $(srcdir)/output.h.
      	* coretypes.h (section): New union and typedef.
      	* dbxout.c (FORCE_TEXT): Use switch_to_section.  Remove argument
      	from call to current_function_section.
      	(dbxout_function_end, dbxout_init, dbxout_source_file, dbxout_finish)
      	(dbxout_symbol_location): Use switch_to_section.
      	* dwarf2out.c (named_section_eh_frame_section): Delete, moving
      	most of the code into...
      	(default_eh_frame_section): ...here.  Return a section.
      	(collect2_eh_frame_section): Delete, moving most of the code into..
      	(switch_to_eh_frame_section): ...this new function.
      	(debug_info_section, debug_abbrev_section, debug_aranges_section)
      	(debug_macinfo_section, debug_line_section, debug_loc_section)
      	(debug_pubnames_section, debug_str_section, debug_ranges_section): New
      	variables.
      	(output_call_frame_info): Call switch_to_eh_frame_section instead of
      	eh_frame_section.  Use switch_to_section and get_section.
      	(dwarf2out_begin_prologue): Use switch_to_section.
      	(AT_string_form): Check the flags in debug_str_section instead of
      	DEBUG_STR_SECTION_FLAGS.
      	(output_comp_unit): Use switch_to_section, get_section, and
      	debug_info_section.
      	(output_line_info, secname_for_decl): Use unlikely_text_section_p.
      	(dwarf2out_begin_block): Use switch_to_section.  Remove argument
      	from call to current_function_section.
      	(dwarf2out_var_location): Use unlikely_text_section_p.
      	(dwarf2out_source_line): Use switch_to_section.  Remove argument
      	from call to current_function_section.
      	(dwarf2out_start_source_file, dwarf2out_end_source_file)
      	(dwarf2out_define, dwarf2out_undef: Use switch_to_section and
      	debug_macinfo_section.
      	(dwarf2out_init): Initialize the new section variables.  Use them
      	instead of calls to named_section_flags.  Use switch_to_section.
      	(output_indirect_string): Use switch_to_section and debug_str_section.
      	(dwarf2out_finish): Use switch_to_section and the new section
      	variables.
      	* except.c (default_exception_section): Return the section instead
      	of emitting assembly code.
      	(output_function_exception_table): Use the global exception_section
      	variable instead of the target hook.  Use switch_to_section.  Remove
      	argument from call to current_function_section.
      	* final.c (HAVE_READONLY_DATA_SECTION): Delete.
      	(shorten_branches): Use pointer comparisons to detect whether the
      	text section is the same as readonly_data_section.
      	(profile_function): Use switch_to_section.  Remove argument from
      	call to current_function_section.
      	(final_scan_insn): Likewise.  Update use of last_text_section.
      	* gengtype.c (open_base_files): Add an include of output.h.
      	* output.h (text_section, data_section, readonly_data_section)
      	(ctors_section, dtors_section, bss_section, init_section)
      	(fini_section, sdata_section): Turn into section pointers.
      	(in_text_section, in_unlikely_text_section, exports_section)
      	(drectve_section, named_section, mergeable_string_section)
      	(last_text_section_name): Delete.
      	(default_exception_section, default_eh_frame_section): Return sections.
      	(SECTION_DECLARED, SECTION_NAMED): New macros.
      	(SECTION_MACH_DEP): Bump value.
      	(section_common, named_section, unnamed_section): New structures.
      	(unnamed_section_callback): New typedef.
      	(section): New union.
      	(sbss_section, exception_section, eh_frame_section): New variables.
      	(in_section, last_text_section): Turn into section pointers.
      	(get_unnamed_section, get_section, get_named_section): New functions.
      	(mergeable_constant_section, function_section): Return a section.
      	(unlikely_text_section): Likewise.
      	(current_function_section): Likewise.  Remove the decl argument.
      	(unlikely_text_section_p, switch_to_section): New functions.
      	(output_section_asm_op): New function.
      	(set_named_section_flags, named_section_flags, named_section_real)
      	(named_section_first_declaration): Delete.
      	(default_select_section, default_elf_select_section): Return a section.
      	(default_elf_select_section_1, default_function_rodata_section)
      	(default_no_function_rodata_section, default_select_rtx_section)
      	(default_elf_select_rtx_section): Likewise.
      	* rtl.h (in_data_section): Delete.
      	* sdbout.c (sdbout_one_type): Use switch_to_section.
      	* system.h (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Poison.
      	(READONLY_DATA_SECTION, TARGET_ASM_EXCEPTION_SECTION): Poison.
      	(TARGET_ASM_EH_FRAME_SECTION): Poison.
      	* target-def.h (TARGET_ASM_INIT_SECTIONS): New macro.
      	(TARGET_ASM_EXCEPTION_SECTION, TARGET_ASM_EH_FRAME_SECTION): Delete.
      	(TARGET_ASM_OUT): Update after above changes.
      	* target.h (init_sections): New hook.
      	(exception_section, eh_frame_section): Delete.
      	(select_section, select_rtx_section, function_rodata_section): Return
      	a section rather than emitting assembly code.
      	* varasm.c (text_section, data_section, readonly_data_section)
      	(ctors_section, dtors_section, bss_section, init_section)
      	(fini_section): Turn into section pointers.
      	(sdata_section, sbss_section, exception_section): New variables.
      	(eh_frame_section): New variable.
      	(in_section): Make global and turn into a section pointer.
      	(last_text_section): Turn into a section pointer.
      	(unnamed_sections): New variable.
      	(in_named_name, last_text_section_name): Delete.
      	(EXTRA_SECTION_FUNCTIONS): Delete.
      	(in_named_entry): Delete.
      	(section_htab): New variable, replacing...
      	(in_named_htab): ...this deleted variable.
      	(section_entry_eq, section_entry_hash): New functions, based on...
      	(in_named_entry_eq, in_named_entry_hash): ...these deleted functions.
      	(get_unnamed_section, get_section): New functions.
      	(unlikely_text_section): Return a section instead of emitting
      	assembly code.
      	(in_text_section, in_unlikely_text_section, in_data_section): Delete.
      	(get_named_section_flags, named_section_first_declaration): Delete.
      	(unlikely_text_section_p): New function.
      	(named_section_real, named_section): Delete.
      	(get_named_section): New function.
      	(asm_output_bss, asm_output_aligned_bss): Use switch_to_section.
      	(function_section): Return a section rather than emitting
      	assembly code.
      	(current_function_section): Likewise.  Remove argument.  Use
      	last_text_section if nonnull, otherwise use function_section.
      	(default_function_rodata_section): Return a section rather than
      	emitting assembly code.  Use get_section.
      	(default_no_function_rodata_section): Return a section rather than
      	emitting assembly code.
      	(variable_section): Use switch_to_section and get_named_section.
      	(mergeable_string_section): Return a section rather than emitting
      	assembly code.  Use get_section.  Make static.  Don't take special
      	countermeasures for empty strings.
      	(mergeable_constant_section): Return a section rather than emitting
      	assembly code.  Use get_section.
      	(default_named_section_asm_out_destructor): Use switch_to_section
      	and get_section.
      	(default_dtor_section_asm_out_destructor): Use switch_to_section.
      	(default_named_section_asm_out_constructor): Use switch_to_section
      	and get_section.
      	(default_ctor_section_asm_out_constructor): Use switch_to_section.
      	(assemble_start_function): Likewise.  Set last_text_section to
      	NULL rather than no_section.  Change the type of save_section.
      	(assemble_zeros, assemble_variable): Use the section flags to detect
      	whether or not a section is text.
      	(assemble_static_space): Use switch_to_section.
      	(assemble_trampoline_template): Likewise.
      	(output_constant_def_contents): Use switch_to_section and
      	get_named_section.
      	(output_constant_pool_1): Use switch_to_section.  Use the section
      	flags to see whether sections contain mergeable data.
      	(init_varasm_once): Initialize section_htab instead of in_named_htab.
      	Initialize new section variables.  Call TARGET_ASM_INIT_SECTIONS.
      	(default_elf_asm_named_section): Use SECTION_DECLARED to detect
      	whether a section has already been declared.
      	(default_select_section, default_elf_select_section): Return a
      	section rather than emitting assembly code.
      	(default_elf_select_section_1): Likewise.  Use bss_section for
      	SECCAT_BSS if nonnull.  Use get_named_section.
      	(default_select_rtx_section): Return a section rather than
      	emitting assembly code.
      	(default_elf_select_rtx_section): Likewise.  Use get_named_section.
      	(file_end_indicate_exec_stack): Use switch_to_section and get_section.
      	(output_section_asm_op, switch_to_section): New functions.
      	* vmsdbgout.c (vmsdbgout_finish): Use switch_to_section and
      	get_named_section.
      
      	* doc/tm.texi: Expand the introduction to the sections documentation.
      	(TRAMPOLINE_SECTION): Document new interface.
      	(SDATA_SECTION_ASM_OP): Document new macro.
      	(READONLY_DATA_SECTION): Delete.
      	(SDATA_SECTION_ASM_OP): Document new macro.
      	(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
      	(TARGET_ASM_INIT_SECTIONS): Document new hook.
      	(TARGET_ASM_SELECT_SECTION, TARGET_ASM_FUNCTION_RODATA_SECTION)
      	(TARGET_ASM_SELECT_RTX_SECTION): Adjust for new interface.
      	(TARGET_EXCEPTION_SECTION, TARGET_EH_FRAME_SECTION): Delete.
      
      gcc/java/
      	* class.c (build_utf8_ref, emit_register_classes): Use
      	switch_to_section and get_section.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108152 138bc75d-0d04-0410-961f-82ee72b054a4
      2f14b1f9
  39. 02 Dec, 2005 1 commit
    • rguenth's avatar
      2005-12-02 Richard Guenther <rguenther@suse.de> · ed03eadb
      rguenth authored
      	* config/alpha/alpha.c (alpha_va_start, alpha_gimplify_va_arg_1i,
      	alpha_gimplify_va_arg): Use buildN and fold_buildN where applicable.
      	* config/frv/frv.c (frv_expand_builtin_va_start): Likewise.
      	* config/s390/s390.c (s390_va_start, s390_gimplify_va_arg): Likewise.
      	* config/ia64/ia64.c (ia64_gimplify_va_arg): Likewise.
      	* config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
      	* config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg):
      	Likewise.
      	* config/sh/sh.c (sh_va_start, sh_gimplify_va_arg_expr,
      	sh_adjust_unroll_max): Likewise.
      	* config/c4x/c4x.c (c4x_gimplify_va_arg_expr): Likewise.
      	* config/pa/pa.c (hppa_gimplify_va_arg_expr): Likewise.
      	* config/xtensa/xtensa.c (xtensa_va_start, xtensa_gimplify_va_arg_expr):
      	Likewise.
      	* config/stormy16/stormy16.c (xstormy16_expand_builtin_va_start):
      	Likewise.
      	* config/mips/mips.c (mips_va_start, mips_gimplify_va_arg_expr):
      	Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107906 138bc75d-0d04-0410-961f-82ee72b054a4
      ed03eadb