gcc.git
20 years agocgraphunit.c (cgraph_mark_functions_to_output): Renable node dumping for development...
Nathan Sidwell [Thu, 9 Sep 2004 15:58:21 +0000 (15:58 +0000)]
cgraphunit.c (cgraph_mark_functions_to_output): Renable node dumping for development builds.

* cgraphunit.c (cgraph_mark_functions_to_output): Renable node
dumping for development builds.
* emit-rtl.c (verify_rtx_sharing): Give verbose failure for
development builds only.
* genattrtab.c (write_eligible_delay): Fix typo in previous
commit.
* tree.c (iterative_hash_expr): Replace gcc_unreachable with
gcc_assert.

From-SVN: r87241

20 years agogcse.c (INSN_CUID, [...]): Use gcc_assert and gcc_unreachable.
Nathan Sidwell [Thu, 9 Sep 2004 13:54:07 +0000 (13:54 +0000)]
gcse.c (INSN_CUID, [...]): Use gcc_assert and gcc_unreachable.

* gcse.c (INSN_CUID, insert_set_in_table, find_avail_set,
cprop_insn, do_local_cprop, local_cprop_pass, find_bypass_set,
process_insert_insn, insert_insn_end_bb, pre_insert_copy_insn,
hoist_code, extract_mentioned_regs_helper, compute_store_table,
insert_store): Use gcc_assert and gcc_unreachable.
* ggc-common.c (ggc_splay_alloc, ggc_splay_dont_free,
gt_pch_note_object, gt_pch_note_reorder, relocate_ptrs,
ggc_record_overhead): Likewise.
* ggc-page.c (alloc_page, free_page, ggc_set_mark, ggc_marked_p,
init_ggc, ggc_push_context, ggc_recalculate_in_use_p,
ggc_pop_context, clear_marks, validate_free_objects,
ggc_pch_read): Likewise.
* ggc-zone.c (ggc_allocated_p, free_chunk, ggc_set_mark,
ggc_marked_p, ggc_get_size, init_ggc, destroy_ggc_zone,
ggc_push_context, check_cookies, ggc_collect,
ggc_print_statistics): Likewise.
* gimple-low.c (lower_function_body, lower_stmt,
lower_bind_expr): Likewise.
* gimplify.c (gimple_tree_eq, push_gimplify_context,
pop_gimplify_context, gimple_pop_condition, create_tmp_var,
declare_tmp_vars, gimple_add_tmp_var, annotate_all_with_locus,
mostly_copy_tree_r, gimplify_return_expr, gimplify_switch_expr,
gimplify_case_label_expr, gimplify_exit_block_expr,
canonicalize_component_ref, gimplify_compound_lval,
gimplify_self_mod_expr, gimplify_call_expr,
gimplify_init_ctor_eval, gimplify_init_constructor,
gimplify_modify_expr, gimplify_save_expr, gimplify_target_expr,
gimplify_expr, check_pointer_types_r,
force_gimple_operand): Likewise.
* global.c (global_alloc, build_insn_chain): Likewise.
* graph.c (clean_graph_dump_file,
finish_graph_dump_file): Likewise.
gcov-io.c (gcov_open): Use GCOV_CHECK.

From-SVN: r87240

20 years ago* config/frv/frv.c (acc_operand, accg_operand): Use REGNO.
Richard Sandiford [Thu, 9 Sep 2004 13:48:23 +0000 (13:48 +0000)]
* config/frv/frv.c (acc_operand, accg_operand): Use REGNO.

From-SVN: r87239

20 years agotree-inline.c (expand_call_inline): Make overactive sanity check happy.
Jan Hubicka [Thu, 9 Sep 2004 13:38:53 +0000 (15:38 +0200)]
tree-inline.c (expand_call_inline): Make overactive sanity check happy.

middle-end/17128
* tree-inline.c (expand_call_inline): Make overactive sanity check happy.

From-SVN: r87238

20 years agotree-ssa-loop-ivopts.c (peel_address): Fix abort on VIEW_CONVERT_EXPR.
Jan Hubicka [Thu, 9 Sep 2004 13:25:20 +0000 (15:25 +0200)]
tree-ssa-loop-ivopts.c (peel_address): Fix abort on VIEW_CONVERT_EXPR.

* tree-ssa-loop-ivopts.c (peel_address): Fix abort on
VIEW_CONVERT_EXPR.

From-SVN: r87237

20 years agoMakefile.in (gengtype): Use $(BUILD_ERRORS).
Nathan Sidwell [Thu, 9 Sep 2004 13:22:38 +0000 (13:22 +0000)]
Makefile.in (gengtype): Use $(BUILD_ERRORS).

* Makefile.in (gengtype): Use $(BUILD_ERRORS).
(gengtype.o): Depend on errors.h.
* genattrtab.c (strcmp_check): Use gcc_assert and gcc_unreachable.
(attr_rtx_1, attr_printf, attr_copy_rtx, evaluate_eq_attr,
attr_alt_subset_p, attr_alt_subset_of_compl_p,
attr_alt_intersection, attr_alt_union, optimize_attrs, gen_insn,
write_test_expr, write_attr_value, write_eligible_delay,
make_internal_attr, make_numeric_value): Likewise.
* genautomata.c (regexp_name, get_str_vect,
gen_presence_absence_set, automaton_decl_hash,
automaton_decl_eq_p, insn_decl_hash, insn_decl_eq_p, decl_hash,
decl_eq_p, process_regexp, loop_in_regexp, check_loops_in_regexps,
process_regexp_cycles, reserv_sets_cmp, set_unit_reserv,
test_unit_reserv, it_is_empty_reserv_sets,
reserv_sets_are_intersected, reserv_sets_shift, reserv_sets_or,
reserv_sets_and, output_cycle_reservs, get_free_state,
intersected_state_reservs_p, states_union, remove_arc,
copy_insn_regexp, transform_1, transform_2, transform_3,
regexp_transform_func, store_alt_unit_usage,
check_regexp_units_distribution, process_seq_for_forming_states,
process_alts_for_forming_states, make_automaton,
form_arcs_marked_by_insn, create_composed_state,
set_out_arc_insns_equiv_num, partition_equiv_class,
process_insn_equiv_class, set_insn_equiv_classes,
units_to_automata_heuristic_distr, form_regexp,
longest_path_length, output_dfa_max_issue_rate, add_vect,
out_state_arcs_num, add_vect_el, output_trans_table,
output_state_alts_table, output_dead_lock_vect,
output_max_insn_queue_index_def,
output_min_insn_conflict_delay_func,
output_internal_insn_latency_func, output_print_reservation_func,
output_cpu_unit_reservation_p, output_state_arcs,
make_insn_alts_attr, make_internal_dfa_insn_code_attr,
make_default_insn_latency_attr,
form_important_insn_automata_lists): Likewise.
* genemit.c (gen_exp, output_add_clobbers,
output_added_clobbers_hard_reg_p): Likewise.
* genextract.c (print_path, main): Likewise.
* genflags.c (gen_macro): Likewise.
* gengenrtl.c: Include errors.h
(type_from_format, accessor_from_format): Likewise.
* gengtype.c (get_file_basename, output_mangled_typename,
walk_type, write_types_process_field,
write_types_local_process_field): Likewise.
* genmodes.c (complete_mode): Likewise.
* genopinit.c (gen_insn): Likewise.
* genoutput.c (output_insn_data, check_constraint_len,
constraint_len): Likewise.
* genpreds.c (add_mode_tests):Likewise.
* gen-protos.c (add_hash): Likewise.
* genrecog.c (find_operand, find_matching_operand,
validate_pattern, add_to_sequence, maybe_both_true,
nodes_identical_1, merge_trees, write_switch, write_cond,
write_action, is_unconditional, make_insn_sequence,
debug_decision_2): Likewise.
* gensupport.c (is_predicable, collect_insn_data,
alter_predicate_for_insn, maybe_eval_c_test): Likewise.

From-SVN: r87236

20 years agobasic-block.h (guess_outgoing_edge_probabilities): Declare.
Jan Hubicka [Thu, 9 Sep 2004 12:20:40 +0000 (14:20 +0200)]
basic-block.h (guess_outgoing_edge_probabilities): Declare.

* basic-block.h (guess_outgoing_edge_probabilities): Declare.
* cfgbuild.c (compute_outgoing_frequencies): When probability is missing,
guess it.
(find_many_sub_basic_blocks): Do update profile only when it is present.
* predict.c (set_even_probabilities): Break out from ...
(combine_predictions_for_insn): ... here; deal with !can_predict_insn_p insns.
(combine_predictions_for_bb): Use set_even_probabilities.
(bb_estimate_probability_locally): Break out from ....
(estimate_probability): ... here.
(guess_outgoing_edge_probabilities): New entry point.

From-SVN: r87234

20 years agogcc.c (add_sysrooted_prefix, [...]): Use fatal, not abort.
Nathan Sidwell [Thu, 9 Sep 2004 11:04:52 +0000 (11:04 +0000)]
gcc.c (add_sysrooted_prefix, [...]): Use fatal, not abort.

* gcc.c (add_sysrooted_prefix, execute, do_self_spec, do_spec_1,
handle_braces, process_brace_body, main, used_arg,
set_multilib_dir, print_multilib_info): Use fatal, not abort.

From-SVN: r87231

20 years ago* tree-nested.c (create_tmp_var_for): Correct missinverted assert.
Nathan Sidwell [Thu, 9 Sep 2004 10:36:11 +0000 (10:36 +0000)]
* tree-nested.c (create_tmp_var_for): Correct missinverted assert.

From-SVN: r87228

20 years ago2004-09-09 Michael Koch <konqueror@gmx.de>
Michael Koch [Thu, 9 Sep 2004 10:19:29 +0000 (10:19 +0000)]
2004-09-09  Michael Koch  <konqueror@gmx.de>

* java/lang/System.java
(err): Fixed javadoci to point to setErr() and not setOut().

From-SVN: r87227

20 years agotree-outof-ssa.c (free_temp_expr_table): Add missed assert.
Nathan Sidwell [Thu, 9 Sep 2004 10:15:44 +0000 (10:15 +0000)]
tree-outof-ssa.c (free_temp_expr_table): Add missed assert.

* tree-outof-ssa.c (free_temp_expr_table): Add missed assert.
* tree-ssa-ccp.c (set_lattice_value): Correct missapplied de
Morgan's theorem in last checkin.

From-SVN: r87226

20 years ago[multiple changes]
Michael Koch [Thu, 9 Sep 2004 09:43:33 +0000 (09:43 +0000)]
[multiple changes]

2004-09-09  Jeroen Frijters  <jeroen@frijters.net>

(normalizePath): Added special case for windows systems.

2004-09-09  Michael Koch  <konqueror@gmx.de>

* java/io/File.java
(dupSeparator): Made private.
(File(URI)): New constructor.
(getParentFile): Fixed javadoc.
(createTempFile): Reformated.
(setReadOnly): Added comment.
(deleteOnExit): Merged javadoc with classpath version.

From-SVN: r87225

20 years agoMakefile.am: Don't try to include deps.mk.
Michael Koch [Thu, 9 Sep 2004 08:25:30 +0000 (08:25 +0000)]
Makefile.am: Don't try to include deps.mk.

2004-09-09  Michael Koch  <konqueror@gmx.de>

* Makefile.am: Don't try to include deps.mk.
* Makefile.in: Regenerated.

From-SVN: r87224

20 years agotarghooks.c (default_unwind_emit, [...]): Use gcc_assert, gcc_unreachable & internal_...
Giovanni Bajo [Thu, 9 Sep 2004 07:54:12 +0000 (07:54 +0000)]
targhooks.c (default_unwind_emit, [...]): Use gcc_assert, gcc_unreachable & internal_error instead of abort.

