summaryrefslogtreecommitdiff
path: root/gcc
Commit message (Collapse)AuthorAgeFilesLines
* Fix for latent bug in splitting arguments exposed byfjahanian2005-04-213-6/+13
| | | | | | | | rs6000_arg_partial_bytes rewrite. Oked by Richard Henderson. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98507 138bc75d-0d04-0410-961f-82ee72b054a4
* * cp-tree.h (THROW_NAME, AUTO_VTABLE_NAME, AUTO_TEMP_FORMAT,kazu2005-04-212-18/+5
| | | | | | | VTABLE_BASE, VTABLE_NAME_PREFIX, STATIC_NAME_FORMAT): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98504 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/sparc/predicates.md, config/sparc/sparc.md: Fixkazu2005-04-213-2/+7
| | | | | | | comment typos. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98502 138bc75d-0d04-0410-961f-82ee72b054a4
* * cgraphunit.c: Include tree-pass.hhubicka2005-04-215-58/+136
| | | | | | | | | | | | | | | | | | | | (cgraph_decide_recursive_inlining, cgraph_decide_inlining_of_small_function, cgraph_set_inline_failed, cgraph_decide_inlining): Dump goes to dump_file. (cgraph_optimize): Call ipa passes instead of inliner. (cgraph_gate_inlining, pass_ipa_inline): New. * tree-optimize.c (all_ipa_passes): New static variable. (register_one_dump_file): Dead with IPA passes. (register_dump_files): Likewise. (init_tree_optimization_passes): Initialize IPA passes. (execute_todo): Do cgraph dump when asked to, do not dump function body for IPA pass. * tree-pass.h (TODO_dump_cgraph): New macro. (ipa_passes): Declare. * Makefile.in (cgraphunit.o): Add dependency on cgraphunit.h git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98501 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/i386.c (type_natural_mode): Use gcc_unreachable andnathan2005-04-214-340/+320
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc_assert instead of abort. (classify_argument, examine_argument, construct_container, contains_128bit_aligned_vector_p, ix86_check_movabs, standard_80387_constant_opcode, standard_80387_constant_rtx, ix86_initial_elimination_offset, ix86_compute_frame_layout, pro_epilogue_adjust_stack, ix86_expand_epilogue, ix86_address_cost, legitimate_address_p, legitimize_pic_address, legitimize_tls_address, output_pic_addr_const, i386_output_dwarf_dtprel, put_condition_code, print_reg, get_some_local_dynamic_name, print_operand, print_operand_address, output_387_binary_op, emit_i387_cw_initialization, output_fix_trunc, output_fp_compare, ix86_output_addr_vec_elt, ix86_expand_clear, ix86_expand_binary_operator, ix86_expand_unary_operator, ix86_match_ccmode, ix86_cc_mode, ix86_cc_modes_compatible, ix86_fp_comparison_codes, ix86_fp_comparison_arithmetics_cost, ix86_expand_fp_compare, ix86_expand_branch, ix86_expand_setcc, ix86_expand_carry_flag_compare, ix86_expand_fp_movcc, ix86_expand_int_addcc, ix86_split_to_parts, ix86_split_long_move, ix86_expand_movmem, ix86_expand_call, assign_386_stack_local, memory_address_length, ix86_attr_length_immediate_default, ix86_attr_length_address_default, ix86_agi_dependant, x86_initialize_trampoline, ix86_init_mmx_sse_builtins, ix86_expand_binop_builtin, ix86_force_to_memory, ix86_secondary_memory_needed, ix86_avoid_jump_misspredicts, x86_emit_floatuns): Likewise. * config/i386/netware.c (gen_regparm_prefix, i386_nlm_strip_name_encoding): Likewise. * config/i386/winnt.c (i386_pe_mark_dllexport): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98500 138bc75d-0d04-0410-961f-82ee72b054a4
* * optabs.c (gen_condiational_trap): Remove #define.nathan2005-04-212-137/+121
| | | | | | | | | | | | | | | | | | (add_equal_note): Assertify. Remove explicit indirection from call via function pointer. (expand_ternary_op, expand_simple_binop, expand_binop, expand_twoval_unop, expand_twoval_binop, expand_twoval_binop_libfunc, expand_simple_unop expand_unop, emit_unop_insn, emit_no_conflict_block, prepare_cmp_insn, prepare_operand emit_cmp_and_jump_insn_1, emit_cmp_and_jump_insns, prepare_float_lib_cmp, emit_conditional_move, emit_conditional_add, gen_add2_insn, gen_add3_insn, have_add2_insn, gen_sub2_insn, gen_sub3_insn, have_sub2_insn, expand_float, expand_fix, debug_optab_libfuncs, gen_cond_trap, vector_compare_rtx, expand_vec_cond_expr): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98499 138bc75d-0d04-0410-961f-82ee72b054a4
* * vec.h: Update API to separate allocation mechanism from type.nathan2005-04-2143-742/+1090
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (VEC_safe_grow): New. * vec.c (calculate_allocation): New. (vec_gc_o_reserve, vec_heap_o_reserve): Adjust. (vec_gc_free, vec_heap_free): Remove. * gengtype-lex.l (DEF_VEC_): Process mult-argument macros. Adjust. (VEC): Likewise. (mangle_macro_name): New. (struct macro_def): New. (struct macro): Add multiple argument values. (macro_expans_end): New. (push_macro_expansion): Chain on new macro. Process multiple args, create follow on expansion. Return follow on argument. (macro_input): Deal with multiple arguments. * tree.h: Define VEC(tree,heap) and VEC(tree,gc). (struct tree_binfo): Adjust. * basic-block.h: Define VEC(edge,gc). (struct edge_def): Adjust. (struct basic_block_def, struct edge_iterator): Likewise. (ei_container, ei_start_1, ei_last_1): Likewise. * cfg.c (connect_src, connect_dest): Likewise. * cfgrtl.c (force_nonfallthru_and_redirect) * dbxout.c (dbxout_type) * dwarf2out.c (gen_member_die) * lambda-code.c: Define VEC(int,gc), VEC(lambda_loop,gc). (gcc_tree_to_linear_expression): Adjust. (gcc_loop_to_lambda_loop, gcc_loopnest_to_lambda_loopnest, lbv_to_gcc_expression, lle_to_gcc_expression, lambda_loopnest_to_gcc_loopnest, can_convert_to_perfect_nest, perfect_nestify): Likewise. * lambda.h (gcc_loopnest_to_lambda_loopnest, lambda_loopnest_to_gcc_loopnest): Adjust prototypes. * profile.c (instrument_values): Adjust. * tree-cfg.c (modified_noreturn_calls): Adjust. (remove_fallthru_edge): Likewise. * tree-dump.c (dequeue_and_dump): Adjust. * tree-flow-inline.h (mark_stmt_modified): Adjust. * tree-flow.h (modified_noreturn_calls): Adjust. (tree_on_heap): Remove. (yay!) (register_new_def): Adjust. * tree-into-ssa.c: Define VEC(int,heap). (block_defs_stack): Adjust. (find_idf, insert_phi_nodes, register_new_def, rewrite_initialize_block, rewrite_finalize_block, register_new_update_single, rewrite_update_init_block, rewrite_update_fini_block, rewrite_blocks, ssa_rewrite_finalize_block, ssa_register_new_def, ssa_rewrite_initialize_block, rewrite_ssa_into_ssa): Likewise. * tree-loop-linear.c (linear_transform_loops): Adjust. * tree-ssa-alias.c: Define VEC(fieldoff_t,heap). (push_fields_onto_fieldstack, create_overlap_variables_for): Adjust. * tree-ssa-dom.c (avail_exprs_stack, block_defs_stack, stmts_to_rescan, const_and_copies_stack, nonzero_vars_stack, vrp_variables_stack): Adjust declarations. (tree_ssa_dominator_optimize): Adjust. (dom_opt_initialize_block, remove_local_expressions_from_table, restore_nonzero_vars_to_original_value, restore_vars_to_original_value, restore_currdefs_to_original_value, dom_opt_finalize_block, record_var_is_nonzero, record_cond, record_const_or_copy_1, optimize_stmt, update_rhs_and_lookup_avail_expr, lookup_avail_expr, record_range): Likewise. * tree-ssa-pre.c: Define VEC(basic_block,heap). (compute_antic_aux): Adjust. (inserted_exprs, create_expression_by_pieces, insert_into_preds_of_block, eliminate, mark_operand_necessary, remove_dead_inserted_code, fini_pre): Likewise. * tree-ssa-propagate.c (interesting_ssa_edges): Adjust. (varying_ssa_edges, add_ssa_edge, process_ssa_edge_worklist. ssa_prop_init): Likewise. * tree-ssa.c: Define VEC(bitmap,heap). (verify_name_tags): Adjust. * value-prof.c (rtl_divmod_values_to_profile): Adjust. (insn_prefetch_values_to_profile, rtl_find_values_to_profile, tree_divmod_values_to_profile, tree_find_values_to_profile, value_profile_transformations): Likewise. * value-prof.h: Define VEC(histogram_value,heap). * varasm.c: Remove alias_pair pointer typedef, define VEC(alias_pair,gc). (finish_aliases_1, finish_aliases_2, assemble_alias): Adjust. * config/pa/pa.c (typedef extern_symbol): Typedef the structure, not a pointer to it. Create an object vector. (extern_symbols): Turn into an object vector. (pa_hpux_asm_output_external, pa_hpux_file_end): Adjust. * cp/cp-tree.h: Adjust for new VEC API. Define VEC(tree_pair_s,gc). (struct save_scope): Adjust. (struct lang_type_class): Adjust. (unemitted_tinfo_decls): Adjust. * cp/class.c (add_method, resort_type_method_vec, finish_struct_methods, struct find_final_overrider_data, dfs_find_final_overrider_pre, find_final_overrider, get_vcall_index, warn_hidden, walk_subobject_offsets, check_methods, fixup_inline_methods, end_of_class, warn_about_ambiguous_bases, finish_struct, build_vtbl_initializer, add_vcall_offset): Adjust. * cp/decl.c (xref_basetypes, finish_method): Adjust. * cp/decl2.c (check_classfn): Adjust. * cp/init.c (sort_mem_initializers, push_base_cleanups): Adjust. * cp/method.c (do_build_copy_constructor): Adjust. * cp/name-lookup.c (new_class_binding, store_binding, store_bindings, store_class_bindings): Adjust. * cp/name-lookup.h: Define VEC(cxx_saved_binding,gc), VEC(cp_class_binding,gc). (struct cp_binding_level): Adjust. * cp/parser.c: Define VEC(cp_token_position,heap). (struct cp_lexer): Adjust. (cp_lexer_new_main, cp_lexer_new_from_tokens, cp_lexer_destroy, cp_lexer_save_tokens): Adjust. * cp/pt.c (retrieve_specialization, check_explicit_specialization): Adjust. * cp/rtti.c (unemitted_tinfo_decls): Adjust. (init_rtti_processing, get_tinfo_decl, get_pseudo_ti_init, get_pseudo_ti_desc): Adjust. * cp/search.c (dfs_access_in_type, lookup_conversion_operator, lookup_fnfields_1, dfs_walk_once, dfs_walk_once_accessible, dfs_get_pure_virtuals, lookup_conversions_r, binfo_for_vbase): Adjust. * cp/semantics.c: Define VEC(deferred_access,gc). (push_deferring_access_checks): Adjust. * cp/typeck2.c (abstract_virtuals_error): Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98498 138bc75d-0d04-0410-961f-82ee72b054a4
* PR/20742spop2005-04-217-20/+58
| | | | | | | | | | | | | | | | | | | * Makefile.in (tree-chrec.o): Depend on params.h. * params.def (PARAM_SCEV_MAX_EXPR_SIZE): New parameter with default value 20. * tree-chrec.c: Depend on params.h. Replace build with buildN, and fold build with fold_buildN. (chrec_fold_plus_1): Fail with a chrec_don_know when the size of the expression exceeds PARAM_SCEV_MAX_EXPR_SIZE. (tree_contains_chrecs): Compute an estimation of the size of the given expression. * tree-chrec.h (tree_contains_chrecs): Modify its declaration. (tree_does_not_contain_chrecs): Update the use of tree_contains_chrecs. * tree-scalar-evolution.c (simple_iv): Ditto. * doc/invoke.texi (scev-max-expr-size): Documented. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98497 138bc75d-0d04-0410-961f-82ee72b054a4
* Revert unrelated changes from latest commit.ebotcazou2005-04-212-9/+7
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98496 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.gcc (*-*-darwin*): Add darwin.opt to $extra_options.rsandifo2005-04-2120-410/+573
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (i[34567]86-pc-msdosdjgpp*): Likewise i386/djgpp.opt. (i[34567]86-*-lynxos*, powerpc-*-lynxos*): Likewise lynx.opt. (i[34567]86-*-sco3.2v5*): Likewise i386/sco5.opt. (i[34567]86-*-pe, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*) (i[34567]86-*-uwin*): Likewise i386/cygming.opt. * config/darwin.h (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch, SUBTARGET_OPTIONS): Delete. * config/darwin.c (darwin_one_byte_bool, darwin_fix_and_continue) (darwin_fix_and_continue_switch): Delete. * config/lynx.h (SUBTARGET_OS_LYNX_SWITCHES): Delete. (SUBTARGET_SWITCHES): Delete. * config/i386/i386.h (target_flags, MASK_80387, MASK_RTD) (MASK_ALIGN_DOUBLE, MASK_SVR3_SHLIB, MASK_IEEE_FP, MASK_FLOAT_RETURNS) (MASK_NO_FANCY_MATH_387, MASK_OMIT_LEAF_FRAME_POINTER) (MASK_STACK_PROBE, MASK_NO_ALIGN_STROPS, MASK_INLINE_ALL_STROPS) (MASK_NO_PUSH_ARGS, MASK_ACCUMULATE_OUTGOING_ARGS, MASK_MMX) (MASK_SSE, MASK_SSE2, MASK_SSE3, MASK_3DNOW, MASK_3DNOW_A) (MASK_128BIT_LONG_DOUBLE, MASK_64BIT, MASK_MS_BITFIELD_LAYOUT) (MASK_TLS_DIRECT_SEG_REFS, MASK_NO_RED_ZONE, TARGET_80387) (TARGET_RTD, TARGET_ALIGN_DOUBLE, TARGET_PUSH_ARGS) (TARGET_ACCUMULATE_OUTGOING_ARGS, TARGET_SVR3_SHLIB, TARGET_IEEE_FP) (TARGET_128BIT_LONG_DOUBLE, TARGET_NO_FANCY_MATH_387) (TARGET_USE_FANCY_MATH_387, TARGET_OMIT_LEAF_FRAME_POINTER) (TARGET_DEBUG_ADDR, TARGET_DEBUG_ARG): Delete. (TARGET_FLOAT_RETURNS_IN_80387): Make an alias of TARGET_FLOAT_RETURNS. (TARGET_64BIT): Undef before redefining. (TARGET_TLS_DIRECT_SEG_REFS, TARGET_STACK_PROBE) (TARGET_ALIGN_STRINGOPS, TARGET_INLINE_ALL_STRINGOPS, TARGET_SSE) (TARGET_SSE2, TARGET_SSE3, TARGET_MMX, TARGET_3DNOW, TARGET_3DNOW_A) (TARGET_RED_ZONE, TARGET_USE_MS_BITFIELD_LAYOUT, TARGET_SWITCHES) (TARGET_OPTIONS, SUBTARGET_SWITCHES, SUBTARGET_OPTIONS) (ix86_fpmath_string, ix86_tls_dialect_string, ix86_cmodel_string) (ix86_asm_string, ix86_regparm, ix86_regparm_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_debug_arg_string, ix86_debug_addr_string) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_align_funcs_string): Delete. * config/i386/cygming.h (MASK_NOP_FUN_DLLIMPORT) (TARGET_NOP_FUN_DLLIMPORT, SUBTARGET_SWITCHES): Delete. * config/i386/djgpp.h (MASK_BNU210, SUBTARGET_SWITCHES): Delete. (SUBTARGET_OVERRIDE_OPTIONS): Check TARGET_BNU210. * config/i386/lynx.h (SUBTARGET_SWITCHES): Delete. * config/i386/sco5.h (MASK_COFF, TARGET_ELF) (SUBTARGET_SWITCHES): Delete. * config/i386/i386.c (ix86_debug_arg_string): Delete. (ix86_debug_addr_string): Delete. (ix86_cmodel_string, ix86_asm_string, ix86_tls_dialect_string) (ix86_fpmath_string, ix86_regparm_string, ix86_regparm) (ix86_align_loops_string, ix86_align_jumps_string) (ix86_preferred_stack_boundary_string, ix86_branch_cost_string) (ix86_align_funcs_string): Make static. (TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults. (ix86_handle_option): New function. (TARGET_USE_MS_BITFIELD_LAYOUT): Delete. (ix86_ms_bitfield_layout_p): Check TARGET_MS_BITFIELD_LAYOUT. * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Remove handling of darwin_fix_and_continue_switch. (darwin_one_byte_bool): Delete. * config/rs6000/lynx.h (EXTRA_SUBTARGET_SWITCHES): Delete. * config/rs6000/rs6000.c (rs6000_override_options): Update assignment to darwin_one_byte_bool. * config/darwin.opt, config/lynx.opt, config/i386/cygming.opt, * config/i386/djgpp.opt, config/i386/i386.opt, * config/i386/sco5.opt: New files. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98495 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/sparc/sparc.c (reg_or_0_operand, const1_operand,ebotcazou2005-04-215-1315/+866
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fp_zero_operand, fp_register_operand, intreg_operand, fcc_reg_operand, fcc0_reg_operand, icc_or_fcc_reg_operand, call_operand, call_operand_address, tgd_symbolic_operand, tld_symbolic_operand, tie_symbolic_operand, tle_symbolic_operand, symbolic_operand, symbolic_memory_operand, label_ref_operand, sp64_medium_pic_operand, data_segment_operand, text_segment_operand, splittable_symbolic_memory_operand, reg_or_nonsymb_mem_operand, splittable_immediate_memory_operand, eq_or_neq, normal_comp_operator, noov_compare_op, noov_compare64_op, v9_regcmp_op, extend_op, cc_arithop, cc_arithopn, arith_operand, arith_4096_operand, arith_add_operand, const64_operand, const64_high_operand, arith11_operand, arith10_operand, arith_double_operand, arith_double_4096_operand, arith_double_add_operand, arith11_double_operand, arith10_double_operand, small_int, small_int_or_double, uns_small_int, uns_arith_operand, clobbered_register, input_operand, compare_operand): Delete. (sparc_emit_set_const32): Use predicates in assertion. Remove special code for TARGET_ARCH64 && HOST_BITS_PER_WIDE_INT != 64. (sparc_emit_set_const64): Call gcc_unreachable if H_B_P_W_I == 32. (GEN_HIGHINT64, GEN_INT64): Delete. (sparc_emit_set_safe_HIGH64, gen_safe_SET64, gen_safe_OR64, gen_safe_XOR64): Adjust for above deletion. (sparc_emit_set_const64): Support only H_B_P_W_I == 64 and CONST_INTs. Use 'unsigned HOST_WIDE_INT' instead of 'long' for bitmask. (legitimate_constant_p): Use const_zero_operand instead. (sparc_extra_constraint_check): Likewise. * config/sparc/sparc.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'O'. (PREFERRED_RELOAD_CLASS): Use const_zero_operand. (PREDICATE_CODES): Delete. * config/sparc/sparc.md: Include predicates.md. (All patterns): Adjust for new predicate names. (cmpdi, cmpdi_sp64): Use arith_operand predicate. (movhi_const64_special, movsi_const64_special): Add 'K' constraint. (movdi): Use general_operand predicate. (movdi_sp64_dbl): Delete. (movdi_const64_special): Add 'N' constraint. (movdicc): Use arith10_operand predicate. (movdi_cc_sp64, movdi_cc_sp64_trunc): Use arith11_operand predicate. (movdi_cc_reg_sp64): Use arith10_operand predicate. (movdi_cc_reg_sp64_trunc): Delete. (cmp_zero_extract, cmp_zero_extract_sp64): Use small_int_operand. (adddi3_insn_sp32, addx, cmp_cc_plus, cmp_ccx_plus, cmp_cc_plus_set, cmp_ccx_plus_set): Use register_operand predicate. (adddi3_sp64, cmp_ccx_plus_set): Use arith_operand predicate. (subdi3_sp32): Delete. (subdi3_insn_sp32): Change to define_insn_and_split. (subdi3_sp64, cmp_minus_ccx, cmp_minus_ccx_set): Use arith_operand. (muldi3, muldi3_sp64, muldi3_v8plus): Likewise. (smulsi3_highpart_v8plus, const_smulsi3_highpart_v8plus, umulsi3_highpart_v8plus, const_umulsi3_highpart_v8plus): Use small_int_operand predicate. (divdi3, udivdi3): Use arith_operand predicate. (udivsi3, udivsi3_sp32, udivsi3_sp64): Use nonimmediate_operand. (and<V64I>3_sp64, ior<V64I>3_sp64, xor<V64I:mode>3_sp64, xor_not_<V64I:mode>_sp64) : Use arith_operand predicate. (xordi3_sp64_dbl): Delete. (cmp_ccx_arith_op, cmp_ccx_arith_op_set, cmp_ccx_xor_not, cmp_ccx_xor_not_set, cmp_ccx_arith_op_not, cmp_ccx_arith_op_not_set, cmp_ccx_neg, cmp_ccx_set_neg, one_cmpl<V64I>2_sp64, cmp_ccx_not, cmp_ccx_set_not): Use arith_operand predicate. (ashrsi3_extend2, lshrsi3_extend2 et al.): Use small_int_operand. * config/sparc/predicates.md: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98494 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/14846kazu2005-04-212-18/+53
| | | | | | | | | | | * fold-const.c (fold_single_bit_test_into_sign_test): New, split out from ... (fold_single_bit_test): ... here. (fold_binary): Call fold_single_bit_test_into_sign_test instead of fold_single_bit_test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98482 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-04-20 Bryce McKinlay <mckinlay@redhat.com>bryce2005-04-212-3/+7
| | | | | | | * gcj.texi: Fix typos and bogus example. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98478 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2005-04-211-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98476 138bc75d-0d04-0410-961f-82ee72b054a4
* Avoid emitting bogus debug info that confuses gdb.wilson2005-04-211-2/+7
| | | | | | | | | PR c++/20805 * dwarf2out.c (gen_variable_die): Don't emit a specification if this is another declaration. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98473 138bc75d-0d04-0410-961f-82ee72b054a4
* Avoid emitting bogus debug info that confuses gdb.wilson2005-04-201-0/+6
| | | | | | | | | PR c++/20805 * dwarf2out.c (gen_variable_die): Don't emit a specification if this is another declaration. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98472 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/cris/predicates.md: New file.hp2005-04-206-339/+221
| | | | | | | | | | | | | | | | | | | | | | | | * config/cris/cris-protos.h (cris_store_multiple_op_p) (cris_movem_load_rest_p): Declare. * config/cris/cris.c (cris_store_multiple_op): Return bool, not int. (cris_movem_load_rest_p): Ditto. Globalize. (cris_bdap_operand, cris_bdap_biap_operand, cris_orthogonal_operator, cris_commutative_orth_op, cris_operand_extend_operator, cris_additive_operand_extend_operator, cris_extend_operator, cris_plus_or_bound_operator, cris_mem_op, cris_general_operand_or_symbol, cris_general_operand_or_gotless_symbol, cris_general_operand_or_plt_symbol, cris_mem_call_operand, cris_load_multiple_op): Remove predicate functions. (cris_symbol, cris_gotless_symbol) <case UNSPEC>: Return 0, don't abort, for UNSPECs other than CRIS_UNSPEC_PLT. * config/cris/cris.h (PREDICATE_CODES): Don't define. * config/cris/cris.md: Include predicates.md. ("call", "call_value"): Generate CONSTs of Pmode, not VOIDmode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98471 138bc75d-0d04-0410-961f-82ee72b054a4
* ./ian2005-04-2010-28/+49
| | | | | | | | | | | | | | | | | | | | | * c-common.def: Remove STMT_EXPR (moved to cp/cp-tree.def). * c-common.h (STMT_EXPR_STMT): Don't define. (STMT_EXPR_NO_SCOPE): Don't define. * c-dump.c (c_dump_tree): Don't handle STMT_EXPR. * c-pretty-print.c (pp_c_primary_expression): Likewise. (pp_c_expression): Likewise. cp/ * cp-tree.def: Add STMT_EXPR. * cp-tree.h (STMT_EXPR_NO_SCOPE): Define. (STMT_EXPR_STMT): Define. * cxx-pretty-print.c (pp_cxx_primary_expression): Handle STMT_EXPR. (pp_cxx_expression): Likewise. (pp_cxx_statement): Call pp_cxx_statement, not pp_statement. * dump.c (cp_dump_tree): Handle STMT_EXPR. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98469 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/21100rth2005-04-202-1/+6
| | | | | | | * config/i386/mmx.md (push<MMXMODE>1): Fix predicate thinko. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98468 138bc75d-0d04-0410-961f-82ee72b054a4
* * reload1.c (reload): Ignore equivalences between pseudos andlaw2005-04-202-2/+19
| | | | | | | read only memory. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98466 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/12913jsm282005-04-2012-39/+1510
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * c-tree.h (struct c_label_list): Update comment. (struct c_label_context): Rename to struct c_label_context_se. (label_context_stack): Rename to label_context_stack_se. (C_DECL_UNJUMPABLE_VM, C_DECL_UNDEFINABLE_VM, struct c_label_context_vm, label_context_stack_vm, c_begin_vm_scope, c_end_vm_scope): New. (C_DECL_DECLARED_BUILTIN, C_DECL_USED): Use FUNCTION_DECL_CHECK. * c-decl.c (pop_scope): Call c_end_vm_scope. (pushdecl): Call c_begin_vm_scope for variably modified declarations. (define_label): Check for jumping into scope of identifier with variably modified type. Push label on stack for those defined at current context of identifiers with variably modified type. (start_function): Create stack level for context of identifiers with variably modified type. (finish_function): Pop stack level for context of identifiers with variably modified type. * c-typeck.c (label_context_stack): Rename to label_context_stack_se. (label_context_stack_vm, c_begin_vm_scope, c_end_vm_scope): New. (c_finish_goto_label): Check for jumping into scope of identifier with variably modified type. Push label on stack for those jumped to from current context of identifiers with variably modified type. (struct c_switch): Add blocked_vm. (c_start_case): Initialize blocked_vm. (do_case): Check blocked_vm. (c_finish_case): Add comment. (c_begin_stmt_expr, c_finish_stmt_expr): Update for renamed variable label_context_stack. objc: * objc-act.c (objc_start_function): Create stack level for context of identifiers with variably modified type. testsuite: * gcc.dg/c99-vla-jump-1.c, gcc.dg/c99-vla-jump-2.c, gcc.dg/c99-vla-jump-3.c, gcc.dg/c99-vla-jump-4.c, gcc.dg/c99-vla-jump-5.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98464 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree-ssa-phiopt.c: Fix comments.kazu2005-04-202-2/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98462 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree-ssa-phiopt.c (tree_ssa_phi_opt): Update calls tokazu2005-04-202-19/+29
| | | | | | | | | | | | conditional_replacement, value_replacement, abs_replacement, minmax_replacement. (replace_phi_edge_with_variable): Remove argument BB. (conditional_replacement, value_replacement, minmax_replacement, abs_replacement): Remove argument PHI_BB. Update a call to replace_phi_edge_with_variable. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98461 138bc75d-0d04-0410-961f-82ee72b054a4
* PR20973matz2005-04-202-2/+23
| | | | | | | | * reload.c (push_reload, find_dummy_reload): Check for uninitialized pseudos. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98460 138bc75d-0d04-0410-961f-82ee72b054a4
* - Add @file to AIX entry.dje2005-04-201-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98458 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/21116kazu2005-04-202-1/+4
| | | | | | | * tree-ssa-phiopt.c: Fix a typo. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98457 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree-ssa-phiopt.c: Fix comment typos.kazu2005-04-202-2/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98456 138bc75d-0d04-0410-961f-82ee72b054a4
* * builtins.c (expand_builtin_sync_operation): Revert last change.rth2005-04-2015-130/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * optabs.c (expand_bool_compare_and_swap): Compare vs old value, not vs new value. (expand_compare_and_swap_loop): Likewise. (expand_sync_operation): Remove fallback from NAND to AND; invert memory operand when expanding from cmpxchg. (expand_sync_fetch_operation): Likewise. * doc/extend.texi (Atomic Builtins): Fix docs for nand and compare-and-swap. * config/alpha/alpha.c (alpha_split_atomic_op): Invert memory operand when implementing NAND. Fix double-add for AFTER. * config/alpha/sync.md (sync_nand<I48MODE>): Invert memory operand. (sync_old_nand<I48MODE>, sync_new_nand<I48MODE>): Likewise. (sync_compare_and_swap<I48MODE>): Fix compare vs zero. Return old memory value. (sync_lock_test_and_set<I48MODE>): Remove extra label and last memory barrier. * config/i386/sync.md (sync_compare_and_swap<IMODE>): Fix pattern to return old memory value. (sync_compare_and_swap_cc<IMODE>): Likewise. * config/ia64/ia64.c (ia64_dependencies_evaluation_hook): Early return pre-reload. Don't consider output or anti dependencies. * config/ia64/sync.md (IMODE): New. (modesuffix): Add QI and HI. (memory_barrier): Simplify expansion. (sync_compare_and_swap<IMODE>): Use IMODE, not I48MODE. (cmpxchg_acq_<IMODE>): Likewise. (sync_lock_test_and_set<IMODE>): Likewise. (sync_lock_release<IMODE>): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98436 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-04-19 James A. Morrison <phython@gcc.gnu.org>phython2005-04-204-0/+36
| | | | | | | | * fold-const.c (fold_binary): Fold ~(X ^ Y) to ~X ^ Y or X ^ ~Y if ~X or ~Y simplify. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98435 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-04-19 James A. Morrison <phython@gcc.gnu.org>phython2005-04-204-0/+27
| | | | | | | * fold-const (fold_binary): Fold ~X ^ ~ Y to X ^ Y. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98434 138bc75d-0d04-0410-961f-82ee72b054a4
* * de.po: Update.jsm282005-04-202-36/+32
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98433 138bc75d-0d04-0410-961f-82ee72b054a4
* Testcase to verify that FP regs are properly saved/restored across unwind.wilson2005-04-202-0/+99
| | | | | | | | PR target/20670 * g++.dg/eh/fp-regs.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98432 138bc75d-0d04-0410-961f-82ee72b054a4
* trans-const.c (gfc_conv_mpz_to_tree): Fix comment.kargl2005-04-202-2/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98430 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-04-20 Michael Pogue <michael.pogue@sun.com>jsm282005-04-2011-3/+128
| | | | | | | | | | | | | | | | | Joseph S. Myers <joseph@codesourcery.com> * c.opt (Wint-to-pointer-cast, Wpointer-to-int-cast): New options. * c-typeck.c (build_c_cast): Check these options. * doc/invoke.texi: Document these options. testsuite: * gcc.dg/Wint-to-pointer-cast-1.c, gcc.dg/Wint-to-pointer-cast-2.c, gcc.dg/Wint-to-pointer-cast-3.c, gcc.dg/Wpointer-to-int-cast-1.c, gcc.dg/Wpointer-to-int-cast-2.c, gcc.dg/Wpointer-to-int-cast-3.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98429 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree-ssa-phiopt.c: Update a comment about the pass.kazu2005-04-202-37/+52
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98428 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2005-04-201-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98425 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree-ssa-phiopt.c, config/arm/arm.c, config/fr30/fr30.md,kazu2005-04-195-6/+11
| | | | | | | config/mcore/mcore.c: Fix comment typos. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98421 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in (libgcc.mk): Pass GCC_FOR_TARGET.drow2005-04-193-2/+9
| | | | | | | * mklibgcc.in: Use $GCC_FOR_TARGET instead of ./xgcc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98420 138bc75d-0d04-0410-961f-82ee72b054a4
* * invoke.texi: Update -Waliasing description.kargl2005-04-192-5/+20
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98418 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/arm/arm.c (arm_init_libfuncs): Clear mod optabs.jules2005-04-192-0/+11
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98417 138bc75d-0d04-0410-961f-82ee72b054a4
* * except.c: Fix a comment typo.kazu2005-04-192-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98413 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-04-19 Andrew Haley <aph@redhat.com>aph2005-04-192-3/+9
| | | | | | | | | PR java/21022 * dbxout.c (dbxout_type_fields): Check DECL_IGNORED_P before looking at a field's bitpos. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98412 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/decl.c (finish_method): Revert patch from 2005-04-13 for breakingjules2005-04-192-7/+5
| | | | | | | indirect dispatch with PIC. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98408 138bc75d-0d04-0410-961f-82ee72b054a4
* fixincludes:ghazi2005-04-192-0/+10
| | | | | | | | | | | | | | | | * system.h (fopen, fdopen, freopen): Define these to the unlocked libiberty functions. gcc: * system.h (fopen, fdopen, freopen): Define these to the unlocked libiberty functions. libcpp: * system.h (fopen, fdopen, freopen): Define these to the unlocked libiberty functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98407 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/21096kazu2005-04-192-0/+6
| | | | | | | * tree-ssa-copy.c (fini_copy_prop): Free cached_last_copy_of. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98405 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-04-18 Andrew Haley <aph@redhat.com>aph2005-04-195-147/+207
| | | | | | | | | | | | | | | | | | * java-except.h (struct eh_range.handler): Remove unused field. (handle_nested_ranges): Remove function declaration. (sanity_check_exception_range): Add function declaration. * verify.c (verify_jvm_instructions): Remove call to handle_nested_ranges. * verify-glue.c (verify_jvm_instructions_new): Call sanity_check_exception_range. * except.c (link_handler, eh_range_freelist, link_handler, handle_nested_ranges): Remove. (add_handler): Rewrite. (sanity_check_exception_range): New function. (print_ranges): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98395 138bc75d-0d04-0410-961f-82ee72b054a4
* PR fortran/16861fxcoudert2005-04-194-0/+46
| | | | | | | | | * resolve.c (resolve_variable): If e->symtree is not set, this ought to be a FAILURE, and not a segfault. * gfortran.dg/pr16861.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98391 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/21098amodra2005-04-193-2/+16
| | | | | | | | * config/rs6000/rs6000.c (rs6000_elf_end_indicate_exec_stack): New. * config/rs6000/linux64.h (TARGET_ASM_FILE_END): Use the above. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98390 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree-cfg.c (dump_function_to_file): Use cfun info only if itaoliva2005-04-192-2/+7
| | | | | | | refers to the function being dumped. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98367 138bc75d-0d04-0410-961f-82ee72b054a4
* * varasm.c (assemble_start_function): Remove reset of in_section.drow2005-04-192-1/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98366 138bc75d-0d04-0410-961f-82ee72b054a4