- 02 Mar, 2005 20 commits
-
-
From-SVN: r95803
Devang Patel committed -
gcc/cp/ChangeLog: * name-lookup.c (push_overloaded_decl): Don't error if the new decl matches the old one. * decl.c (redeclaration_error_message): Likewise. gcc/testsuite/ChangeLog: * g++.dg/overload/using2.C: New. From-SVN: r95798
Alexandre Oliva committed -
PR tree-optimization/18815 * tree-if-conv.c (combine_blocks): Adjust loop header edges for loops with zero exit edges. From-SVN: r95796
Devang Patel committed -
2005-03-02 David Ayers <d.ayers@inode.at> PR libobjc/19024 * Makefile.in (OBJS): Add hash_compat.lo. (OBJS_GC): Add hash_compat_gc.lo. (hash_compat_gc.lo): New target and rule. * objc/hash.h (hash_new, hash_delete, hash_add, hash_remove) (hash_next, hash_value_for_key, hash_is_key_in_hash) (hash_ptr, hash_string, compare_ptrs, compare_strings): Prefix with objc_. Add deprecated non prefixed inlined versions. (OBJC_IGNORE_DEPRECATED_API): New macro to hide deprecated declarations. * hash.c (hash_new, hash_delete, hash_add, hash_remove, hash_next) (hash_value_for_key, hash_is_key_in_hash): Prefix with objc_ and update callers. * hash_compat.c: New file. * archive.c: Update callers. * init.c: Likewise. * selector.c: Likewise. * libobjc.def: Add objc_ versions of hash functions. From-SVN: r95793
David Ayers committed -
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Call free_dominance_info only when needed. From-SVN: r95791
Kazu Hirata committed -
* cfg.c (connect_src, connect_dest, disconnect_src, disconnct_dest): New. (unchecked_make_edge, remove_edge, redirect_edge_succ, redirect_edge_pred): Use the new functions. From-SVN: r95790
Kazu Hirata committed -
PR target/20276 * config/rs6000/predicates.md (reg_or_cint64_operand): Fix typo. (reg_or_sub_cint64_operand): Same. From-SVN: r95789
David Edelsohn committed -
tree-ssa-dom.c (tree_ssa_dominator_optimize): Fix setting of CFG_ALTERED in the main DOM iteration loop. * tree-ssa-dom.c (tree_ssa_dominator_optimize): Fix setting of CFG_ALTERED in the main DOM iteration loop. From-SVN: r95788
Jeff Law committed -
PR c++/19916 * varasm.c (initializer_constant_valid_p): Allow conversions between OFFSET_TYPEs. Tidy. PR c++/19916 * g++.dg/init/ptrmem2.C: New test. From-SVN: r95787
Mark Mitchell committed -
* config/cris/cris.md ("return"): Remove epilogue delay list sanity check. From-SVN: r95786
Hans-Peter Nilsson committed -
* config/arm/linux-elf.h (ARM_FUNCTION_PROFILER): Do not use (PLT) for Thumb. * config/arm/netbsd-elf.h (ARM_FUNCTION_PROFILER): Likewise. From-SVN: r95785
Daniel Jacobowitz committed -
* fold-const.c (fold_unary): New. (fold): Call fold_unary on unary expressions. From-SVN: r95783
Kazu Hirata committed -
PR middle-end/18029 and PR middle-end/18030 * expr.c (optimize_bitfield_assignment_op): Add a special case to handle BIT_IOR_EXPR and BIT_XOR_EXPR. From-SVN: r95782
Kazu Hirata committed -
* cfgloop.h, cfgloopanal.c, cfgloopmanip.c, conflict.c, loop-init.c, loop-unroll.c, print-tree.c, reg-notes.def, config/m68k/m68k.c, config/mips/mips.h, config/rs6000/rs6000-protos.h, doc/contrib.texi, doc/include/gcc-common.texi: Update copyright. From-SVN: r95781
Kazu Hirata committed -
2005-03-02 Douglas Gregor <doug.gregor@gmail.com> * include/tr1/functional (_Has_result_type): Cleanup. (_Result_of_impl): Handle member data pointers correctly. (reference_wrapper): Support invocation. Move repetition code into new file include/tr1/repeat.h. * include/tr1/functional_iterate.h (reference_wrapper): Support invocation. Cleanup long lines. * include/tr1/ref_wrap_iterate.h (reference_wrapper): Declare invocation operators. * include/tr1/repeat.h: Code repetition header. * include/Makefile.am: Add ref_wrap_iterate.h, repeat.h * include/Makefile.in: Add ref_wrap_iterate.h, repeat.h * testsuite/tr1/3_function_objects/reference_wrapper/invoke.cc: New test of reference_wrapper invocation. * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc: New test of reference_wrapper typedefs and base classes. * testsuite/tr1/3_function_objects/result_of.cc: Trivial cleanup (e-mail address). 2005-03-02 Douglas Gregor <doug.gregor@gmail.com> * include/tr1/function (result_of): New class template. * include/tr1/functional/iterator.h: Implementation of TR1 result_of. * testsuite/tr1/3_function_objects/result_of.cc: New test From-SVN: r95778
Douglas Gregor committed -
2005-03-02 Richard Guenther <rguenth@gcc.gnu.org> * cgraph.h (struct cgraph_edge): Add prev_caller and prev_callee fields. (cgraph_node_remove_callees): Export. * cgraph.c (cgraph_create_edge): Initialize prev_caller and prev_callee. (cgraph_edge_remove_callee): New function. (cgraph_edge_remove_caller): Likewise. (cgraph_remove_edge): Use. (cgraph_redirect_edge_callee): Likewise. (cgraph_node_remove_callees): New function. (cgraph_node_remove_callers): Likewise. (cgraph_remove_node): Use. * tree-optimize.c (tree_rest_of_compilation): Use cgraph_node_remove_callees instead of manual loop. * cgraphunit.c (cgraph_finalize_function): Likewise. (cgraph_expand_function): Likewise. (cgraph_remove_unreachable_nodes): Likewise. From-SVN: r95777
Richard Guenther committed -
From-SVN: r95774
Vladimir Merzliakov committed -
PR c/8927 * c-tree.h (undeclared_variable, build_external_ref): Add extra argument. * c-decl.c (undeclared_variable): Take location as argument. * c-typeck.c (build_external_ref): Likewise. * c-parser.c (c_parser_postfix_expression): Pass location of identifier to build_external_ref. testsuite: * gcc.dg/pr8927-1.c: New test. From-SVN: r95773
Joseph Myers committed -
* decl.c (finish_function): Use SET_EXPR_LOCATION instead of unavailable annotate_with_file_line, if USE_MAPPED_LOCATION. From-SVN: r95772
Per Bothner committed -
From-SVN: r95770
GCC Administrator committed
-
- 01 Mar, 2005 20 commits
-
-
2005-03-01 Kelley Cook <kcook@gcc.gnu.org> * Makefile.in, include/Makefile.in: Regenerate. From-SVN: r95762
Kelley Cook committed -
PR libgcj/20160 * ltmain.sh: Avoid creating archives with components that have duplicate basenames. From-SVN: r95756
Alexandre Oliva committed -
rs6000.md (cceq splitter): Use operand mode, not CCEQ mode for branch_positive_comparison_operator test. * config/rs6000/rs6000.md (cceq splitter): Use operand mode, not CCEQ mode for branch_positive_comparison_operator test. * config/rs6000/predicates (branch_comparison_operator): Revert to define_predicate. (scc_comparison_operator): Same. (branch_positive_comparison_operator): Same. From-SVN: r95755
David Edelsohn committed -
(cris_delay_slots_for_epilogue): Remove. (save_last): Move into cris_target_asm_function_epilogue. (cris_target_asm_function_epilogue): Remove tests for file being NULL. * config/cris/cris-protos.h (cris_eligible_for_epilogue_delay) (cris_delay_slots_for_epilogue): Remove prototypes. * config/cris/cris.h (DELAY_SLOTS_FOR_EPILOGUE) (ELIGIBLE_FOR_EPILOGUE_DELAY): Do not define. From-SVN: r95754
Hans-Peter Nilsson committed -
* config/rs6000/predicates.md (branch_comparison_operator): Change to define_special_predicate. (scc_comparison_operator): Same. (branch_positive_comparison_operator): Same. From-SVN: r95752
David Edelsohn committed -
From-SVN: r95751
Daniel Berlin committed -
2005-03-01 Daniel Berlin <dberlin@dberlin.org> * Makefile.in (tree-ssa-sink.o): New. (OBJS-common): Add tree-ssa-sink.o. * common.opt: Add -ftree-sink * opts.c (decode_options): flag_tree_sink is set at O1 or higher. * timevar.def (TV_TREE_SINK): new timevar. * tree-flow.h (is_hidden_global_store): Prototype. * tree-optimize.c (init_tree_optimization_passes): Add pass_sink_code. * tree-pass.h (pass_sink_code): New. * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Move checking for non-obvious global store store to is_hidden_global_store, and call that new function. * tree-ssa-sink.c: New file. * doc/invoke.texi: Document -fdump-tree-sink and -ftree-sink. * doc/passes.texi: Document forward store motion. * testsuite/gcc.dg/tree-ssa/ssa-sink-1.c: New test * testsuite/gcc.dg/tree-ssa/ssa-sink-2.c: New test * testsuite/gcc.dg/tree-ssa/ssa-sink-3.c: New test * testsuite/gcc.dg/tree-ssa/ssa-sink-4.c: New test From-SVN: r95750
Daniel Berlin committed -
PR java/8608 * check-init.c (wfl): Remove static. (final_assign_error, check_init): Replace calls to parse_error_context by plain error. (check_init): Save, set, and restore input_location for each exp. From-SVN: r95749
Per Bothner committed -
jcf-reader.c (get_attribute): Handle SourceDebugExtension (JSR 45) if HANDLE_SOURCEDEBUGEXTENSION_ATTRIBUTE... * jcf-reader.c (get_attribute): Handle SourceDebugExtension (JSR 45) if HANDLE_SOURCEDEBUGEXTENSION_ATTRIBUTE is defined. From-SVN: r95748
Per Bothner committed -
* java-tree.h (IDENTIFIER_HANDLECLASS_VALUE): Remove ancient macro. Also improve commenst for IDENTIFIER_CLASS_VALUE. From-SVN: r95747
Per Bothner committed -
diagnostic.c (diagnostic_build_prefix): If USE_MAPPED_LOCATION and we have a non-zero column-number, add it to the message. * diagnostic.c (diagnostic_build_prefix): If USE_MAPPED_LOCATION and we have a non-zero column-number, add it to the message. Also factor out the diagnostic_kind_text. From-SVN: r95746
Per Bothner committed -
From-SVN: r95742
Hans-Peter Nilsson committed -
* cfgloop.c (flow_loop_entry_edges_find, flow_loop_exit_edges_find, flow_loop_pre_header_scan, flow_loop_pre_header_find, flow_loop_scan): Removed. (flow_loop_dump): Do not dump removed fields. (flow_loop_free): Do not free removed fields. (flow_loops_find): Flags argument removed. Do not call flow_loop_scan. (loop_exit_edge_p): New function. * cfgloop.h (struct loop): Removed fields pre_header, pre_header_edges, num_pre_header_edges, entry_edges, num_entries, exit_edges, num_exits, exits_doms. (LOOP_TREE, LOOP_PRE_HEADER, LOOP_ENTRY_EDGES, LOOP_EXIT_EDGES, LOOP_EDGES, LOOP_ALL): Removed. (flow_loop_scan): Declaration removed. (loop_exit_edge_p, mark_loop_exit_edges): Declare. * cfgloopmanip.c (create_loop_notes): Do not pass flags to flow_loops_find. * ifcvt.c (mark_loop_exit_edges): Moved to cfgloopanal.c. (if_convert): Call flow_loops_find and flow_loops_free when calling mark_loop_exit_edges. * cfgloopanal.c (mark_loop_exit_edges): Moved from ifcvt.c. Removed the flow_loops_find, flow_loops_free and free_dominance_info calls. * loop-init.c (flow_loops_find): Ditto. * passes.c (rest_of_handle_branch_prob): Ditto. * lambda-code.c (perfect_nestify): Do not call flow_loops_find. * loop-unroll.c (analyze_insns_in_loop): Do not use EDGE_LOOP_EXIT. * predict.c (predict_loops): Do not call flow_loop_scan. Use get_loop_exit_edges. (tree_estimate_probability): Do not pass flags to flow_loops_find. * tree-if-conv.c (bb_with_exit_edge_p): Take loop as argument. Do not use EDGE_LOOP_EXIT. (tree_if_convert_cond_expr, if_convertible_modify_expr_p): Pass loop to bb_with_exit_edge_p. (if_convertible_loop_p): Do not call flow_loop_scan. Use loop->single_exit. Do not use EDGE_LOOP_EXIT. Pass loop to bb_with_exit_edge_p. (combine_blocks): Pass loop to bb_with_exit_edge_p. Do not use EDGE_LOOP_EXIT. * tree-loop-linear.c (linear_transform_loops): Do not call flow_loop_scan. Use loop->single_exit. * tree-vect-analyze.c (vect_analyze_operations): Use loop->single_exit. (vect_analyze_loop_form): Do not call flow_loop_scan. * tree-vect-transform.c (vect_update_ivs_after_vectorizer): Use loop->single_exit. (vect_do_peeling_for_loop_bound): Use loop_preheader_edge and loop->single_exit. * tree-vectorizer.c (slpeel_update_phis_for_duplicate_loop, slpeel_make_loop_iterate_ntimes, slpeel_can_duplicate_loop_p, slpeel_tree_duplicate_loop_to_edge_cfg, slpeel_verify_cfg_after_peeling, slpeel_tree_peel_loop_to_edge): Use loop_preheader_edge and loop->single_exit. Do not call flow_loop_scan. From-SVN: r95738
Zdenek Dvorak committed -
(thumb_find_work_register): Check all of the argument registers to see if they are free, and a couple of special cases where the last argument register but can be proved to be available during the function's prologue. (print_multi_reg, arm_compute_save_reg0_reg12_mask, output_return_instruction, emit_multi_reg_push, thumb_pushpop, thumb_unexpanded_epilogue): Use unsigned long as the type for the register bit-mask. (thumb_compute_save_reg_mask): Likewise. Also use thumb_find_work_register() to ensure that there is agreement about which work register is going to be used in the prologue. (thumb_output_function_prologue): Use unsigned long as the type for the register bit-mask. Also delay pushing the link register if other high registers are going to be pushed. (thumb_compute_save_reg_mask, emit_multi_reg_push, print_multi-reg, number_of_first_bit_set, thumb_pushpop): Remove redundant prototypes. From-SVN: r95736
Nick Clifton committed -
cp: PR c++/20232 * class.c (update_vtable_entry_for_fn): Don't crash on invalid covariancy. * cp-tree.g (THUNK_TARGET): Expand comment. * method.c (use_thunk): Make sure we also use the target, if that is a thunk. testsuite: PR c++/20232 * g++.dg/inherit/covariant12.C: New. From-SVN: r95733
Nathan Sidwell committed -
include/ 2005-03-01 Jan Beulich <jbeulich@novell.com> * libiberty.h: Declare unlink_if_ordinary. libiberty/ 2005-03-01 Jan Beulich <jbeulich@novell.com> * Makefile.in (CFILES): Add unlink-if-ordinary.c (REQUIRED_OFILES): Add unlink-if-ordinary.o. Add dependencies and rule for unlink-if-ordinary.o. * unlink-if-ordinary.c: New. From-SVN: r95732
Jan Beulich committed -
PR target/19819 * pa.h (GO_IF_LEGITIMATE_ADDRESS): Allow allow hard registers during and after reload in REG+REG indexed addresses without REG_POINTER set in the base and not set in the index. From-SVN: r95729
John David Anglin committed -
2005-02-28 Benjamin Kosnik <bkoz@redhat.com> * testsuite/tr1/2_general_utilities/memory/shared_ptr/ cons/auto_ptr_neg.cc: Correct line numbers. * testsuite/testsuite_abi.cc: Add CXXABI_1.3.1. From-SVN: r95727
Benjamin Kosnik committed -
* config/sh/linux.h (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Don't undefine here. (HANDLE_PRAGMA_PACK_PUSH_POP): Delete. (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC): Likewise. (TARGET_OS_CPP_BUILTINS): Use LINUX_TARGET_OS_CPP_BUILTINS. (LIB_SPEC, LINK_EH_SPEC, STARTFILE_SPEC, ENDFILE_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED, TARGET_C99_FUNCTIONS): Delete. * config.gcc (sh*-*-linux*): Use config/linux.h. From-SVN: r95726
Kaz Kojima committed -
2005-02-28 Dale Johannesen <dalej@apple.com> Stan Shebs <shebs@apple.com> Rewrite of 64-bit Darwin structure-by-value pass/return. * config/rs6000/rs6000.h (CUMULATIVE_ARGS): New fields intoffset, use_stack, named. * config/rs6000/rs6000.c (rs6000_darwin64_function_arg): Remove. (rs6000_darwin64_record_arg_advance_flush): New. (rs6000_darwin64_record_arg_advance_recurse): New. (rs6000_darwin64_record_arg_flush): New. (rs6000_darwin64_record_arg_recurse): New. (rs6000_darwin64_record_arg): New. (rs6000_return_in_memory): Remove AGGREGATE_TYPE_P check. (function_arg_boundary): Handle 128-bit aligned structs. (function_arg_advance): Rewrite darwin64 struct handling. (function_arg): Call rs6000_darwin64_record_arg. (function_arg_partial_nregs): Handle darwin64 structs. (rs6000_darwin64_function_value): Remove. (rs6000_function_value): Call rs6000_darwin64_record_arg. Co-Authored-By: Stan Shebs <shebs@apple.com> From-SVN: r95723
Dale Johannesen committed
-