* targhooks.c (default_unwind_emit, default_scalar_mode_supported_p):
Use gcc_assert, gcc_unreachable & internal_error instead of abort.
* timevar.c (timevar_push, timevar_pop, timevar_start,
timevar_stop): Likewise.
* toplev.c (default_pch_valid_p): Likewise.
* tracer.c (tail_duplicate): Likewise.
* tree-alias-common.c (get_alias_var_decl,
get_values_from_constructor, create_alias_var, delete_alias_vars,
empty_points_to_set, same_points_to_set, ptr_may_alias_var):
Likewise.
* tree.c (tree_size, make_node_stat, copy_node_stat,
build_int_cst_wide, integer_all_onesp, list_length, chainon,
tree_node_structure, type_contains_placeholder_p, substitute_in_expr,
substitute_placeholder_in_expr, tabilize_reference_1, build0_stat,
build1_stat, build2_stat, build3_stat, build4_stat, is_attribute_p,
lookup_attribute, type_hash_canon, host_integerp, iterative_hash_expr,
build_method_type_directly, decl_type_context, get_callee_fndecl,
get_set_constructor_bits, build_vector_type_for_mode, int_cst_value,
tree_fold_gcd): Likewise.
* tree-cfg.c (create_bb, make_ctrl_stmt_edges, make_exit_edges,
make_cond_expr_edges, group_case_labels, tree_merge_blocks,
cleanup_control_expr_graph, find_taken_edge,
find_taken_edge_switch_expr, phi_alternatives_equal,
is_ctrl_altering_stmt, disband_implicit_edges, set_bb_for_stmt,
stmt_for_bsi, tree_find_edge_insert_loc, bsi_insert_on_edge_immediate,
tree_split_edge, tree_verify_flow_info, thread_jumps,
tree_redirect_edge_and_branch, tree_flow_call_edges_add): Likewise.
* tree-chrec.c (chrec_fold_poly_cst, chrec_fold_plus_poly_poly,
chrec_fold_multiply_poly_poly): Likewise.
* tree-complex.c (extract_component, expand_complex_division,
expand_complex_comparison, expand_complex_operations_1,
build_replicated_const, expand_vector_operations_1): Likewise.
* tree-data-ref.c (tree_fold_bezout, build_classic_dist_vector,
build_classic_dir_vector): Likewise.
* tree-dfa.c (compute_immediate_uses_for_phi,
compute_immediate_uses_for_stmt, create_var_ann, create_stmt_ann,
create_tree_ann, collect_dfa_stats, get_virtual_var): Likewise.
* tree-dump.c (dequeue_and_dump): Likewise.
* tree-eh.c (record_stmt_eh_region, add_stmt_to_eh_region,
record_in_finally_tree, replace_goto_queue_1,
maybe_record_in_goto_queue, verify_norecord_switch_expr,
do_return_redirection): Likewise.
* tree-if-conv.c (tree_if_convert_stmt, tree_if_convert_cond_expr,
add_to_dst_predicate_list, find_phi_replacement_condition,
replace_phi_with_cond_modify_expr, get_loop_body_in_if_conv_order):
Likewise.
* tree-inline.c (remap_decl, remap_type, remap_decls, copy_body_r,
initialize_inlined_parameters, declare_return_variable,
estimate_num_insns_1, expand_call_inline, expand_calls_inline,
optimize_inline_calls, copy_tree_r): Likewise.
* tree-into-ssa.c (rewrite_initialize_block_local_data, rewrite_stmt,
ssa_rewrite_stmt, rewrite_into_ssa): Likewise.
* tree-iterator.c (alloc_stmt_list, tsi_link_before, tsi_link_after,
tsi_split_statement_list_after, tsi_split_statement_list_before):
Likewise.
* tree-mudflap.c (mf_varname_tree): Likewise.
* tree-nested.c (create_tmp_var_for, lookup_field_for_decl,
lookup_tramp_for_decl, convert_all_function_calls): Likewise.
* tree-optimize.c (tree_rest_of_compilation): Likewise.
* tree-outof-ssa.c (create_temp, eliminate_build, eliminate_phi,
coalesce_abnormal_edges, coalesce_ssa_name, eliminate_virtual_phis,
free_temp_expr_table, add_dependance, finish_expr, rewrite_trees):
Likewise.
* tree-phinodes.c (resize_phi_node, add_phi_arg,
remove_all_phi_nodes_for): Likewise.
* tree-pretty-print.c (op_prio, print_call_name): Likewise.
* tree-profile.c (tree_gen_interval_profiler, tree_gen_pow2_profiler,
tree_gen_one_value_profiler, tree_gen_const_delta_profiler): Likewise.
* tree-sra.c (type_can_instantiate_all_elements, sra_hash_tree,
sra_elt_eq, sra_walk_expr, instantiate_missing_elements,
generate_one_element_ref, generate_element_copy,
generate_element_zero, scalarize_copy, scalarize_init,
scalarize_ldst): Likewise.
* tree-ssa-alias.c (delete_alias_info, group_aliases, may_alias_p,
add_may_alias, add_pointed_to_expr, add_pointed_to_var,
collect_points_to_info_r, get_tmt_for, get_ptr_info): Likewise.
* tree-ssa.c (walk_use_def_chains, check_phi_redundancy): Likewise.
* tree-ssa-ccp.c (dump_lattice_value, get_default_value, get_value,
set_lattice_value, likely_value, ccp_visit_phi_node, visit_assignment,
widen_bitfield, ccp_fold_builtin): Likewise.
* tree-ssa-copy.c (may_propagate_copy, merge_alias_info,
replace_exp_1, propagate_tree_value): Likewise.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise.
* tree-ssa-dce.c (set_control_dependence_map_bit,
find_control_dependence, find_pdom, mark_operand_necessary,
mark_stmt_if_obviously_necessary,
mark_control_dependent_edges_necessary, remove_dead_stmt): Likewise.
* tree-ssa-dom.c (dom_opt_initialize_block_local_data,
simplify_switch_and_lookup_avail_expr, cprop_into_successor_phis,
eliminate_redundant_computations, avail_expr_eq): Likewise.
* tree-ssa-dse.c (fix_stmt_v_may_defs): Likewise.
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p,
duplicate_blocks): Likewise.
* tree-ssa-loop-im.c (for_each_index, set_level,
is_call_clobbered_ref): Likewise.
* tree-ssa-loop-ivopts.c (dump_use, divide, stmt_after_ip_normal_pos,
stmt_after_increment, set_iv, contains_abnormal_ssa_name_p,
find_interesting_uses_outer_or_nonlin, add_derived_ivs_candidates,
peel_address, ptr_difference_cost, may_replace_final_value,
determine_use_iv_cost, rewrite_use_nonlinear_expr, rewrite_use_outer,
rewrite_use, rewrite_uses): Likewise.
* tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa,
check_loop_closed_ssa_use): Likewise.
* tree-ssanames.c (make_ssa_name): Likewise.
* tree-ssa-operands.c (finalize_ssa_defs, finalize_ssa_uses,
finalize_ssa_v_must_defs, finalize_ssa_stmt_operands,
get_stmt_operands, get_expr_operands, get_asm_expr_operands,
get_indirect_ref_operands, add_stmt_operand): Likewise.
* tree-ssa-pre.c (value_exists_in_set_bitmap,
value_remove_from_set_bitmap, bitmap_insert_into_set, insert_into_set,
phi_translate, valid_in_set, compute_antic,
find_or_generate_expression, create_expression_by_pieces, insert_aux,
create_value_expr_from, eliminate): Likewise.
* tree-ssa-propagate.c (cfg_blocks_get): Likewise.
* tree-ssa-threadupdate.c (remove_last_stmt_and_useless_edges):
Likewise.
* tree-tailcall.c (independent_of_stmt_p, adjust_return_value,
eliminate_tail_call): Likewise.
* tree-vectorizer.c (vect_create_index_for_array_ref,
vect_align_data_ref, vect_create_data_ref,
vect_create_destination_var, vect_get_vec_def_for_operand,
vect_finish_stmt_generation, vect_transform_stmt,
vect_transform_loop_bound, vect_transform_loop,
vect_analyze_operations): Likewise.
* tree-vn.c (vn_compute, set_value_handle, get_value_handle):
Likewise.
* tree-flow-inline.h (var_ann, get_var_ann, get_def_from_ptr,
get_use_op_ptr, immediate_use, phi_ssa_name_p, bsi_start,
bsi_after_labels, bsi_last): Likewise.
* tree-ssa-live.c (var_union, change_partition_var,
create_ssa_var_map, calculate_live_on_entry, root_var_init,
type_var_init, add_coalesce, sort_coalesce_list, pop_best_coalesce):
Likewise.
* tree-ssa-live.h (partition_is_global, live_entry_blocks,
tpa_find_tree): Likewise.
(register_ssa_partition_check): Declare.
(register_ssa_partition): use it.
* tree-ssa-live.c: Include errors.h.
(register_ssa_partition_check): New.
* tree-ssa-operands.c: Include errors.h.
* Makefile.in (tree-ssa-operands.o): Depend on errors.h.

Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com>
From-SVN: r87223

20 years ago* config/frv/frv-protos.h (FRV_CPU_FR550, FRV_CPU_FR450)
Richard Sandiford [Thu, 9 Sep 2004 06:33:58 +0000 (06:33 +0000)]
* config/frv/frv-protos.h (FRV_CPU_FR550, FRV_CPU_FR450)
(FRV_CPU_FR405): New processor enums.
(frv_issue_rate, frv_acc_group): Declare.
* config/frv/frv.h (CPP_SPEC, CPP_FRV_SPEC, CPP_FR500_SPEC): Delete.
(CPP_FR400_SPEC, CPP_SIMPLE_SPEC): Delete.
(MASK_DEFAULT_FR550, MASK_DEFAULT_FR450): New macros.
(SUBTARGET_EXTRA_SPECS, EXTRA_SPECS, CPP_CPU_DEFAULT_SPEC): Delete.
(TARGET_CPU_CPP_BUILTINS): Define the macros that were previously
handled by CPP_SPEC.
(MASK_LONG_CALLS, TARGET_LONG_CALLS): New macros.
(MASK_ALIGN_LABELS, TARGET_ALIGN_LABELS): New macros.
(ACC_MASK): New macro.
(TARGET_MEDIA_REV2): Include FRV_CPU_{FR405,FR450,FR550}.
(TARGET_MEDIA_FR450): New macro.
(TARGET_FR500_FR550_BUILTINS, TARGET_FR405_BUILTINS): New macros.
(TARGET_SWITCHES): Add -m{no-,}align-labels and -m{no-,}long-calls.
(LABEL_ALIGN_AFTER_BARRIER): Define.
(ACC_LAST, ACCG_LAST): Add four new accumulator registers.
(IACC_FIRST, IACC_LAST): New pair of SPRs.
(ACCG_FIRST, AP_FIRST, SPR_FIRST, SPR_LAST): Adjust accordingly.
(FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER)
(REGISTER_NAMES): Add entries for new registers.
(REG_CLASS_CONTENTS): Update for new register ranges.
(EXTRA_CONSTRAINT_FOR_S): Redefine in terms of call_operand.
(ISSUE_RATE, CLEAR_VLIW_START, SET_VLIW_START): Delete.
(PACKING_FLAG_USED_P): Delete.
(FRV_BUILTIN_MQLCLRHS, FRV_BUILTIN_MQLMTHS, FRV_BUILTIN_MQSLLHI)
(FRV_BUILTIN_MQSRAHI, FRV_BUILTIN_SMUL, FRV_BUILTIN_UMUL)
(FRV_BUILTIN_PREFETCH0, FRV_BUILTIN_PREFETCH, FRV_BUILTIN_SMASS)
(FRV_BUILTIN_SMSSS, FRV_BUILTIN_SMU, FRV_BUILTIN_SCUTSS)
(FRV_BUILTIN_ADDSS, FRV_BUILTIN_SUBSS, FRV_BUILTIN_SLASS)
(FRV_BUILTIN_IACCread{l,ll}, FRV_BUILTIN_IACCset{ll,l})
(FRV_BUILTIN_SCAN): New members of frv_builtin_enum.
(FRV_BUILTIN_FIRST_NONMEDIA): New macro.
(CPU_UNITS_QUERY): Define to 1.
* config/frv/frv.c: Include gt-frv.h
(NUM_NOP_PATTERNS, NTH_UNIT, UNIT_NUMBER, PACKING_FLAG_P): New macros.
(SET_PACKING_FLAG, CLEAR_PACKING_FLAG, FOR_EACH_REGNO): New macros.
(frv_insn_group): New enumeration.
(frv_unit_names, frv_unit_groups, frv_unit_codes): New variables.
(frv_type_to_unit, frv_nops, frv_num_nops): New variables.
(REGSTATE_DEAD, REGSTATE_LIVE, REGSTATE_UNUSED, REGSTATE_MASK)
(REGSTATE_CONDJUMP): Delete.  Shuffle other numbers to cover the
gap left by REGSTATE_LIVE.
(regstate_t): New typedef.
(TARGET_MACHINE_DEPENDENT_REORG): Define.
(frv_default_flags_for_cpu): Handle FRV_CPU_{FR550,FR450,FR405}.
(frv_override_options): Check for -mcpu={fr550,fr450,fr405}.
Initialize frv_unit_codes[] and frv_type_to_unit[].
(frv_conditional_register_usage): Remove redundant fixing of
accumulator registers.
(frv_insn_packing_flag): Update specification.
(frv_function_prologue): Don't set frv_insn_packing_flag here.
Zero out frv_nops[].
(frv_expand_epilogue): Remove comments about the no-longer-present
SIBCALL_P argument.
(frv_asm_output_mi_thunk): Check frv_issue_rate() rather than
PACKING_FLAG_USED_P() when deciding whether to pack instructions.
(frv_asm_output_opcode, frv_final_prescan_insn): Simplify in light
of the new meaning of frv_insn_packing_flag.  Emit an mnop.p if
packing is disabled and if INSN can only issue to M1.
(call_operand): Check TARGET_LONG_CALLS.
(acc_operand, even_acc_operand, quad_acc_operand)
(accg_operand): Simplify.  Don't accept pseudo registers.
(output_move_single): Handle SPR<-zero moves.
(frv_issue_rate): Make non-static.  Handle FRV_CPU_{FR550,FR450,FR405}.
(frv_registers_update, frv_registers_used_p): Delete.
(frv_registers_set_p): Delete.
(frv_acc_group_1, frv_acc_group, frv_insn_unit): New functions.
(frv_issues_to_branch_unit_p): New function.
(frv_packet): New structure.
(frv_cond_flags, frv_regstate_conflict_p): New functions.
(frv_registers_conflict_p_1, frv_registers_conflict_p): New functions.
(frv_registers_update_1, frv_registers_update): New functions.
(frv_start_packet, frv_start_packet_block, frv_finish_packet)
(frv_pack_insn_p, frv_add_insn_to_packet, frv_insert_nop_in_packet)
(frv_for_each_packet, frv_sort_insn_group_1, frv_compare_insns)
(frv_sort_insn_group, frv_reorder_packet): New functions.
(frv_pack_insns): Use frv_reorder_packet.
(frv_packet_address): New variable.
(frv_fill_unused_units, frv_align_label, frv_reorg_packet)
(frv_register_nop, frv_reorg): New functions.
(bdesc_1arg): Add __SCUTSS.
(bdesc_2arg): Add __MQLCLRHS, __MQLMTHS, __SMUL, __UMUL, __ADDSS,
__SUBSS, __SLASS and __SCAN.
(bdesc_2argimm): Add __MQSLLHI and __MQSRAHI.
(bdesc_int_void2arg, bdesc_prefetches): New arrays.
(frv_init_builtins): Register the above builtins.
(frv_int_to_acc): Use ACC_MASK to check for valid accumulator
registers.  Turn the referenced accumulators into global registers.
(frv_read_iacc_argument): New function.
(frv_expand_int_void2arg, frv_expand_prefetches): New functions.
(frv_split_iacc_move): New function.
(frv_expand_builtin): Handle the new builtins.
* config/frv/frv.md: Replace old schedulers with new order-independent
ones.  Add schedulers for the FR405, FR450 and FR550.  Describe new
packing algorithm.
(cpu): Add fr550, fr450 and fr405.
(type): Add macc, scan, cut, fnop, fscmp, fdcmp, mnop, mqlimh and
mqshift.  Replace fmas with fsmadd and fmad with fdmadd.  Delete m7.
(*muladd[sd]f4, *mulsub[sd]f4): Fix types.
(*cmp[sd]f_cc_fp): Use new f[sd]cmp types.
(fnop, mnop): New patterns.
(UNSPEC_MQLCLRHS, UNSPEC_MQLMTHS, UNSPEC_MQSLLHI, UNSPEC_MQSRAHI):
New constants.
(mexpdhw, *cond_exec_mexpdhw): Fix destination operands.
(mclracca8): Use ACC_MASK to determine the upper set of accumulator
registers.
(mqlclrhs, mqlmths, mqsllhi, mqsrahi): New patterns.
(UNSPEC_SMUL, UNSPEC_UMUL, UNSPEC_SMU, UNSPEC_ADDSS, UNSPEC_SUBSS)
(UNSPEC_SLASS, UNSPEC_SCAN, UNSPEC_INTSS, UNSPEC_SCUTSS)
(UNSPEC_PREFETCH0, UNSPEC_PREFETCH, UNSPEC_IACCreadll)
(UNSPEC_IACCreadl, UNSPEC_IACCsetll, UNSPEC_IACCsetl, UNSPEC_SMASS)
(UNSPEC_SMSSS, UNSPEC_IMUL, IACC0_REG): New constants.
(smul, umul, smass, smsss, smu, addss, subss, slass, scan, scutss)
(frv_prefetch0, frv_prefetch): New patterns.
* config/frv/t-frv (MULTILIB_OPTIONS): Remove -mcpu=frv and
-mcpu=simple.  Add -mcpu=fr550.
(MULTILIB_DIRNAMES): Update accordingly.
(MULTILIB_MATCHES): Use the fr400 multilibs for -mcpu=fr405 and
-mcpu=fr450.
* doc/invoke.texi: Document the new -mcpu={fr550,fr450,fr405},
-mlong-calls and -malign-labels options for FR-V.

Co-Authored-By: Catherine Moore <clm@redhat.com>
From-SVN: r87222

20 years agoMake-lang.in (cp/semantics.o): Depend on c-common.h.
Ziemowit Laski [Thu, 9 Sep 2004 01:49:00 +0000 (01:49 +0000)]
Make-lang.in (cp/semantics.o): Depend on c-common.h.

[gcc/cp/ChangeLog]
2004-09-08  Ziemowit Laski  <zlaski@apple.com>

        * Make-lang.in (cp/semantics.o): Depend on c-common.h.
        * semantics.c: Include c-common.h.
        (finish_compound_stmt): Call objc_clear_super_receiver().

From-SVN: r87219

20 years agore PR c/8420 (volatile after the type specifier for an unnamed structure is rejected)
Joseph Myers [Thu, 9 Sep 2004 01:25:48 +0000 (02:25 +0100)]
re PR c/8420 (volatile after the type specifier for an unnamed structure is rejected)

PR c/8420
* c-tree.h (struct c_declspecs): New.
(struct c_declarator, struct c_type_name, struct c_parm): Update
element types.
(build_array_declarator, grokfield, shadow_tag, shadow_tag_warned,
start_function, start_decl, build_c_parm,
make_pointer_declarator): Update prototypes.
(build_null_declspecs, declspecs_add_qual, declspecs_add_type,
declspecs_add_scspec, declspecs_add_attrs): New.
(split_specs_attrs): Remove.
* c-parse.in (%union): Add dsptype.
(declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea, declspecs_ts,
declspecs_nots, declspecs_ts_nosa, declspecs_nots_nosa,
declspecs_nosc_ts, declspecs_nosc_nots, declspecs_nosc, declspecs,
maybe_type_quals_attrs): Change to dsptype.
(struct c_declspec_stack): New.
(current_declspecs, declspec_stack): Change type.
(PUSH_DECLSPEC_STACK, POP_DECLSPEC_STACK): Update to new
structures.
(extdefs): Likewise.
(setspecs): Likewise.
(fndef): Use current_declspecs for empty declspecs list.
(declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea): Update to new
structures and helper functions.  Update comments.
(typespec_nonattr): Correct comment.
(maybe_type_quals_attrs, typename): Update to new structures.
* c-decl.c (grokdeclarator, build_array_declarator, grokfield,
shadow_tag, shadow_tag_warned, start_function, start_decl,
build_c_parm, make_pointer_declarator,
set_array_declarator_inner, groktypename): Update to new
structures.
(build_null_declspecs, declspecs_add_qual, declspecs_add_type,
declspecs_add_scspec, declspecs_add_attrs): New.
(split_specs_attrs): Remove.
(shadow_tag_warned): Make warning for useless type names a
pedwarn.  Give hard error for long, short, signed, unsigned or
_Complex used with struct, union or enum in empty declaration.
Make found_tag a bool.
(grokdeclarator): Remove checks now done at parse time.

testsuite:
* gcc.dg/anon-struct-4.c, gcc.dg/declspec-1.c,
gcc.dg/declspec-2.c, gcc.dg/declspec-3.c, gcc.dg/declspec-4.c,
gcc.dg/declspec-5.c, gcc.dg/declspec-6.c,
gcc.dg/long-long-typespec-1.c: New tests.
* gcc.dg/tls/diag-2.c: Update expected diagnostics

From-SVN: r87218

20 years agoc-tree.h (enum c_declarator_kind, [...]): New.
Joseph Myers [Thu, 9 Sep 2004 01:19:15 +0000 (02:19 +0100)]
c-tree.h (enum c_declarator_kind, [...]): New.

* c-tree.h (enum c_declarator_kind, struct c_arg_info, struct
c_declarator, struct c_type_name, struct c_parm): New.
(build_array_declarator, set_array_declarator_inner,
get_parm_info, grokfield, groktypename, grokparm, push_parm_decl,
start_function, start_decl, build_c_parm, build_attrs_declarator,
build_function_declarator, make_pointer_declarator, c_cast_expr,
store_parm_decls_newstyle, c_expr_sizeof_type): Update prototypes.
(build_id_declarator): New.
* c-typeck.c (c_cast_expr, c_expr_sizeof_type): Update to new
structures.
* c-decl.c (ARG_INFO_PARMS, ARG_INFO_TAGS, ARG_INFO_TYPES,
ARG_INFO_OTHERS): Remove.
(build_id_declarator): New.
(build_array_declarator, set_array_declarator_inner, groktypename,
start_decl, grokparm, push_parm_decl, grokparms, get_parm_info,
grokfield, start_function, store_parm_decls_newstyle,
store_parm_decls_oldstyle, store_parm_decls,
build_c_parm, build_attrs_declarator, build_function_declarator,
make_pointer_declarator, grokdeclarator): Update to new
structures.
* c-parse.in (%union): Add arginfotype, dtrtype, typenametype and
parmtype.
(declarator, notype_declarator, after_type_declarator,
parm_declarator, parm_declarator_starttypename,
parm_declarator_nostarttypename, array_declarator, typename,
absdcl, absdcl1, absdcl1_ea, absdcl1_noea, direct_absdcl1,
absdcl_maybe_attribute, parm, firstparm, parms, parmlist,
parmlist_1, parmlist_2, parmlist_or_identifiers,
parmlist_or_identifiers_1): Use these types.
(primary, after_type_declarator, parm_declarator_starttypename,
notype_declarator, component_decl, component_declarator,
component_notype_declarator, typename, absdcl,
absdcl_maybe_attribute, absdcl1_ea, direct_absdcl1, parmlist_1,
parmlist_2, parmlist_or_identifiers_1): Update to new structures.

objc:
* objc-act.c (objc_start_function, really_start_method,
objc_get_parm_info, start_method_def): Update to new arg_info
structures.

From-SVN: r87217

20 years agoc-tree.h (C_DECL_USED, [...]): New.
Joseph Myers [Thu, 9 Sep 2004 01:16:16 +0000 (02:16 +0100)]
c-tree.h (C_DECL_USED, [...]): New.

* c-tree.h (C_DECL_USED, parser_obstack, in_alignof, in_sizeof,
in_typeof, record_maybe_used_decl, pop_maybe_used,
c_expr_sizeof_expr, c_expr_sizeof_type): New.
* c-decl.c (parser_obstack): New.
(c_init_decl_processing): Initialize parser_obstack.
(c_write_global_declarations_1): Check for used but undefined
static functions.
* c-parse.in (%union): Add otype.
(save_obstack_position): New.
(extdefs): Use it.
(unary_expr): Update in_sizeof and in_alignof.  Use
c_expr_sizeof_expr and c_expr_sizeof_type.
(sizeof): Update in_sizeof.
(alignof): Update in_alignof.
(typeof): Update in_typeof.
(typespec_nonreserved_nonattr): Call pop_maybe_used.
* c-typeck.c (in_alignof, in_sizeof, in_typeof, struct
maybe_used_decl, maybe_used_decls, record_maybe_used_decl,
pop_maybe_used, c_expr_sizeof_expr, c_expr_sizeof_type): New.
(build_external_ref): Set C_DECL_USED or call
record_maybe_used_decl if appropriate.
* toplev.c (check_global_declarations): Check TREE_NO_WARNING.

testsuite:
* gcc.dg/c90-static-1.c, gcc.dg/c99-static-1.c,
gcc.dg/gnu99-static-1.c: New tests.

From-SVN: r87216

20 years agocp-tree.h (do_poplevel): New prototype.
Ziemowit Laski [Thu, 9 Sep 2004 00:48:27 +0000 (00:48 +0000)]
cp-tree.h (do_poplevel): New prototype.

[gcc/cp/ChangeLog]
2004-09-08  Ziemowit Laski  <zlaski@apple.com>

        * cp-tree.h (do_poplevel): New prototype.
        * semantics.c (do_poplevel): Make externally visible.

From-SVN: r87215

20 years agobuiltins.c: Fix prototype for fold_builtin_atan.
Eric Christopher [Thu, 9 Sep 2004 00:45:52 +0000 (00:45 +0000)]
builtins.c: Fix prototype for fold_builtin_atan.

2004-09-08  Eric Christopher  <echristo@redhat.com>

* builtins.c: Fix prototype for fold_builtin_atan.

From-SVN: r87214

20 years agoDaily bump.
GCC Administrator [Thu, 9 Sep 2004 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r87211

20 years ago* scanner.c (get_file): Add ATTRIBUTE_UNUSED.
Paul Brook [Wed, 8 Sep 2004 23:31:36 +0000 (23:31 +0000)]
* scanner.c (get_file): Add ATTRIBUTE_UNUSED.

From-SVN: r87207

20 years agobuiltins.c (fold_builtin_strlen, [...]): New functions.
Eric Christopher [Wed, 8 Sep 2004 23:24:40 +0000 (23:24 +0000)]
builtins.c (fold_builtin_strlen, [...]): New functions.

2004-09-08  Eric Christopher  <echristo@redhat.com>

        * builtins.c (fold_builtin_strlen, fold_builtin_sqrt, fold_builtin_cbrt,
fold_builtin_pow, fold_builtin_sin, fold_builtin_cos, fold_builtin_tan,
        fold_builtin_atan): New functions. Migrate function bodies...
        (fold_builtin_1): ... from here.

From-SVN: r87206

20 years agors6000.c (rs6000_stack_info): Correct alignment of save_size.
Alan Modra [Wed, 8 Sep 2004 23:19:58 +0000 (23:19 +0000)]
rs6000.c (rs6000_stack_info): Correct alignment of save_size.

* config/rs6000/rs6000.c (rs6000_stack_info): Correct alignment of
save_size.

From-SVN: r87205

20 years ago* vasprintf.c: Accept __va_copy in addition to va_copy.
Adam Nemet [Wed, 8 Sep 2004 21:29:42 +0000 (21:29 +0000)]
* vasprintf.c: Accept __va_copy in addition to va_copy.

From-SVN: r87203

20 years agoconfigure.ac (AC_CONFIG_COMMANDS): Don't create subdirectories and .d files.
Bryce McKinlay [Wed, 8 Sep 2004 19:57:13 +0000 (19:57 +0000)]
configure.ac (AC_CONFIG_COMMANDS): Don't create subdirectories and .d files.

2004-09-08  Bryce McKinlay  <mckinlay@redhat.com>

* configure.ac (AC_CONFIG_COMMANDS): Don't create subdirectories and
.d files.
* configure: Rebuilt.

From-SVN: r87202

20 years agopower4.md (power4-lmul): du4 feeds iu1.
David Edelsohn [Wed, 8 Sep 2004 19:55:26 +0000 (19:55 +0000)]
power4.md (power4-lmul): du4 feeds iu1.

        * config/rs6000/power4.md (power4-lmul): du4 feeds iu1.
        * config/rs6000/power5.md (power5-lmul): Same.

From-SVN: r87201

20 years agore PR rtl-optimization/17186 (ICE in move_for_stack_reg, at reg-stack.c:1065)
Richard Henderson [Wed, 8 Sep 2004 19:25:04 +0000 (12:25 -0700)]
re PR rtl-optimization/17186 (ICE in move_for_stack_reg, at reg-stack.c:1065)

        PR rtl-opt/17186
        * function.c (expand_function_end): Have fall-off-the-end
        return path jump around return register setup.

From-SVN: r87199

20 years agosparc.c (sparc_indent_opcode): New variable.
Eric Botcazou [Wed, 8 Sep 2004 19:17:53 +0000 (21:17 +0200)]
sparc.c (sparc_indent_opcode): New variable.

* config/sparc/sparc.c (sparc_indent_opcode): New variable.
(output_return): Do not test for the presence of the 'unimp' insn.
Use 'current_function_uses_only_leaf_regs' and 'final_sequence'
as predicates instead of custom ones.  Return raw strings when
possible.
(output_sibcall): Likewise.  Concatenate strings.
(output_ubranch): Remove kludge for TurboSPARC.
(output_cbranch): Remove 'noop' parameter.  Do not output 'nop'.
(output_v9branch): Likewise.
(print_operand): Use 'final_sequence' instead of 'dbr_sequence_length'.
<#>: Set sparc_indent_opcode if the delay slot is filled.
<(>: Likewise.
<)>: New operand to emit the displacement from the saved PC on return.
<@>: Remove.
* config/sparc/sparc.h (sparc_indent_opcode): Declare it.
(ASM_OUTPUT_OPCODE): New macro.
(PRINT_OPERAND_PUNCT_VALID_P): Remove '^' and add ')'.
* config/sparc/sparc.md (normal_branch, inverted_branch,
normal_fp_branch, inverted_fp_branch, normal_fpe_branch,
inverted_fpe_branch): Adjust call to output_cbranch.
(normal_int_branch_sp64, inverted_int_branch_sp64): Adjust
call to output_v9branch.
* config/sparc/sparc-protos.h (output_cbranch): Adjust.
(output_v9branch): Likewise.

From-SVN: r87198

20 years agodarwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add -segaddr, -segs_read_only_addr and...
Devang Patel [Wed, 8 Sep 2004 18:56:22 +0000 (11:56 -0700)]
darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add -segaddr, -segs_read_only_addr and -segs_read_write_addr.

       * config/darwin.h  (TARGET_OPTION_TRANSLATE_TABLE): Add -segaddr,
       -segs_read_only_addr and -segs_read_write_addr.
       (WORD_SWITCH_TAKES_ARG): Same.
      (LINK_SPEC): Same.
       * doc/invoke.texi: Document -segaddr, -segs_read_only_addr and
       -segs_read_write_addr.

       * gcc.dg/darwin-ld-20040828-1.c: New test.
       * gcc.dg/darwin-ld-20040828-2.c: New test.
       * gcc.dg/darwin-ld-20040828-3.c: New test.

From-SVN: r87197

20 years agobitfield-2.m: Make 'id' definition a typedef.
Ziemowit Laski [Wed, 8 Sep 2004 18:48:56 +0000 (18:48 +0000)]
bitfield-2.m: Make 'id' definition a typedef.

[gcc/testsuite/ChangeLog]
2004-09-08  Ziemowit Laski  <zlaski@apple.com>

* objc.dg/bitfield-2.m: Make 'id' definition a typedef.
* obj.dg/bitfield-4.m: Allow 'unsigned' in addition to 'unsigned int'
in error message.
* objc.dg/id-1.m: Attempt to define 'id' in an incompatible fashion.
* objc.dg/method-6.m: Allow 'unsigned' in addition to 'unsigned int'
in error message.
* objc.dg/proto-qual-1.m: Protocol qualifiers now appear before the
types they qualify.
* objc.dg/type-size-2.m: Fix wording in comment.
* objc.dg/va-meth-1.m: New test case.

From-SVN: r87196

20 years agofunction.c (reference_callee_copied): New.
Richard Henderson [Wed, 8 Sep 2004 18:45:21 +0000 (11:45 -0700)]
function.c (reference_callee_copied): New.

        * function.c (reference_callee_copied): New.
        (assign_parm_setup_reg): Use it.
        * calls.c (initialize_argument_information): Likewise.
        (emit_library_call_value_1): Likewise.
        * function.h (reference_callee_copied): Declare.

        * target.h (struct gcc_target): Add callee_copies.
        * target-def.h (TARGET_CALLEE_COPIES): New.
        (TARGET_PASS_BY_REFERENCE): Update default.
        * expr.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * targhooks.c (hook_callee_copies_named): New.
        (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false): Rename from
        hook_pass_by_reference_false.
        (hook_bool_CUMULATIVE_ARGS_mode_tree_bool_true): New.
        * targhooks.h: Update decls.
        * config/arc/arc.c (TARGET_CALLEE_COPIES): New.
        * config/arc/arc.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/frv/frv-protos.h (frv_function_arg_callee_copies): Remove.
        * config/frv/frv.c (frv_function_arg_callee_copies): Remove.
        * config/frv/frv.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/iq2000/iq2000.c (TARGET_CALLEE_COPIES): New.
        * config/iq2000/iq2000.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/m68hc11/m68hc11.c (TARGET_CALLEE_COPIES): New.
        * config/m68hc11/m68hc11.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/mips/mips.c (TARGET_CALLEE_COPIES): New.
        (mips_callee_copies): New.
        * config/mips/mips.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/mmix/mmix.c (TARGET_CALLEE_COPIES): New.
        * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/mn10300/mn10300.c (TARGET_CALLEE_COPIES): New.
        * config/mn10300/mn10300.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/pa/pa.c (TARGET_CALLEE_COPIES): New.
        * config/pa/pa.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/sh/sh.c (sh_callee_copies): New.
        (TARGET_CALLEE_COPIES): New.
        * config/sh/sh.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * config/v850/v850.c (TARGET_CALLEE_COPIES): New.
        * config/v850/v850.h (FUNCTION_ARG_CALLEE_COPIES): Remove.
        * doc/tm.texi (TARGET_CALLEE_COPIES): Replace documentation
        for FUNCTION_ARG_CALLEE_COPIES.
        * doc/rtl.texi (CALL_INSN_FUNCTION_USAGE): Update.

From-SVN: r87195

20 years agotree-if-conv.c (find_phi_replacement_condition): Return true edge block.
Devang Patel [Wed, 8 Sep 2004 18:25:01 +0000 (11:25 -0700)]
tree-if-conv.c (find_phi_replacement_condition): Return true edge block.

        * tree-if-conv.c (find_phi_replacement_condition): Return true edge block.
        (replace_phi_with_cond_modify_expr): Select conditional expr args based on
        true edge basic block.

From-SVN: r87194

20 years agotree-ssa-operands.c (add_stmt_operand): Use V_MUST_DEF even for variables being alias...
Jan Hubicka [Wed, 8 Sep 2004 17:36:39 +0000 (19:36 +0200)]
tree-ssa-operands.c (add_stmt_operand): Use V_MUST_DEF even for variables being alias set.

* tree-ssa-operands.c (add_stmt_operand): Use V_MUST_DEF even for
variables being alias set.

From-SVN: r87193

20 years agofinal.c (shorten_branches, [...]): Use gcc_assert and gcc_unreachable.
Nathan Sidwell [Wed, 8 Sep 2004 15:44:46 +0000 (15:44 +0000)]
final.c (shorten_branches, [...]): Use gcc_assert and gcc_unreachable.

* final.c (shorten_branches, final, get_insn_template,
output_alternate_entry_point, final_scan_insn, alter_subreg,
alter_cond, output_operand, asm_fprintf, final_forward_branch_p,
leaf_renumber_regs_insn): Use gcc_assert and gcc_unreachable.
* fix-header.c (lookup_std_proto): Likewise.
* flow.c (first_insn_after_basic_block_note, verify_wide_reg,
verify_local_live_at_start, update_life_info, mark_reg,
calculate_global_regs_live, allocate_reg_life_data,
init_propagate_block_info, mark_set_regs, flush_reg_cond_reg_1,
ior_reg_cond, not_reg_cond, and_reg_cond, elim_reg_cond,
attempt_auto_inc, mark_used_reg, mark_used_regs): Likewise.
* fold-const.c (force_fit_type, div_and_round_double,
may_negate_without_overflow_p, int_const_binop, const_binop,
size_binop, size_diffop, fold_convert_const, fold_convert,
invert_tree_comparison, swap_tree_comparison,
comparison_to_compcode, compcode_to_comparison, invert_truthvalue,
range_binop, make_range, fold_cond_expr_with_comparison,
fold_div_compare, fold, fold_checksum_tree, fold_negate_const,
fold_abs_const, fold_not_const, fold_relational_const, round_up,
round_down): Likewise.
* function.c (find_function_data, assign_stack_temp_for_type,
instantiate_virtual_regs_lossage, aggregate_value_p,
assign_parm_find_entry_rtl, assign_parm_setup_block,
expand_function_start, expand_function_end, keep_stack_depressed,
handle_epilogue_set, thread_prologue_and_epilogue_insns): Likewise.

From-SVN: r87192

20 years agoltmain.sh: Use $pic_object as $non_pic_object if $non_pic_object=none.
David Edelsohn [Wed, 8 Sep 2004 15:43:46 +0000 (15:43 +0000)]
ltmain.sh: Use $pic_object as $non_pic_object if $non_pic_object=none.

        * ltmain.sh: Use $pic_object as $non_pic_object if
        $non_pic_object=none.

From-SVN: r87191

20 years agoMakefile.in (tree-loop-linear.o): Added.
Daniel Berlin [Wed, 8 Sep 2004 15:28:56 +0000 (15:28 +0000)]
Makefile.in (tree-loop-linear.o): Added.

2004-09-08  Daniel Berlin  <dberlin@dberlin.org>

* Makefile.in (tree-loop-linear.o): Added.
(OBJS-common): Add tree-loop-linear.o
* common.opt: New flag, ftree-loop-linear.
* timevar.def: New timevar, TV_TREE_LOOP_LINEAR.
* tree-flow.h: Add prototype for linear_transform_loops.
* tree-optimize.c: Add linear transform after vectorization.
* tree-pass.h: Add struct pass_linear_transform.
* tree-ssa-loop.c: Add pass_linear_transform.
* tree-loop-linear.c: New file.
* lambda-code.c: gcc_assertify.
(gcc_loop_to_lambda_loop): Handle all exit tests.
Handle case where we have (invariant >= induction var).
(find_induction_var_from_exit_cond): Ditto.

From-SVN: r87190

20 years agoarray.c: Don't include assert.h.
Paul Brook [Wed, 8 Sep 2004 14:33:03 +0000 (14:33 +0000)]
array.c: Don't include assert.h.

* array.c: Don't include assert.h.
* data.c: Don't include assert.h.  Replace assert and abort with
gcc_assert and gcc_unreachable.
* dependency.c: Ditto.
* f95-lang.c: Ditto.
* iresolve.c: Ditto.
* resolve.c: Ditto.
* simplify.c: Ditto.
* symbol.c: Ditto.
* trans-array.c: Ditto.
* trans-common.c: Ditto.
* trans-const.c: Ditto.
* trans-decl.c: Ditto.
* trans-expr.c: Ditto.
* trans-intrinsic.c: Ditto.
* trans-io.c: Ditto.
* trans-stmt.c: Ditto.
* trans-types.c: Ditto.
* trans.c: Ditto.

From-SVN: r87187

20 years agolinker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.
Benjamin Kosnik [Wed, 8 Sep 2004 13:54:18 +0000 (13:54 +0000)]
linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.

2004-09-08  Benjamin Kosnik  <bkoz@redhat.com>

* config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.

From-SVN: r87186

20 years agotree-ssa-alias.c (compute_flow_insensitive_aliasing): If type memory tag is call...
Jie Zhang [Wed, 8 Sep 2004 11:07:35 +0000 (11:07 +0000)]
tree-ssa-alias.c (compute_flow_insensitive_aliasing): If type memory tag is call clobbered, so are its aliases.

* tree-ssa-alias.c (compute_flow_insensitive_aliasing): If type
memory tag is call clobbered, so are its aliases.
(group_aliases): When two memory tags being grouped, if one is
call clobbered, so are the other and its aliases.
(add_may_alias): Remove call-clobbering stuff.
(replace_may_alias): Likewise.
(merge_pointed_to_info): Merge pt_global_mem.

From-SVN: r87182

20 years agocgraph.c (cgraph_remove_node): Free DECL_INITIAL field of node.
Jan Hubicka [Wed, 8 Sep 2004 09:28:06 +0000 (11:28 +0200)]
cgraph.c (cgraph_remove_node): Free DECL_INITIAL field of node.

* cgraph.c (cgraph_remove_node): Free DECL_INITIAL field of node.
* cgraphunit.c (verify_cgraph): Don't verify on syntax errors.
(cgraph_expand_function): Remove stale cgraph edges of currently
compiled function; fix non-unit-at-a-time code copying function
node for later reuse.

From-SVN: r87181

20 years agoFix cp changelog from previous checkin
Nathan Sidwell [Wed, 8 Sep 2004 08:10:52 +0000 (08:10 +0000)]
Fix cp changelog from previous checkin

From-SVN: r87180

20 years agovec.c (vec_p_reserve, [...]): Rename to ...
Nathan Sidwell [Wed, 8 Sep 2004 08:08:56 +0000 (08:08 +0000)]
vec.c (vec_p_reserve, [...]): Rename to ...

* vec.c (vec_p_reserve, vec_o_reserve): Rename to ...
(vec_gc_p_reserve, vec_gc_o_reserve): ... here. Clone to
(vec_heap_p_reserve, vec_heap_o_reserve): ... here, adjust.
(vec_gc_free, vec_heap_free): New.
* vec.h (DEF_VEC_GC_P, DEF_VEC_MALLOC_P): New.
(DEF_VEC_P): Add allocator argument. Adjust.
(DEF_VEC_GC_O, DEF_VEC_MALLOC_O): New.
(DEF_VEC_O): Add allocator argument. Adjust.
(VEC(free)): New.

* tree.h (tree): Define a GC'd vector.
* lamba-code.c (lambda_loop): Likewise.
* value-prof.h (histogram_value): Likewise.
* cp/cp-tree.h (tree_pair_s): Likewise.
* cp/name-lookup.h (cxx_saved_binding, cp_class_binding): Likewise.
* cp/semantics.c (deferred_access): Likewise.

From-SVN: r87179

20 years agoemit-rtl.c (immed_double_const): Use gcc_assert and gcc_unreachable.
Nathan Sidwell [Wed, 8 Sep 2004 08:05:14 +0000 (08:05 +0000)]
emit-rtl.c (immed_double_const): Use gcc_assert and gcc_unreachable.

* emit-rtl.c (immed_double_const): Use gcc_assert and gcc_unreachable.
(gen_rtx_SUBREG, gen_reg_rtx, mark_user_reg, subreg_hard_regno,
gen_lowpart_common, gen_highpart, gen_highpart_mode,
subreg_highpart_offset, operand_subword, operand_subword_force,
mem_expr_equal_p, set_mem_attributes_minus_bitpos,
set_mem_alias_set, change_address_1, verify_rtx_sharing,
copy_most_rtx, set_first_insn, set_last_insn, prev_cc0_setter,
try_split, add_insn_after, add_insn_before, remove_insn,
remove_unnecessary_notes, emit_insn_before, emit_jump_insn_before,
emit_call_insn_before, emit_insn_after, emit_jump_insn_after,
emit_call_insn_after, emit_insn, emit_jump_insn, emit_call_insn,
set_unique_reg_note, emit, push_to_full_sequence, copy_insn_1,
gen_const_vector_0, emit_copy_of_insn_after): Likewise.
* et-forest.c (set_prev, set_next, et_check_occ_sanity,
record_path_before_1, check_path_after_1, check_path_after): Likewise.
* except.c (gen_eh_region, resolve_one_fixup_region,
remove_unreachable_regions, convert_from_eh_region_ranges_1,
add_ehl_entry, duplicate_eh_region_1, build_post_landing_pads,
connect_post_landing_pads, sjlj_emit_function_exit,
remove_exception_handler_label, remove_eh_handler,
reachable_next_level, collect_one_action_chain,
output_function_exception_table): Likewise.
* explow.c (trunc_int_for_mode, copy_to_mode_reg,
optimize_save_area_alloca, allocate_dynamic_stack_space,
probe_stack_range, hard_function_value): Likewise.
* expmed.c (mode_for_extraction, store_bit_field,
store_fixed_bit_field, extract_bit_field, expand_shift,
expand_mult_const, expand_mult, choose_multiplier,
expand_mult_highpart, expand_divmod, emit_store_flag,
do_cmp_and_jump): Likewise.
* expr.c (convert_move, convert_modes, move_by_pieces,
move_by_pieces_ninsns, move_by_pieces_1, emit_block_move,
move_block_from_reg, gen_group_rtx, emit_group_load,
emit_group_move, emit_group_store, use_reg, use_regs,
can_store_by_pieces, store_by_pieces, store_by_pieces_1,
emit_move_insn, emit_move_insn_1, emit_push_insn,
expand_assignment, store_expr, count_type_elements,
store_constructor, store_field, safe_from_p, expand_var,
expand_expr_addr_expr, expand_expr_real_1, do_store_flag): Likewise.

From-SVN: r87178

20 years agodbxout.c (dbxout_type, [...]): Use gcc_assert and gcc_unreachable.
Nathan Sidwell [Wed, 8 Sep 2004 07:47:45 +0000 (07:47 +0000)]
dbxout.c (dbxout_type, [...]): Use gcc_assert and gcc_unreachable.

* dbxout.c (dbxout_type, dbxout_type_name, dbxout_symbol): Use
gcc_assert and gcc_unreachable.
* ddg.c (create_ddg_dependence, add_deps_for_def,
add_deps_for_use, create_ddg, add_edge_to_ddg): Likewise.
* df.c (df_ref_unlink, df_ref_record, df_uses_record,
df_reg_def_chain_create, df_reg_use_chain_create, df_analyze,
df_insn_delete, df_refs_reg_replace, df_ref_reg_replace,
df_insns_modify, df_pattern_emit_before, df_bb_reg_live_start_p,
df_bb_reg_live_end_p, df_bb_regs_lives_compare,
df_bb_single_def_use_insn_find, dataflow_set_a_op_b,
dataflow_set_copy, hybrid_search, diagnostic.c,
diagnostic_build_prefix, diagnostic_count_diagnostic): Likewise.
* dojump.c (do_jump): Likewise.
* dominance.c (calc_dfs_tree_nonrec, calc_dfs_tree,
compute_dom_fast_query, calculate_dominance_info,
free_dominance_info, get_immediate_dominator,
set_immediate_dominator, get_dominated_by,
redirect_immediate_dominators, nearest_common_dominator,
dominated_by_p, verify_dominators, recount_dominator,
iterate_fix_dominators, add_to_dominance_info,
delete_from_dominance_info): Likewise.
* dwarf2asm.c (size_of_encoded_value, eh_data_format_name,
dw2_asm_output_delta_uleb128, dw2_asm_output_delta_sleb128,
dw2_force_const_mem, dw2_asm_output_encoded_addr_rtx): Likewise.
* dwarf2out.c (expand_builtin_init_dwarf_reg_sizes, reg_save,
initial_return_save, stack_adjust_offset, dwarf2out_stack_adjust,
flush_queued_reg_saves, dwarf2out_frame_debug_expr,
dwarf2out_frame_debug, dw_cfi_oprnd1_desc, output_cfi,
output_call_frame_info, output_loc_operands, build_cfa_loc,
decl_ultimate_origin, AT_flag, AT_int, AT_unsigned, AT_string,
AT_string_form, add_AT_specification, AT_ref, set_AT_ref_external,
AT_loc, AT_loc_list, AT_addr, AT_lbl, add_child_die,
splice_child_die, attr_checksum, same_dw_val_p,
break_out_includes, build_abbrev_table, size_of_die, mark_dies,
unmark_dies, value_format, output_loc_list, output_die,
output_pubnames, output_aranges, base_type_die, is_base_type,
modified_type_die, dbx_reg_number, multiple_reg_loc_descriptor,
mem_loc_descriptor, loc_descriptor, loc_descriptor_from_tree_1,
field_byte_offset, add_data_member_location_attribute,
add_const_value_attribute, rtl_for_decl_location,
add_location_or_const_value_attribute, add_byte_size_attribute,
add_bit_offset_attribute, add_bit_size_attribute,
add_abstract_origin_attribute, pop_decl_scope, scope_die_for,
decl_start_label, gen_formal_parameter_die,
gen_type_die_for_member, gen_subprogram_die, gen_label_die,
gen_typedef_die, gen_type_die, gen_tagged_type_instantiation_die,
force_decl_die, force_type_die, gen_decl_die,
dwarf2out_imported_module_or_decl, prune_unused_types_prune,
dwarf2out_finish): Likewise.

From-SVN: r87176

20 years agoMakefile.in (builtins.o): Depend on tree-mudflap.h.
Andreas Tobler [Wed, 8 Sep 2004 06:04:15 +0000 (08:04 +0200)]
Makefile.in (builtins.o): Depend on tree-mudflap.h.

[gcc/ChangeLog]
2004-09-08  Andreas Tobler  <toa@pop.agri.ch>

        * Makefile.in (builtins.o): Depend on tree-mudflap.h.
        * builtins.c: Include tree-mudflap.h.

From-SVN: r87175

20 years agoi386.c (ix86_prepare_fp_compare_args): Do not force operand 0.0 into register in...
Uros Bizjak [Wed, 8 Sep 2004 05:08:26 +0000 (07:08 +0200)]
i386.c (ix86_prepare_fp_compare_args): Do not force operand 0.0 into register in XFmode.

        * config/i386/i386.c (ix86_prepare_fp_compare_args): Do not
        force operand 0.0 into register in XFmode. Also do not force
        operand 0.0 into register if !TARGET_CMOVE.

        * config/i386/i386.md (*cmpfp_0): Delete. Remove comment.
        (*cmpfp_0_sf, cmpfp_0_df, cmpfp_0_xf): New patterns to
        implement ftst x87 instruction.
        (*fp_jcc_7): New insn pattern. Change corresponding split
        pattern to handle "general_operand" instead of
        "nonimmediate_operand".

----------------------------------------------------------------------

From-SVN: r87173

20 years ago* doc/rtl.texi (Insns): Document NOTE_INSN_FUNCTION_BEG.
Ben Elliston [Wed, 8 Sep 2004 05:03:02 +0000 (05:03 +0000)]
* doc/rtl.texi (Insns): Document NOTE_INSN_FUNCTION_BEG.

From-SVN: r87172

20 years agobuiltins.c (std_gimplify_va_arg_expr): Mark INDIRECT_REF nodes generated from standar...
Frank Ch. Eigler [Wed, 8 Sep 2004 01:34:03 +0000 (01:34 +0000)]
builtins.c (std_gimplify_va_arg_expr): Mark INDIRECT_REF nodes generated from standard va_arg expansion.

2004-09-07  Frank Ch. Eigler  <fche@redhat.com>

* builtins.c (std_gimplify_va_arg_expr): Mark INDIRECT_REF nodes
generated from standard va_arg expansion.
* tree-mudflap.c (mx_xform_derefs_1): Omit instrumentation from
marked nodes.
(mf_varname_tree, mf_file_function_line_tree): Add some support
for column numbers if compiled with USE_MAPPED_LOCATION.

From-SVN: r87170

20 years agoc-decl.c (groktypename_in_parm_context): Remove function.
Ziemowit Laski [Wed, 8 Sep 2004 01:24:26 +0000 (01:24 +0000)]
c-decl.c (groktypename_in_parm_context): Remove function.

[gcc/ChangeLog]
2004-09-07  Ziemowit Laski  <zlaski@apple.com>

        * c-decl.c (groktypename_in_parm_context): Remove function.
        * c-tree.h (groktypename_in_parm_context): Remove prototype.

From-SVN: r87169

20 years agoMakefile.in (c-parse.o): Depend on $(C_COMMON_H).
Ziemowit Laski [Wed, 8 Sep 2004 00:49:44 +0000 (00:49 +0000)]
Makefile.in (c-parse.o): Depend on $(C_COMMON_H).

[gcc/ChangeLog]
2004-09-07  Ziemowit Laski  <zlaski@apple.com>

* Makefile.in (c-parse.o): Depend on $(C_COMMON_H).
* c-parse.in: Include c-common.h instead of objc-act.h.
(ivar_decl_list, ivar_decls, ivar_decl, ivars, ivar_declarator,
myparms, myparm): Remove %type declarations.
(methodtype, optparms, OBJC_TYPE_QUAL, objc_quals, objc_qual,
objc_typename, objc_try_catch_stmt, optellipsis): Add %type
declarations.
(objc_inherit_code, objc_public_flag): Remove.
(typespec_nonreserved_nonattr): Call
objc_get_protocol_qualified_type() instead of get_static_reference()
and get_protocol_reference().
(stmt_nocomp): Call grokparm() on @catch parameter.
(objcdef): Move semantic action to objc_finish_implementation().
(classdef): Move semantic action to objc_start_class_interface(),
objc_continue_interface(), objc_finish_interface(),
objc_start_class_implementation(), objc_continue_implementation(),
objc_start_category_interface() and
objc_start_category_implementation().
(protocoldef): Move semantic actions to objc_start_protocol() and
objc_finish_interface().
(ivar_decl_list): Remove nonterminal.
(visibility_spec): Move semantic actions to objc_set_visibility().
(ivar_decls): Remove assignment to $$.
(ivar_decl): Rephrase in terms of component_decl; call
objc_add_instance_variable().
(ivars, ivar_declarator): Remove nonterminals.
(opt_semi): New nonterminal.
(methodtype): Remove semantic actions.
(methoddef): Move semantic actions to objc_set_method_type(),
objc_start_method_definition() and objc_finish_method_definition().
(methodproto): Move semantic actions to objc_set_method_type() and
objc_add_method_declaration().
(methoddecl): Use objc_typename instead of typename; move semantic
actions to objc_build_method_signature().
(optarglist, myxdecls, mydecl, myparms, myparm): Remove nonterminals.
(optparmlist): Express in terms of optparms and optellipsis.
(optparms, optellipsis, objc_qual, objc_quals, objc_typename): New
nonterminals.
(keyworddecl): Use objc_typename instead of typename.
(rid_to_yy): Mark RID_IN, RID_OUT, RID_INOUT, RID_BYCOPY, RID_BYREF
and RID_ONEWAY as returning OBJC_TYPE_QUAL to yyparse().

[gcc/objc/ChangeLog]
2004-09-07  Ziemowit Laski  <zlaski@apple.com>

* Make-lang.in (objc/objc-parse.o): Depend on $(C_COMMON_H) instead of
objc/objc-act.h.
(objc/objc-act.o): Depend on $(HASHTAB_H).
* objc-act.c: Include hashtab.h; in ObjC++ mode, include cp-tree.h and
objcp-decl.h instead of c-tree.h.
(build_module_descriptor, get_class_ivars, synth_id_with_class_suffix,
error_with_ivar, gen_method_decl, gen_declaration, setup_string_decl,
build_protocol_template): Adjust prototypes.
(build_module_initializer_routine, start_class, continue_class,
finish_class, start_method_def, objc_start_function, start_protocol,
build_method_decl, objc_add_method, add_instance_variable,
build_ivar_reference, is_ivar, is_private, get_super_receiver,
build_selector_table_decl, objc_push_parm, objc_get_parm_info,
gen_type_name, gen_type_name_0, start_var_decl, finish_var_decl,
create_field_decl): New prototypes.
(objc_expand_function_end, comp_method_with_proto, objc_expr_last,
gen_declaration_1, gen_declarator, is_complex_decl, adorn_decl,
define_decl, create_builtin_decl, gen_declspecs): Remove prototypes.
(TYPE_ID): Rename to OBJECT_TYPEDEF_NAME.
(CLASS_TYPEDEF_NAME): New.
(TAG_EXECCLASS): Change from a global variable to a #define.
(TAG_RETURN_STRUCT): Delete.
(TAG_GNUINIT): New, holds '__objc_gnu_init' name.
(objc_inherit_code, objc_public_flag): New, moved from c-parse.in.
(string_descriptor): New struct.
(string_htab): New hash table.
(string_hash, string_eq): New prototypes.
(generate_struct_by_value_array): Call create_field_decl() instead of
create_builtin_decl().
(objc_init): Do not initialize objc_ellipsis_node or TAG_EXECCLASS;
In ObjC++ mode, call cxx_init() instead of c_objc_common_init().
(objc_finish_file): In ObjC++, call instantiate_pending_templates()
and cp_finish_file().
(define_decl, get_static_reference, get_protocol_reference,
create_builtin_decl): Remove functions.
(objc_start_class_interface, objc_start_category_interface,
objc_start_protocol, objc_continue_interface, objc_finish_interface,
objc_start_class_implementation, objc_start_category_implementation,
objc_continue_implementation, objc_finish_implementation,
objc_set_visibility, objc_set_method_type,
objc_build_method_signature, objc_add_method_declaration,
objc_start_method_definition, objc_add_instance_variable,
objc_get_protocol_qualified_type, create_field_decl,
start_var_decl, finish_var_decl): New functions.
(setup_string_decl): Simplify since it is only called once.
(synth_module_prologue): Call build_class_template(); predefine 'id'
and 'Class' as typedefs; rename 'temp_type' to 'type'; disable debug
hooks for duration of function; fix GNU runtime messenger signatures
to correspond to reality; forward-declare '__objc_exec_class' for the
GNU runtime; call build_selector_table_decl(); in ObjC++ mode, generate
'extern "C" { ... }' wrappers around synthesized declarations; call
build_protocol_template() and build_category_template().
(string_hash, string_eq): New functions.
(objc_build_string_object): Check metaclass correctness only once;
store string literals in hash table.
(objc_build_constructor): Do not convert initializer elements;
adjust for ObjC++ impedance mismatch.
(build_objc_symtab_template): Call create_field_decl() instead of
create_builtin_decl().
(init_objc_symtab): Add missing conversion to initializer element.
(build_metadata_decl): Call start_var_decl() instead of define_decl().
(generate_objc_symtab_decl): Do not call build_category_template();
call start_var_decl() and finish_var_decl() instead of start_decl()
and finish_decl().
(build_module_descriptor): Call create_field_decl() instead of
grokfield(); call start_var_decl() and finish_var_decl() instead of
start_decl() and finish_decl(); always mark module descriptor as
used; move GNU runtime-specific functionality to
build_module_initializer_routine().
(build_module_initializer_routine): New function, broken off of
build_module_descriptor().
(objc_static_init_needed_p, objc_generate_static_init_call): New
functions.
(generate_static_references, generate_strings,
build_selector_translation_table, generate_descriptor_table,
generate_ivars_list, generate_dispatch_table, generate_category): Call
start_var_decl() and finish_var_decl() instead of start_decl() and
finish_decl(); build a type directly instead of via groktypename().
(build_selector_reference_decl, build_selector_table_decl,
build_class_reference_decl, build_protocol_reference,
generate_objc_image_info): Call start_var_decl() instead of
build_decl().
(build_selector_reference): For GNU runtime, do not call
build_selector_reference_decl().
(build_selector, build_typed_selector_reference): Always convert
result to the selector type.
(add_objc_string): Cast return value to 'char *'.
(build_method_prototype_template, build_selector_template,
build_method_template): Use actual selector type for fields
pointing to selectors.
(finish_objc): For GNU runtime, call
build_module_initializer_routine() after build_module_descriptor().
(generate_protocol_list, generate_shared_structures): Call
start_var_decl() and finish_var_decl() instead of start_decl() and
finish_decl(); build a type directly instead of via
groktypename().
(synth_id_with_class_suffix): Return a string.
(get_arg_type_list): For instance methods, use the instance type for
'self'; do not call groktypename_in_parm_context().
(build_objc_string_decl): Squash redeclaration errors in ObjC++.
(objc_is_class_name): Use OBJC_TYPE_NAME instead of TYPE_NAME;
handle RECORD_TYPEs in ObjC as well as ObjC++.
(objc_is_id): New function.
(objc_is_object_ptr): Return the canonical type node.
(objc_get_class_ivars): Simplify using get_class_ivars().
(get_class_ivars): Remove second parameter; create a fresh copy
of the ivar list for each call; do not check for existence of
super class.
(objc_eh_runtime_type): Mark #ifndef OBJCPLUS.
(objc_init_exceptions): When using SJLJ-style exceptions, require
the use of '-fobjc-exceptions' flag; do not require it for DWARF-style
exceptions.
(objc_build_exc_ptr, next_sjlj_build_try_catch_finally): Use
objc_object_type instead of objc_id_type.
(objc_begin_catch_clause): Convert the incoming PARM_DECL into
a VAR_DECL before placing it in the appropriate scope; do not
call define_decl(); adjust call to c_begin_compound_stmt();
use objc_object_type instead of objc_id_type.
(build_next_objc_exception_stuff): Call create_field_decl() instead
of create_builtin_decl(); construct type directly instead of calling
groktypename(); use OBJC_VOID_AT_END to mark end of function parameters.
(build_private_template): Adjust call to get_class_ivars(); build
a type directly instead of via groktypename().
(build_protocol_template, build_method_prototype_list_template,
build_method_prototype_template, build_category_template,
build_selector_template, build_class_template, build_super_template,
build_ivar_template, build_ivar_list_template,
build_method_list_template, build_method_template):
Call create_field_decl() instead of grokfield().
(objc_method_parm_type): Do not call groktypename().
(generate_descriptor_table): Call start_var_decl() and
finish_var_decl() instead of start_decl() and finish_decl().
(generate_method_descriptors, build_protocol_initializer,
generate_dispatch_tables, build_category_initializer,
build_shared_structure_initializer): Do not call groktypename().
(generate_protocols): Call start_var_decl() and finish_var_decl()
instead of start_decl() and finish_decl(); do not call groktypename().
(error_with_ivar): Remove last parameter.
(check_ivars): Do not iterate ovar CLASS_RAW_IVARS lists in addition
to CLASS_IVARS lists; adjust calls to error_with_ivar().
(generate_ivar_lists): Convert one of the initializer elements; do
not call groktypename().
(get_arg_type_list, start_method_def, gen_method_def): Account for
new representation of variable arguments and '...' in Objective-C
methods; add Objective-C++ impedance matching code.
(is_objc_type_qualifier): Remove function.
(adjust_type_for_id_default): Simplify; there is no longer a need to
wade through declspecs.
(lookup_interface, start_class, continue_class,
finish_class, start_method_def, start_protocol, build_method_decl,
objc_add_method, add_instance_variable, build_ivar_reference,
is_ivar, is_private, get_super_receiver, objc_build_finally_epilogue):
Make into static functions.
(receiver_is_class_object): Use new IS_CLASS() macro.
(objc_build_message_expr): Tweak ObjC++ message argument handling;
call objc_finish_message_expr() instead of finish_message_expr().
(finish_message_expr): Rename to objc_finish_message_expr(); use
OBJC_TYPE_NAME and OBJC_SET_TYPE_NAME macros instead of TYPE_NAME.
call gen_type_name() instead of gen_declaration(); call objc_is_id()
instead of using IS_ID and IS_CLASS; Use objc_class_name instead of
calling get_identifier("Class"); handle CONVERT_EXPRs in receiver.
(build_objc_method_call, warn_with_method): Do not call groktypename().
(build_ivar_reference): Call convert() instead of clobbering in a
type.
(hash_init): Initialize string_htab hash table.
(add_instance_variable): Simplify parameter list; do not call grokfield();
do not populate CLASS_IVARS list.
(start_class): Check for the existence of super class, if one was specified.
(continue_class): Use CLASS_RAW_IVARS rather than CLASS_IVARS; do not
call build_class_template(); adjust call to get_class_ivars(); call
build_decl(), pushdecl() and finish_decl() instead of define_decl().
(finish_class): Call build_decl(), pushdecl() and finish_decl() instead
of define_decl().
(add_protocols): Use PROTOCOL_BINFO_ELTS for the tree vector size.
(start_protocol): Do not call build_protocol_template(); use
PROTOCOL_BINFO_ELTS for the tree vector size.
(encode_type_qualifiers): Do not handle the 'const' qualifier here.
(encode_pointer): Encode 'const char *' as 'r*', for backwards
compatibility.
(encode_array): Use HOST_WIDE_INT_PRINT_DEC instead of "%ld".
(encode_type): Handle the 'const' qualifier here.
(objc_parmlist): New global variable, sued by objc_push_parm and
objc_get_parm_info().
(objc_push_parm, objc_get_parm_info): New functions.
(objc_expr_last): Remove function.
(synth_self_and_ucmd_args): For instance methods, use the instance
type for 'self'; call objc_push_parm() instead of push_parm_decl().
(start_method_def): Do not call push_scope(), declare_parm_level(),
pop_scope(), push_parm_decl(), store_parm_decls() or objc_expr_last();
just use objc_push_parm() and objc_get_parm_info().
(comp_method_with_proto): Remove function.
(objc_types_are_equivalent): Strip away indirections before comparing
underlying types.
(comp_proto_with_proto): Do not call groktypename(); types are no
longer in raw declspec format.
(objc_start_function): New function.
(really_start_method): Call comp_proto_with_proto() instead of
comp_method_with_proto(); call objc_start_function() instead of
hand-crafting a function declarator.
(continue_method_def, objc_expand_function_end): Remove functions.
(get_super_receiver): Call objc_get_current_scope() instead of
get_current_scope(); reference 'super_class' field (instead of
'class').
(finish_method_def): Rename to objc_finish_method_definition() and
add a function decl parameter; move method encoding call from
objc_expand_function_end().
(is_complex_decl, adorn_decl, gen_declarator, gen_declspecs,
gen_declaration_1): Remove functions.
(tmpbuf, RAW_DECLSPEC): Remove.
(gen_declaration): Remove second parameter; simplify to deal
with TYPE_P nodes instead of raw declspecs.
(gen_type_name, gen_type_name_0): New functions.
(gen_method_decl): Remove second parameter; call gen_type_name()
instead of gen_declaration_1().
(dump_interface): Adjust calls to gen_declaration() and
gen_method_decl(); do not allocate a separate string buffer.
(init_objc): Allocate a larger string buffer to accommodate
dump_interface(); adjust call to build_module_descriptor();
add call to build_module_initializer_routine() for the GNU
runtime.
(generate_classref_translation_entry): Do not call start_decl(); call
finish_var_decl() instead of finish_decl(); call convert() instead of
build_c_cast().
* objc-act.h (CLASS_OWN_IVARS): Remove accessor.
(CLASS_BINFO_ELTS): Reduce from 6 to 5, now that CLASS_OWN_IVARS is
gone.
(OCTI_GNU_INIT_DECL, GNU_INIT_decl): New.
(OCTI_ELLIPSIS_NODE, objc_ellipsis_node): Remove.
(OCTI_ID_ID, id_type, objc_id_id): Rename to OCTI_ID_NAME,
objc_object_type and objc_object_name, respectively.
(OCTI_CLS_REF, OCTI_CLASS_NAME, objc_class_reference,
objc_class_name): New.
(IS_CLASS): New macro.
(IS_ID, IS_SUPER): Robustify.
(OCTI_EXECCLASS_DECL, execclass_decl): New.
(finish_file, start_class, continue_class, finish_class,
start_method_def, continue_method_def, finish_method_def,
start_protocol, finish_protocol, objc_build_throw_stmt,
objc_build_try_catch_finally_stmt, objc_build_synchronized_prologue,
objc_build_synchronized_epilogue, objc_build_try_prologue,
objc_build_try_epilogue, objc_build_catch_stmt, objc_build_catch_epilogue,
objc_build_finally_prologue, objc_build_finally_epilogue,
is_ivar, is_private, is_public, add_instance_variable, objc_add_method,
get_super_receiver, objc_clear_super_receiver, get_class_ivars_from_name,
get_class_reference, get_static_reference, get_object_reference,
build_message_expr, finish_message_expr, build_selector_expr,
build_ivar_reference, build_keyword_decl, build_method_decl,
build_protocol_expr, build_objc_string_object, objc_declare_alias,
objc_declare_class, objc_declare_protocols, objc_comptypes,
objc_check_decl, build_encode_expr): Remove prototypes.
(imp_count, cat_count): Make GGC-aware.
(OBJC_SET_TYPE_NAME): New macro.

From-SVN: r87168

20 years agotm.texi (MD_UNWIND_SUPPORT): Document.
Alan Modra [Wed, 8 Sep 2004 00:17:19 +0000 (00:17 +0000)]
tm.texi (MD_UNWIND_SUPPORT): Document.

* doc/tm.texi (MD_UNWIND_SUPPORT): Document.
(MD_FALLBACK_FRAME_STATE_FOR): Update.
* unwind-dw2.c (MD_UNWIND_SUPPORT): #include if defined.
(uw_frame_state_for): Adjust MD_FALLBACK_FRAME_STATE_FOR invocation.
(MD_FROB_UPDATE_CONTEXT): Remove default.
(uw_update_context_1): Instead #ifdef invocation.
* config/ia64/unwind-ia64.c (MD_UNWIND_SUPPORT): #include if defined.
(uw_frame_state_for): Adjust MD_FALLBACK_FRAME_STATE_FOR invocation.
* config/alpha/gnu.h (MD_FALLBACK_FRAME_STATE_FOR): Don't undef.
(MD_UNWIND_SUPPORT): Undefine this instead.
* config/i386/gnu.h: Likewise.
* config/alpha/linux-unwind.h: New file, macro converted to
function, extracted from..
* config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): ..this.
(MD_UNWIND_SUPPORT): Define.
* config/alpha/vms-unwind.h, config/alpha/vms.h: Likewise.
* config/i386/linux-unwind.h, config/i386/linux.h,
config/i386/linux64.h: Likewise.
* config/ia64/linux-unwind.h, config/ia64/linux.h: Likewise.
MD_HANDLE_UNWABI too.
* config/mips/linux-unwind.h, config/mips/linux.h: Likewise.
* config/pa/linux-unwind.h, config/pa/pa32-linux.h: Likewise.
* config/rs6000/darwin-unwind.h, config/rs6000/darwin.h: Likewise.
* config/s390/linux-unwind.h, config/s390/linux.h: Likewise.
* config/sparc/linux-unwind.h, config/sparc/linux.h,
config/sparc/linux64.h: Likewise.
* config/sh/linux-unwind.h, config/sh/linux.h: Likewise, but merge
SH_FALLBACK_FRAME_FLOAT_STATE into sh_fallback_frame_state.
* config/rs6000/linux-unwind.h, config/rs6000/linux.h,
config/rs6000/linux64.h: Likewise.  Split out get_sigcontext
function.  Use ARG_POINTER_REGNUM for 32-bit temp reg too.

From-SVN: r87167

20 years agoDaily bump.
GCC Administrator [Wed, 8 Sep 2004 00:16:23 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r87165.2

20 years agoDaily bump.
GCC Administrator [Wed, 8 Sep 2004 00:16:19 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r87163.2

20 years ago* MAINTAINERS: Add aoliva and self as maintainers for FR-V port.
Aldy Hernandez [Tue, 7 Sep 2004 21:56:43 +0000 (21:56 +0000)]
* MAINTAINERS: Add aoliva and self as maintainers for FR-V port.

From-SVN: r87161

20 years agoconfigure.ac: Look for pwd.h, grp.h, netdb.h headers and functions.
Frank Ch. Eigler [Tue, 7 Sep 2004 21:52:52 +0000 (21:52 +0000)]
configure.ac: Look for pwd.h, grp.h, netdb.h headers and functions.

2004-09-07  Frank Ch. Eigler  <fche@redhat.com>

* configure.ac: Look for pwd.h, grp.h, netdb.h headers and functions.
* mf-hooks2.c (strerror): Unregister previous string returned by
previous strerror.
(getlogin,cuserid,getpwnam,getpwuid,getgrnam,getgrgid): New wrappers.
(getservent,getservbyname,getservbyport,gai_strerror): Ditto.
* mf-runtime.h.in: Add redefine_extname pragmas for them all.
* mf-runtime.c (__mf_describe_object): Clarify object life status.
* testsuite/libmudflap.c/pass48-frag.c, pass49-frag.c, fail32-frag.c:
New tests.
* configure, config.h.in: Regenerated.

From-SVN: r87160

20 years agocse.c (fold_rtx): Avoid building of (CONST (MINUS (CONST_INT) (SYMBOL_REF)))
Jan Hubicka [Tue, 7 Sep 2004 20:59:18 +0000 (22:59 +0200)]
cse.c (fold_rtx): Avoid building of (CONST (MINUS (CONST_INT) (SYMBOL_REF)))

* cse.c (fold_rtx):  Avoid building of
(CONST (MINUS (CONST_INT) (SYMBOL_REF)))

From-SVN: r87156

20 years agotree-ssa-pre.c (grand_bitmap_obstack): New.
Jan Hubicka [Tue, 7 Sep 2004 20:51:25 +0000 (22:51 +0200)]
tree-ssa-pre.c (grand_bitmap_obstack): New.

* tree-ssa-pre.c (grand_bitmap_obstack): New.
(value_insert_into_set_bitmap, bitmap_set_new): Use the obstack.
(init_pre): Initialize obstack.
(fini_pre): Free obstack.

From-SVN: r87155

20 years agoconfig.gcc: Added support for --with-divide=[breaks|traps] for mips targets.
David Daney [Tue, 7 Sep 2004 19:39:06 +0000 (19:39 +0000)]
config.gcc: Added support for --with-divide=[breaks|traps] for mips targets.

2004-09-07  David Daney  <ddaney@avtrex.com>

* config.gcc: Added support for --with-divide=[breaks|traps] for
mips targets.
* config/mips/mips.h (MASK_DIVIDE_BREAKS): New target_flags bit.
(TARGET_DIVIDE_TRAPS): New macro.
(TARGET_SWITCHES): Added -mdivide-traps and -mdivide-breaks.
(OPTION_DEFAULT_SPECS): Added --with-divide= support.
* config/mips/mips.c (mips_idiv_insns): Generate proper count on
GENERATE_DIVIDE_TRAPS.
(mips_output_division): Emit conditional trap if
GENERATE_DIVIDE_TRAPS is set.
* doc/install.texi: Document --with-divide.
* doc/invoke.texi: Document -mdivide-traps and -mdivide-breaks.

From-SVN: r87153

20 years agoFix hot/cold partitioning problem.
Caroline Tice [Tue, 7 Sep 2004 17:54:16 +0000 (17:54 +0000)]
Fix hot/cold partitioning problem.

2004-09-07  Caroline Tice  <ctice@apple.com>

        * cfgrtl.c (rtl_verify_flow_info_1):  Add new edge flag,
        EDGE_CROSSING, to flags test case.

From-SVN: r87149

20 years agotree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Deal with '<' class too.
Jan Hubicka [Tue, 7 Sep 2004 16:53:07 +0000 (18:53 +0200)]
tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Deal with '<' class too.

* tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Deal with '<'
class too.

From-SVN: r87147

20 years agocfganal.c (flow_depth_first_order_compute, [...]): Use gcc_assert or gcc_unreachable.
Nathan Sidwell [Tue, 7 Sep 2004 15:46:53 +0000 (15:46 +0000)]
cfganal.c (flow_depth_first_order_compute, [...]): Use gcc_assert or gcc_unreachable.

* cfganal.c (flow_depth_first_order_compute, dfs_enumerate_from,
cfgbuild.c, inside_basic_block_p, control_flow_insn_p,
make_label_edge, make_edges, find_basic_blocks_1): Use gcc_assert
or gcc_unreachable.
* cfg.c (clear_edges, initialize_bb_rbi, compact_blocks,
remove_edge, alloc_aux_for_blocks, free_aux_for_blocks,
alloc_aux_for_edges, free_aux_for_edges): Likewise.
* cfgcleanup.c (try_forward_edges,
merge_blocks_move_predecessor_nojumps,
merge_blocks_move_successor_nojumps): Likewise.
* cfgexpand.c (expand_gimple_cond_expr,
expand_gimple_tailcall): Likewise.
* cfghooks.c (duplicate_block): Likewise.
* cfglayout.c (record_effective_endpoints,
insn_locators_initialize, change_scope, fixup_reorder_chain,
verify_insn_chain, fixup_fallthru_exit_predecessor,
duplicate_insn_chain, cfg_layout_finalize): Likewise.
* cfgloopanal.c (check_irred): Likewise.
* cfgloop.c (superloop_at_depth, flow_loops_free,
flow_loop_entry_edges_find, flow_loops_find,
flow_loop_outside_edge_p, get_loop_body,
get_loop_body_in_dom_order, get_loop_body_in_bfs_order,
get_loop_exit_edges, num_loop_branches, cancel_loop,
verify_loop_structure): Likewise.
cfgloopmanip.c (find_path, remove_path, loop_delete_branch_edge,
duplicate_loop_to_header_edge, create_preheader,
create_loop_notes): Likewise.
* cfgrtl.c (delete_insn, try_redirect_by_replacing_jump,
edirect_branch_edge, force_nonfallthru_and_redirect,
rtl_split_edge, insert_insn_on_edge, commit_one_edge_insertion,
commit_edge_insertions, commit_edge_insertions_watch_calls,
purge_dead_edges, cfg_layout_redirect_edge_and_branch,
cfg_layout_redirect_edge_and_branch_force,
cfg_layout_merge_blocks, rtl_flow_call_edges_add): Likewise.
* cgraph.c (cgraph_node, cgraph_create_edge, cgraph_remove_edge,
cgraph_redirect_edge_callee, cgraph_global_info, cgraph_rtl_info,
cgraph_varpool_node): Likewise.
* cgraphunit.c (cgraph_finalize_function,
cgraph_finalize_compilation_unit, cgraph_mark_functions_to_output,
cgraph_expand_function, cgraph_remove_unreachable_nodes,
cgraph_clone_inlined_nodes, cgraph_mark_inline_edge,
cgraph_mark_inline, cgraph_expand_all_functions,
cgraph_build_static_cdtor): Likewise.
* combine.c  (do_SUBST, try_combine, subst, combine_simplify_rtx,
simplify_logical, distribute_notes, insn_cuid): Likewise.
* conflict.c (conflict_graph_add, print_conflict): Likewise.
* coverage.c (rtl_coverage_counter_ref, tree_coverage_counter_ref,
coverage_checksum_string): Likewise.
* cse.c (make_new_qty, make_regs_eqv, insert, invalidate,
hash_rtx, exp_equiv_p, cse_basic_block, count_reg_usage,
cse_cc_succs, cse_condition_code_reg): Likewise.
* cselib.c (entry_and_rtx_equal_p, remove_useless_values,
rtx_equal_for_cselib_p, wrap_constant, cselib_hash_rtx,
new_cselib_val, cselib_subst_to_values, cselib_invalidate_regno,
cselib_record_set): Likewise.

From-SVN: r87145

20 years ago* tree-ssa-loop-ivopts.c (iv_value): Avoid invalid sharing on niter.
Jan Hubicka [Tue, 7 Sep 2004 14:56:50 +0000 (16:56 +0200)]
* tree-ssa-loop-ivopts.c (iv_value): Avoid invalid sharing on niter.

From-SVN: r87143

20 years agoerror.c (show_locus): Handle mapped locations.
Per Bothner [Tue, 7 Sep 2004 14:43:37 +0000 (07:43 -0700)]
error.c (show_locus): Handle mapped locations.

2004-09-07  Per Bothner  <per@bothner.com>
Paul Brook  <paul@codesourcery.com>

* error.c (show_locus): Handle mapped locations.
* f95-lang.c (gfc_be_parse_file): Initialize mapped locations.
* gfortran.h: Include input.h.
(struct gfc_linebuf): Use source_location.
* scanner.c (get_file): Initialize linemap.
(preprocessor_line): Pass extra argument to get_file.
(load_file): Ditto.  Setup linemap.
(gfc_new_file): Handle mapped locations.
* trans-common.c (build_field, build_equiv_decl, build_common_decl):
Set decl source locations.
(gfc_trans_common): Set blank common block location.
* trans-decl.c (gfc_set_decl_location): New function.
(gfc_get_label_decl, gfc_get_symbol_decl): Use it.
(trans_function_start): Move call to gfc_set_backend_locus..
(build_function_decl): ... to here.
(build_entry_thunks): Set and restore the backend locus.
(gfc_generate_constructors): Remove excess arguments to
init_function_start.
(gfc_generate_block_data): Add comments.  Set the decl locus.
* trans-io.c (set_error_locus): Handle mapped locations.
* trans.c (gfc_get_backend_locus, gfc_get_backend_locus): Ditto.
(gfc_trans_code): Use SET_EXPR_LOCATION.
(gfc_generate_code): Override the location of the new symbol.
* trans.h (gfc_set_decl_location): Add prototype.

Co-Authored-By: Paul Brook <paul@codesourcery.com>
From-SVN: r87142

20 years agobuiltins.c (fold_builtin_strchr): Use build_int_cst, not fold_convert.
Nathan Sidwell [Tue, 7 Sep 2004 10:22:44 +0000 (10:22 +0000)]
builtins.c (fold_builtin_strchr): Use build_int_cst, not fold_convert.

* builtins.c (fold_builtin_strchr): Use build_int_cst, not
fold_convert.
(fold_builtin_strpbrk): Likewise.
* expr.c (array_ref_low_bound): Likewise.
* tree-scalar-evolution.c (chrec_is_positive, add_to_evolution_1,
interpret_rhs_modify_expr, number_of_iterations_in_loop): Likewise.
* tree-sra.c (generate_element_zero): Likewise.
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Likewise.
* tree-ssa-loop-ivopts.c (determine_biv_step, idx_find_step,
add_old_iv_candidates, add_iv_candidates): Likewise.
* tree-tailcall.c (tree_optimize_tail_calls_1): Likewise.

From-SVN: r87141

20 years agoc-aux-info.c (gen_type): Use gcc_assert or gcc_unreachable.
Nathan Sidwell [Tue, 7 Sep 2004 10:19:00 +0000 (10:19 +0000)]
c-aux-info.c (gen_type): Use gcc_assert or gcc_unreachable.

* c-aux-info.c (gen_type): Use gcc_assert or gcc_unreachable.
* c-common.c (c_type_hash, c_common_nodes_and_builtins,
c_expand_expr, boolean_increment, nonnull_check_p,
check_function_arguments_recurse, fold_offsetof_1): Likewise.
* c-cppbuiltin.c (define__GNUC__, builtin_define_stdint_macros,
builtin_define_type_max): Likewise.
* c-decl.c (bind, pop_scope, merge_decls, pushdecl_top_level,
implicit_decl_warning, builtin_function, build_compound_literal,
complete_array_type, grokdeclarator, get_parm_info,
start_function, store_parm_decls_oldstyle,
c_write_global_declarations): Likewise.
* c-format.c (get_constant, decode_format_attr,
maybe_read_dollar_number, get_flag_spec, check_format_arg,
check_format_types, format_type_warning,
find_char_info_specifier_index, init_dynamic_asm_fprintf_info,
init_dynamic_diag_info, handle_format_attribute): Likewise.
* c-gimplify.c (push_context, pop_context, finish_bc_block):
* c-lex.c (c_lex_with_flags, lex_string): Likewise.
* c-objc-common.c (c_tree_printer): Likewise.
* c-pch.c (pch_init): Likewise.
* c-pragma.c (maybe_apply_pragma_weak): Likewise.
* c-pretty-print.c (pp_c_tree_decl_identifier): Likewise.
* c-typeck.c (c_incomplete_type_error, composite_type,
common_pointer_type, common_type, same_translation_unit_p,
tagged_types_tu_compatible_p, finish_init, pop_init_level,
set_designator, set_nonincremental_init_from_string,
process_init_element, c_finish_if_stmt): Likewise.
* caller-save.c (init_caller_save, save_call_clobbered_regs,
insert_restore, insert_save, insert_one_insn): Likewise.
* calls.c (emit_call_1, compute_argument_block_size,
precompute_arguments, expand_call, emit_library_call_value_1,
store_one_arg): Likewise.

From-SVN: r87140

20 years agoconfigure.ac (enable-checking): Add release option.
Nathan Sidwell [Tue, 7 Sep 2004 09:56:31 +0000 (09:56 +0000)]
configure.ac (enable-checking): Add release option.

* configure.ac (enable-checking): Add release option. Reorganize
to avoid repetition.
* configure: Rebuilt.
* doc/install.texi (enable-checking): Amend documentation.

From-SVN: r87139

20 years agomissing: Import latest version from master repository.
Paolo Bonzini [Tue, 7 Sep 2004 08:33:10 +0000 (08:33 +0000)]
missing: Import latest version from master repository.

2004-09-07  Paolo Bonzini  <bonzini@gnu.org>

* missing: Import latest version from master repository.

From-SVN: r87138

20 years agoDaily bump.
GCC Administrator [Tue, 7 Sep 2004 00:16:19 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r87136.2

20 years agoDaily bump.
GCC Administrator [Tue, 7 Sep 2004 00:16:15 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r87135.2

20 years agore PR bootstrap/17313 (fixinc.sh isn't parallel build safe)
H.J. Lu [Mon, 6 Sep 2004 23:58:14 +0000 (23:58 +0000)]
re PR bootstrap/17313 (fixinc.sh isn't parallel build safe)

2004-09-06  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/17313
* Makefile.in (specs.ready): Depend on cc1$(exeext).

From-SVN: r87133

20 years agoAnother MIPS vector cleanup patch, fix bad type attribute for FP zero moves.
James E Wilson [Mon, 6 Sep 2004 23:55:44 +0000 (23:55 +0000)]
Another MIPS vector cleanup patch, fix bad type attribute for FP zero moves.

* config/mips/mips.md (movsf_hardfloat, movdf_hardfloat_64bit,
movdf_hardfloat_32bit): Split fG into two alternatives.
(movv2sf_hardfloat_64bit): Split fYG into two alternatives.

From-SVN: r87132

20 years agore PR other/16633 (C tests don't use the newly built libgcc.so.1)
H.J. Lu [Mon, 6 Sep 2004 23:36:11 +0000 (23:36 +0000)]
re PR other/16633 (C tests don't use the newly built libgcc.so.1)

2004-09-06  H.J. Lu  <hongjiu.lu@intel.com>

PR c/16633:
* lib/gcc-dg.exp: Set up LD_LIBRARY_PATH, SHLIB_PATH,
LD_LIBRARYN32_PATH, LD_LIBRARY64_PATH and DYLD_LIBRARY_PATH.

From-SVN: r87131

20 years agoifc-20040816-1.c: Use -ftree-vectorize.
Devang Patel [Mon, 6 Sep 2004 23:14:43 +0000 (16:14 -0700)]
ifc-20040816-1.c: Use -ftree-vectorize.

2004-09-06  Devang Patel  <dpatel@apple.com>

      * gcc.dg/tree-ssa/ifc-20040816-1.c: Use -ftree-vectorize.
      * gcc.dg/tree-ssa/ifc-20040816-2.c: Use -ftree-vectorize.

From-SVN: r87130

20 years ago* semantics.c (expand_body): Assert that we are not nested.
Daniel Jacobowitz [Mon, 6 Sep 2004 22:02:34 +0000 (22:02 +0000)]
* semantics.c (expand_body): Assert that we are not nested.

From-SVN: r87126

20 years agoFix ppc-darwin bootstrap failure.
James E Wilson [Mon, 6 Sep 2004 21:05:44 +0000 (21:05 +0000)]
Fix ppc-darwin bootstrap failure.

* emit-rtl.c (try_split): Check INSN_P before may_trap_p call.

From-SVN: r87125

20 years agofinal.c (output_in_slot): Delete.
Eric Botcazou [Mon, 6 Sep 2004 19:59:30 +0000 (21:59 +0200)]
final.c (output_in_slot): Delete.

* final.c (output_in_slot): Delete.
(final_scan_insn): Revert 2004-09-03 change.
(output_asm_insn): Likewise.
* config/sparc/sparc.c (output_return): Likewise.
(output_sibcall): Likewise.

From-SVN: r87124

20 years agoloop.c (loop_dump_aux): Do not print RTL when not available.
Jan Hubicka [Mon, 6 Sep 2004 18:38:27 +0000 (20:38 +0200)]
loop.c (loop_dump_aux): Do not print RTL when not available.

* loop.c (loop_dump_aux): Do not print RTL when not available.
* tree-ssa-loop-ivopts.c (add_standard_iv_candidates): Do not use
frontend specific type nodes.
(produce_memory_decl_rtl): Break out from ...
(prepare_decl_rtl): ... here.  Handle ADDR_EXPR correctly.
(get_computation_at): Avoid random tree sharing.
(tree_ssa_iv_optimize): Verify tree sharing; dump loops.

From-SVN: r87123

20 years agoMakefile.in (rtl.o, bitmap.o): Correct dependencies, remove unnecessary commands.
Zack Weinberg [Mon, 6 Sep 2004 18:37:21 +0000 (18:37 +0000)]
Makefile.in (rtl.o, bitmap.o): Correct dependencies, remove unnecessary commands.

* Makefile.in (rtl.o, bitmap.o): Correct dependencies, remove
unnecessary commands.

From-SVN: r87122

20 years agodecl.c (build_enumerator): Use add_double and int_fits_type_p instead of cp_build_bin...
Zack Weinberg [Mon, 6 Sep 2004 17:38:18 +0000 (17:38 +0000)]
decl.c (build_enumerator): Use add_double and int_fits_type_p instead of cp_build_binary_op...

cp:
* decl.c (build_enumerator): Use add_double and int_fits_type_p
instead of cp_build_binary_op, to avoid creating short-lived trees.
* parser.c (cp_parse_type_specifier <RID_ENUM>): Use two-token
lookahead instead of backtracking.  Move some code to avoid a
conditional branch.
(cp_parser_enum_specifier): Avoid duplication of effort with caller.
Use cp_lexer_next_token_is/cp_lexer_next_token_is_not as appropriate.
(cp_parser_enumerator_list, cp_parser_enumerator_definition):
Use cp_lexer_next_token_is/cp_lexer_next_token_is_not as appropriate.
testsuite:
* g++.old-deja/g++.other/enum2.C: Move dg-error markers to
reflect changed line numbering of diagnostics.

From-SVN: r87121

20 years agoPut ChangeLog entry in the right place.
Paul Brook [Mon, 6 Sep 2004 16:58:16 +0000 (16:58 +0000)]
Put ChangeLog entry in the right place.

From-SVN: r87120

20 years ago[multiple changes]
Paul Brook [Mon, 6 Sep 2004 16:33:52 +0000 (16:33 +0000)]
[multiple changes]

2004-09-06  Steven G. Kargl  <kargls@comcast.net>

* io/write.c (output_float): Typo in comment.  Remove debugging
printf.  Fix format for FP of form 1e10.

2004-09-06  Paul Brook  <paul@codesourcery.com>

* gfortran.dg/edit_real_1.f90: Add new test.

From-SVN: r87119

20 years agoMakefile.in (rtl.o): Remove -DGENERATOR_FILE.
Mohan Embar [Mon, 6 Sep 2004 14:48:43 +0000 (14:48 +0000)]
Makefile.in (rtl.o): Remove -DGENERATOR_FILE.

* Makefile.in (rtl.o): Remove -DGENERATOR_FILE.
(bitmap.o): Likewise.

From-SVN: r87118

20 years agore PR preprocessor/14699 (abort() in hashtable.c in approx_sqrt() with -fmem-report)
Serge Belyshev [Mon, 6 Sep 2004 13:22:48 +0000 (13:22 +0000)]
re PR preprocessor/14699 (abort() in hashtable.c in approx_sqrt() with -fmem-report)

2004-09-06  Serge Belyshev  <belyshev@lubercy.com>

PR preprocessor/14699
* symtab.c (ht_dump_statistics): Change type of sum_of_squares
from size_t to double.

From-SVN: r87116

20 years agorestore missing changelog entry
Nathan Sidwell [Mon, 6 Sep 2004 10:23:00 +0000 (10:23 +0000)]
restore missing changelog entry
2004-08-30  Nathan Sidwell  <nathan@codesourcery.com>

* alias.c (mems_in_disjoint_alias_sets_p, record_alias_subset,
record_set, rtx_equal_for_memref_p, init_alias_analysis): Use
gcc_assert and gcc_unreachable instead of abort.
* alloc-pool.c (abort, fancy_abort): Remove.
(create_alloc_pool, free_alloc_pool, pool_alloc, pool_free): Use
gcc_assert or gcc_unreachable.
* attribs.c (init_attributes, decl_attributes): Likewise.
* bb-reorder.c (FREE, find_traces_1_round, copy_bb,
mark_bb_for_unlikely_executed_section,
add_labels_and_missing_jumps, fix_crossing_conditional_branches,
fix_crossing_unconditional_branches):  Likewise.
* bitmap.c (bitmap_first_set_bit, bitmap_last_set_bit,
bitmap_operation):  Likewise.
* bt-load.c (insn_sets_btr_p, augment_live_range,
move_btr_def):  Likewise.
* builtins.c (c_readstr, expand_builtin_longjmp, apply_args_size,
apply_result_size, expand_builtin_apply, expand_builtin_mathfn,
expand_builtin_mathfn_2, expand_builtin_mathfn_3,
builtin_memcpy_read_str, expand_movstr, expand_builtin_stpcpy,
expand_builtin_memcmp, expand_builtin_args_info,
std_gimplify_va_arg_expr, expand_builtin_unop,
expand_builtin_fputs, expand_builtin_profile_func,
expand_builtin_fork_or_exec, fold_builtin_bitop,
fold_builtin_classify, fold_builtin_fputs): Likewise.

From-SVN: r87114

20 years agoUnify the management of RTL and tree-level dump files.
Paolo Bonzini [Mon, 6 Sep 2004 10:08:17 +0000 (10:08 +0000)]
Unify the management of RTL and tree-level dump files.

2004-09-06  Paolo Bonzini  <bonzini@gnu.org>

Unify the management of RTL and tree-level dump files.

* cfgexpand.c (tree_expand_cfg): Fix incorrect comment.
Don't print function name to the dump file, the pass manager
would do this for us. Add code from the top of
rest_of_compilation, up to the initial RTL dump.
* passes.c (rest_of_handle_jump): Call fixup_tail_calls and
close the DFI_sibling dump file.
(rest_of_compilation): Don't do that here.  Remove code up to the
initial RTL dump.
(init_optimization_passes): Remove.
(pass_rest_of_compilation): Change pass name to NULL.
* toplev.c (lang_dependent_init): Do not use an empty dump file prefix.
Do not call init_optimization_passes.
* toplev.h (init_optimization_passes): Remove.

* graph.c (print_rtl_graph_with_bb, clean_graph_dump_file,
finish_graph_dump_file): Remove SUFFIX parameter.
* graph.h (print_rtl_graph_with_bb, clean_graph_dump_file,
finish_graph_dump_file): Likewise.

* tree-pass.h (struct tree_opt_pass): Add `letter' field.
* cfgexpand.c (pass_expand): Adjust.
* gimple-low.c (pass_lower_cf, pass_remove_useless_vars): Adjust.
* passes.c (pass_rest_of_compilation): Adjust.
* predict.c (pass_profile): Adjust.
* tree-alias-common.c (pass_build_pta, pass_del_pta): Adjust.
* tree-cfg.c (pass_build_cfg, pass_remove_useless_stmts,
pass_split_crit_edges, pass_warn_function_return): Adjust.
* tree-complex.c (pass_lower_vector_ssa, pass_pre_expand): Adjust.
* tree-dfa.c (pass_referenced_vars): Adjust.
* tree-eh.c (pass_lower_eh): Adjust.
* tree-if-conv.c (pass_build_ssa): Adjust.
* tree-into-ssa.c (pass_build_ssa): Adjust.
* tree-mudflap.c (pass_mudflap_1, pass_mudflap_2): Adjust.
* tree-nomudflap.c (pass_mudflap_1, pass_mudflap_2): Adjust.
* tree-nrv.c (pass_nrv): Adjust.
* tree-optimize.c (pass_gimple, pass_all_optimizations,
pass_cleanup_cfg_post_optimizing, pass_free_datastructures,
pass_init_datastructures): Adjust.
* tree-outof-ssa.c (pass_del_ssa): Adjust.
* tree-profile.c (pass_tree_profile): Adjust.
* tree-sra.c (pass_sra): Adjust.
* tree-ssa-alias.c (pass_may_alias): Adjust.
* tree-ssa-ccp.c (pass_ccp, pass_fold_builtins): Adjust.
* tree-ssa-copyrename.c (pass_rename_ssa_copies): Adjust.
* tree-ssa-dce.c (pass_dce, pass_cd_dce): Adjust.
* tree-ssa-dom.c (pass_dominator): Adjust.
* tree-ssa-dse.c (pass_dse): Adjust.
* tree-ssa-forwprop.c (pass_forwprop): Adjust.
* tree-ssa-if-conv.c (pass_if_conversion): Adjust.
* tree-ssa-loop-ch.c (pass_ch): Adjust.
* tree-ssa-loop.c (pass_loop, pass_loop_init, pass_lim,
pass_loop_done, pass_complete_unroll, pass_iv_canon,
pass_iv_optimize, pass_vectorize): Adjust.
* tree-ssa-phiopt.c (pass_phiopt): Adjust.
* tree-ssa-pre.c (pass_pre, pass_fre): Adjust.
* tree-ssa.c (pass_redundant_phi, pass_early_warn_uninitialized,
pass_late_warn_uninnitialized): Adjust.
* tree-tailcall.c (pass_tail_recursion, pass_tail_calls): Adjust.

* Makefile.in (tree-dump.o): Add new dependencies.
* cgraph.c (cgraph_remove_node): TDF_all -> TDF_tree_all.
* cgraphunit.c (cgraph_preserve_function_body_p, cgraph_optimize):
Likewise.
* toplev.c (dump_file_name): New.
* tree-dump.c (dump_enable_all): Add LETTER parameter.
(struct dump_file_info): Add NUM and LETTER fields.
(dump_files): Adjust and add RTL dump files.
(dump_register): Add NUM and LETTER fields.
(get_dump_file_name, dump_initialized_p, enable_rtl_dump_file): New.
(dump_begin): Use get_dump_file_name.
(dump_switch_p_1): Adjust call to dump_enable_all.
* tree-dump.h (dump_register): Adjust prototype.
* tree-optimize.c (register_one_dump_file): Take dump file index.
Support flags for RTL dumps.
(register_dump_files): Fill in NUM field of struct dump_file_info.
Track properties both when the gate is executed and when it is not.
(execute_todo): Dump RTL.  Add PROPERTIES parameter.
(execute_one_pass): Pass properties to execute_todo.  Handle VCG
dumps of RTL.
* tree-pass.h (dump_file_name): New.
* tree.h (TDF_TREE, TDF_RTL, get_dump_file_name, dump_initialized_p):
New.

* Makefile.in (passes.o): Add new dependencies.
* passes.c (struct dump_file_info, enum dump_file_index,
dump_file_tbl, init_optimization_passes): Remove.
(open_dump_file, close_dump_file): Use tree-dumping infrastructure.
(rest_of_handle_new_regalloc, rest_of_handle_old_regalloc): Use
dump_enabled_p.
(finish_optimization_passes): Update finish_graph_dump_file loop.
(enable_rtl_dump_file): Remove.
* tree-dump.c (dump_files): Adjust and add RTL dump files.
(enable_rtl_dump_file): Add here.
* tree.h (enum tree_dump_index): Add RTL dump file indices.
* doc/invoke.texi (Debugging options): Document new RTL debugging
options.  Update.

From-SVN: r87113

20 years agoconfig.sub: Import latest version from master repository.
Nick Clifton [Mon, 6 Sep 2004 08:52:57 +0000 (08:52 +0000)]
config.sub: Import latest version from master repository.

* config.sub: Import latest version from master repository.
* config.guess: Likewise.

From-SVN: r87112

20 years agoDaily bump.
GCC Administrator [Mon, 6 Sep 2004 00:16:30 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r87108

20 years agoc-common.c, [...]: Fix comment formatting.
Kazu Hirata [Sun, 5 Sep 2004 16:05:06 +0000 (16:05 +0000)]
c-common.c, [...]: Fix comment formatting.

* c-common.c, c-decl.c, combine.c, defaults.h, fold-const.c,
gimplify.c, gthr-nks.h, hooks.c, lambda-code.c, lambda-mat.c,
stor-layout.c, target.h, tree-cfg.c, tree-chrec.c,
tree-if-conv.c, tree-inline.c, tree-into-ssa.c,
tree-mudflap.c, tree-optimize.c, tree-scalar-evolution.c,
tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-dce.c,
tree-ssa-pre.c, tree-vectorizer.c, tree-vectorizer.h, tree.h,
vec.h: Fix comment formatting.

From-SVN: r87105

20 years agoc-common.c, [...]: Fix comment typos.
Kazu Hirata [Sun, 5 Sep 2004 15:24:15 +0000 (15:24 +0000)]
c-common.c, [...]: Fix comment typos.

* c-common.c, cfgexpand.c, cgraphunit.c, defaults.h,
et-forest.c, expr.c, gimplify.c, global.c, gthr-lynx.h,
hard-reg-set.h, modulo-sched.c, optabs.c, postreload-gcse.c,
tree-data-ref.c, tree-flow.h, tree-if-conv.c, tree-inline.c,
tree-sra.c, tree-ssa-loop-im.c, tree-ssa-loop-ivopts.c,
tree-ssa-loop-niter.c, tree-ssa-operands.c,
tree-ssa-operands.h, tree-ssa-propagate.c,
tree-ssa-propagate.h, tree-ssa-threadupdate.c, value-prof.c,
vec.c, vec.h: Fix comment typos.  Follow spelling conventions.

From-SVN: r87104

20 years agotree-if-conv.c (gate_tree_if_conversion): Enable only if the vectorizer is enabled.
Diego Novillo [Sun, 5 Sep 2004 11:43:42 +0000 (11:43 +0000)]
tree-if-conv.c (gate_tree_if_conversion): Enable only if the vectorizer is enabled.

* tree-if-conv.c (gate_tree_if_conversion): Enable only if the
vectorizer is enabled.

From-SVN: r87103

20 years agoRemove extra whitespace.
Andreas Jaeger [Sun, 5 Sep 2004 10:55:43 +0000 (12:55 +0200)]
Remove extra whitespace.

From-SVN: r87102

20 years ago* tree-if-conv.c: Spell check comments and clean up whitespace.
Andreas Jaeger [Sun, 5 Sep 2004 10:54:26 +0000 (12:54 +0200)]
* tree-if-conv.c: Spell check comments and clean up whitespace.

From-SVN: r87101

20 years agotree-ssa-loop-ivopts.c: New file.
Zdenek Dvorak [Sun, 5 Sep 2004 09:25:37 +0000 (11:25 +0200)]
tree-ssa-loop-ivopts.c: New file.

* tree-ssa-loop-ivopts.c: New file.
* Makefile.in (tree-ssa-loop-ivopts.c): Add.
* cfgloop.h (target_avail_regs, target_res_regs, target_small_cost,
target_pres_cost, target_spill_cost): Declare.
* cfgloopanal.c (avail_regs, res_regs, small_cost, pres_cost,
spill_cost): Renamed to ...
(target_avail_regs, target_res_regs, target_small_cost,
target_pres_cost, target_spill_cost): ... and exported.
(init_set_costs, global_cost_for_size): Work with renamed variables.
* common.opt (flag_ivopts): New flag.
* expr.c (expand_expr_real_1): Handle SSA_NAME case.  Handle
REF_ORIGINAL.
* gimplify.c (struct gimplify_ctx): Add into_ssa field.
(internal_get_tmp_var, gimplify_modify_expr, gimplify_expr): Support
generating SSA form.
(force_gimple_operand): New function.
* timevar.def (TV_TREE_LOOP_IVOPTS): New timevar.
* tree-cfg.c (stmt_bsi): New function.
* params.def (PARAM_IV_CONSIDER_ALL_CANDIDATES_BOUND,
PARAM_IV_MAX_CONSIDERED_USES): New.
* tree-flow.h (stmt_bsi, tree_ssa_iv_optimize, split_loop_exit_edge,
bsi_insert_on_edge_immediate_loop. standard_iv_increment_position,
ip_end_pos, ip_normal_pos, force_gimple_operand): Declare.
* tree-gimple.c (is_gimple_formal_tmp_var): Accept ssa names.
* tree-nested.c (build_addr): Export.
* tree-optimize.c (init_tree_optimization_passes): Add
pass_iv_optimize.
* tree-pass.h (pass_iv_optimize): Declare.
* tree-ssa-loop-im.c (for_each_index): Handle REALPART_EXPR and
IMAGPART_EXPR.
* tree-ssa-loop-manip.c (create_iv): Force the base to be acceptable
as a phi node argument.
(split_loop_exit_edge, bsi_insert_on_edge_immediate_loop,
ip_end_pos, ip_normal_pos, standard_iv_increment_position): New
functions.
* tree-ssa-loop-niter.c (zero_p, unsigned_type_for): Export.
* tree-ssa-loop.c (tree_ssa_loop_ivopts, gate_tree_ssa_loop_ivopts,
pass_iv_optimize): New pass.
* tree-ssa-operands.c (get_indirect_ref_operands): Handle REF_ORIGINAL.
* tree-ssanames.c (release_ssa_name): Allow calling with var = NULL.
* tree.c (build_int_cst_type, cst_and_fits_in_hwi): New functions.
* tree.h (REF_ORIGINAL): New macro.
(build_int_cst_type, unsigned_type_for, zero_p,
cst_and_fits_in_hwi, build_addr): Declare.
* doc/invoke.texi (-fivopts): Document.
(PARAM_IV_CONSIDER_ALL_CANDIDATES_BOUND,
PARAM_IV_MAX_CONSIDERED_USES): Document.
* doc/passes.texi: Document induction variable optimizations pass.

* gcc.dg/tree-ssa/loop-2.c: New test.
* gcc.dg/tree-ssa/loop-3.c: New test.
* gcc.dg/tree-ssa/loop-4.c: New test.
* gcc.dg/tree-ssa/loop-5.c: New test.

From-SVN: r87100

20 years agonatNetworkInterfaceWin32.cc (getRealNetworkInterfaces): Changed pfn from static local...
Mohan Embar [Sun, 5 Sep 2004 03:36:19 +0000 (03:36 +0000)]
natNetworkInterfaceWin32.cc (getRealNetworkInterfaces): Changed pfn from static local to local.

* java/net/natNetworkInterfaceWin32.cc (getRealNetworkInterfaces):
Changed pfn from static local to local.

From-SVN: r87099

20 years agobuiltin-attrs.def (ATTR_NOTHROW_SENTINEL_1): New.
Kaveh R. Ghazi [Sun, 5 Sep 2004 02:55:28 +0000 (02:55 +0000)]
builtin-attrs.def (ATTR_NOTHROW_SENTINEL_1): New.

* builtin-attrs.def (ATTR_NOTHROW_SENTINEL_1): New.
* builtins.def (BUILT_IN_EXECLE): Set ATTR_NOTHROW_SENTINEL_1.
* c-common.c (c_common_attribute_table): Accept parameters to
sentinel attribute.
(check_function_sentinel, handle_sentinel_attribute): Likewise.
* doc/extend.texi: Update accordingly.

testsuite:
* gcc.dg/format/sentinel-1.c: Update for parameter option.

From-SVN: r87098

20 years agoFix ChangeLog
Kaveh Ghazi [Sun, 5 Sep 2004 02:51:44 +0000 (02:51 +0000)]
Fix ChangeLog

From-SVN: r87097

20 years agobuiltin-attrs.def (ATTR_SENTINEL, [...]): New.
Kaveh Ghazi [Sun, 5 Sep 2004 02:50:09 +0000 (02:50 +0000)]
builtin-attrs.def (ATTR_SENTINEL, [...]): New.

gcc:
* builtin-attrs.def (ATTR_SENTINEL, ATTR_SENTINEL_NOTHROW_LIST):
New.
* builtins.def (BUILT_IN_EXECL, BUILT_IN_EXECLP): Add `sentinel'
attribute.
* c-common.c (handle_sentinel_attribute, check_function_sentinel):
New functions.
(c_common_attribute_table): Add `sentinel' attribute.
(check_function_arguments): Handle `sentinel' attribute.
* doc/extend.texi: Document `sentinel' attribute.

gcc/testsuite:
* gcc.dg/format/sentinel-1.c: New test.

include:
* ansidecl.h (ATTRIBUTE_SENTINEL): Define.
* libiberty.h (concat, reconcat, concat_length, concat_copy,
concat_copy2): Use ATTRIBUTE_SENTINEL.

From-SVN: r87096

20 years agoDaily bump.
GCC Administrator [Sun, 5 Sep 2004 00:16:38 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r87094