1. 29 May, 2005 14 commits
  2. 28 May, 2005 16 commits
    • hubicka's avatar
      · 9a755727
      hubicka authored
      	PR tree-optimization/21562
      	* cfgexpand.c (construct_init_block): Deal properly with the case
      	of entry edge not pointing to very first basic block.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100305 138bc75d-0d04-0410-961f-82ee72b054a4
      9a755727
    • paolo's avatar
      2005-05-28 Paolo Carlini <pcarlini@suse.de> · 028843d7
      paolo authored
      	Revert:
      	2005-05-18  Paolo Carlini  <pcarlini@suse.de>
      		    Nathan Myers  <ncm@cantrip.org>
      
      	PR libstdc++/19495
      	* include/bits/basic_string.h (_Raw_bytes_alloc): Rebind to
      	size_type instead of char and rename to _Raw_alloc.
      	* include/bits/basic_string.tcc (_Rep::_M_destroy, _Rep::_S_create):
      	Use the above.
      	* src/bitmap_allocator.cc: Add instantiation for size_type.
      	* src/mt_allocator.cc: Likewise.
      	* src/pool_allocator.cc: Likewise.
      	* include/ext/array_allocator.h: Tweak slightly, avoid assuming
      	the existence of an _Array::begin() and size() members.
      	* testsuite/ext/array_allocator/2.cc: Tweak to use an allocator
      	of size_type, instead of char, thus avoiding problems with
      	rebinds, not treated correctly by array_allocator.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100304 138bc75d-0d04-0410-961f-82ee72b054a4
      028843d7
    • kazu's avatar
      * basic-block.h: Remove forward declaration of bb_ann_d. · 4cfdd2de
      kazu authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100303 138bc75d-0d04-0410-961f-82ee72b054a4
      4cfdd2de
    • kazu's avatar
      * Makefile.in (OBJS-common): Add tree-cfgcleanup.o. · bfd49939
      kazu authored
      	* tree-flow.h: Add prototypes for start_recording_case_labels
      	and end_recording_case_labels.
      	* tree-cfg.c (start_recording_case_labels,
      	end_recording_case_labels): Export.
      	(cleanup_tree_cfg_loop, modified_noreturn_calls,
      	cleanup_control_flow, cleanup_control_expr_graph,
      	remove_fallthru_edge, phi_alternatives_equal,
      	tree_forwarder_block_p, has_abnormal_incoming_edge_p,
      	remove_forwarder_block, cleanup_forwarder_blocks,
      	remove_forwarder_block_with_phi, merge_phi_nodes,
      	gate_merge_phi, pass_merge_phi): Move to ...
      	* tree-cfgcleanup.c: ... here.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100302 138bc75d-0d04-0410-961f-82ee72b054a4
      bfd49939
    • kazu's avatar
      * tree-ssa-ccp.c (ccp_fold): Remove code that produces · 1c9fc671
      kazu authored
      	non-gimple min minvariant.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100301 138bc75d-0d04-0410-961f-82ee72b054a4
      1c9fc671
    • kargl's avatar
      * gfortran.dg/subnormal_1.f90: new test. · eaa93939
      kargl authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100300 138bc75d-0d04-0410-961f-82ee72b054a4
      eaa93939
    • kargl's avatar
      * arith.c (gfc_arith_init_1): Fix off by one problem; · 4b16b2fc
      kargl authored
        (gfc_check_integer_range): Chop extra bits in subnormal numbers.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100299 138bc75d-0d04-0410-961f-82ee72b054a4
      4b16b2fc
    • hubicka's avatar
      · 421e19dd
      hubicka authored
      	* tree-ssa-threadupdate.c: (create_edge_and_update_destination_phis):
      	Update profile.
      	* value-prof.c (tree_divmod_fixed_value_transform): Be more verbose in
      	debug output.
      	(tree_mod_subtract): Fix profile updating code.
      	(tree_divmod_values_to_profile): Do not produce useless value profilers
      	for divisions.
      
      	* tree-prof.exp: Fix comment.
      	* value-prof-1.c: New.
      	* value-prof-2.c: New.
      	* value-prof-3.c: New.
      	* value-prof-4.c: New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100298 138bc75d-0d04-0410-961f-82ee72b054a4
      421e19dd
    • kargl's avatar
      * intrinsic.texi: added documentation for BIT_SIZE, BTEST, CHAR, CEILING · bb3d0c30
      kargl authored
        and CMPLX
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100297 138bc75d-0d04-0410-961f-82ee72b054a4
      bb3d0c30
    • gdr's avatar
      * configure.ac: Check declarations for asprintf and vasprintf. · 720aca92
      gdr authored
      	* config.in: Regenerate.
      	* configure: Likewise.
      
      	* charset.c (conversion_loop): Use XRESIZEVEC.
      	(convert_no_conversion): Likewise.
      	(convert_using_iconv): Likewise.
      	(init_iconv_desc): Cast return value of alloca.
      	(cpp_host_to_exec_charset): Use XNEWVEC.
      	(emit_numeric_escape): Use XRESIZEVEC.
      	(cpp_interpret_string): Use XNEWVEC.
      	(cpp_interpret_string): Use XRESIZEVEC.
      	(_cpp_interpret_identifier): Cast return value of alloca.
      	(_cpp_convert_input): Use XNEWVEC and XRESIZEVEC.
      	* directives.c (glue_header_name): Use XNEWVEC and XRESIZEVEC.
      	(parse_include): Use XNEWVEC.
      	(insert_pragma_entry): Rename local variable "new" to
      	"new_entry".
      	(save_registered_pragmas): Cast return value of xmemdup.
      	(destringize_and_run): Same for alloca.
      	(parse_assertion): Likewise.
      	(do_assert): Cast allocated storage to proper type.
      	(cpp_define): Likewise.
      	(_cpp_define_builtin): Likewise.
      	(cpp_undef): Likewise.
      	(handle_assertion): Likewise.
      	(cpp_push_buffer): Rename local variable "new" to "new_buffer".
      	* expr.c (CPP_UPLUS): Cast value to type cpp_ttype.
      	(CPP_UMINUS): Likewise.
      	(struct cpp_operator): Rename from struct operator.
      	(_cpp_expand_op_stack): Use XRESIZEVEC.
      	* files.c (pch_open_file): Use XNEWVEC.
      	(pch_open_file): Use XRESIZEVEC.
      	(read_file_guts): Use XNEWVEC and XRESIZEVEC.
      	(dir_name_of_file): Use XNEWVEC.
      	(make_cpp_file): Use XCNEW.
      	(make_cpp_dir): Likewise.
      	(allocate_file_hash_entries): USE XNEWVEC.
      	(cpp_included): Cast return value of htab_find_with_hash.
      	(append_file_to_dir): Use XNEWVEC.
      	(read_filename_string): Likewise. Use XRESIZEVEC too.
      	(read_name_map): Cast return value of alloca.  Use XRESIZEVEC.
      	(remap_filename): Use XNEWVEC.
      	(struct pchf_entry): Move definition out of struct pchf_data.
      	(_cpp_save_file_entries): Use XCNEWVAR.
      	(_cpp_read_file_entries): Use XNEWVAR.
      	* identifiers.c (alloc_node): Use XOBNEW.
      	* init.c (cpp_create_reader): Use XCNEW.
      	(cpp_init_builtins): Cast of b->value to enum builtin_type.
      	(read_original_directory): Cast return value of alloca.
      	* lex.c (add_line_note): Use XRESIZEVEC.
      	(warn_about_normalization): Use XNEWVEC.
      	(_cpp_lex_direct): Cast node->directive_index to (enum cpp_ttype).
      	(new_buff): Use XNEWVEC.
      	* line-map.c (linemap_add): Use XRESIZEVEC.
      	* macro.c (builtin_macro): Cast return value of alloca.
      	(paste_tokens): Likewise.
      	(expand_arg): Use XNEWVEC and XRESIZEVEC.
      	(_cpp_save_parameter): Use XRESIZEVEC.
      	(create_iso_definition): Cast allocated storage to proper type.
      	(_cpp_create_definition): Likewise.
      	(cpp_macro_definition): Use XRESIZEVEC.
      	* makedepend.c (add_clm): Use XNEW.
      	(add_dir): Likewise.
      	* mkdeps.c (munge): Use XNEWVEC.
      	(deps_init): Use XCNEW.
      	(deps_add_target): Use XRESIZEVEC.
      	(deps_add_default_target): Cast return value of alloca.
      	(deps_add_dep): Use XRESIZEVEC.
      	(deps_add_vpath): Likewise.  Use XNEWVEC too.
      	(deps_restore): Likewise.
      	* pch.c (save_idents): Use XNEW and XNEWVEC.
      	(cpp_save_state): Use XNEW.
      	(count_defs): Cast return value of htab_find.
      	(write_defs): Likewise.
      	(cpp_write_pch_deps): Use XNEWVEC.
      	(collect_ht_nodes): Use XRESIZEVEC.
      	(cpp_valid_state): Use XNEWVEC.
      	(save_macros): Use XRESIZEVEC.  Cast return value of xmemdup.
      	* symtab.c (ht_create): Use XCNEW.
      	(ht_lookup_with_hash): Cast return value of obstack_copy0.
      	(ht_expand): Use XCNEWVEC.
      	* system.h (HAVE_DESIGNATED_INITIALIZERS): False if __cplusplus.
      	(bool): Do not define if __cplusplus.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100295 138bc75d-0d04-0410-961f-82ee72b054a4
      720aca92
    • kazu's avatar
      * tree-inline.c (cfun_stack): Change the type to · 08d9c733
      kazu authored
      	VEC(function_p,heap).
      	(push_cfun, pop_cfun): Use VEC instead of VARRAY.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100294 138bc75d-0d04-0410-961f-82ee72b054a4
      08d9c733
    • kazu's avatar
      * tree-ssa-dom.c (vrp_element_p): Define. · 99a32a28
      kazu authored
      	(vrp_hash_elt): Change the type of records to
      	VEC(vrp_element_p,heap).
      	(vrp_free): New.
      	(tree_ssa_dominator_optimize): Pass vrp_free to htab_create.
      	Update uses of VRP records.
      	(simplify_cond_and_lookup_avail_expr, record_range): Update
      	uses of VRP records.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100293 138bc75d-0d04-0410-961f-82ee72b054a4
      99a32a28
    • aj's avatar
      include: · 71f27b28
      aj authored
      2005-05-28  Eli Zaretskii  <eliz@gnu.org>
      
      	* libiberty.h: (snprintf) [!HAVE_DECL_SNPRINTF]: Declare if
      	needed.
      	(vsnprintf) [!HAVE_DECL_VSNPRINTF]: Declare if needed.
      
      libiberty:
      2005-05-28  Eli Zaretskii  <eliz@gnu.org>
      
      	* configure.ac: Add snprintf and vsnprintf to AC_CHEK_DECLS.
      	* config.in, configure: Regenerate.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100292 138bc75d-0d04-0410-961f-82ee72b054a4
      71f27b28
    • mmitchel's avatar
      PR c++/21614 · 7e116ea8
      mmitchel authored
      	* typeck.c (get_member_function_from_ptrfunc): Do not attempt
      	conversions to base classes of incomplete types.
      
      	PR c++/21614
      	* g++.dg/expr/ptrmem6.C: New test.
      	* g++.dg/expr/ptrmem6a.C: Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100291 138bc75d-0d04-0410-961f-82ee72b054a4
      7e116ea8
    • ian's avatar
      ./: · d1725120
      ian authored
      	* c-decl.c (add_stmt): Add C frontend specific version.
      	(stmts_are_full_exprs_p): Remove.
      	* c-common.h (STMT_IS_FULL_EXPR_P): Remove.
      	(stmts_are_full_exprs_p): Don't declare.
      	* c-semantics.c (add_stmt): Remove.
      cp/:
      	* semantics.c (add_stmt): Add C++ frontend specific version.
      	* cp-tree.h (STMT_IS_FULL_EXPR_P): Define.
      	(stmts_are_full_exprs_p): Declare.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100289 138bc75d-0d04-0410-961f-82ee72b054a4
      d1725120
    • gccadmin's avatar
      Daily bump. · 98c12020
      gccadmin authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100287 138bc75d-0d04-0410-961f-82ee72b054a4
      98c12020
  3. 27 May, 2005 10 commits
    • sayle's avatar
      · 97d541d5
      sayle authored
      	* cp-tree.def (UNARY_PLUS_EXPR): New C++ unary tree code.
      	* parser.c (cp_parser_unary_expression): Use UNARY_PLUS_EXPR instead
      	of CONVERT_EXPR.
      	(cp_parser_unary_expression): Likewise.
      	* typeck.c (build_unary_op): Likewise.
      	* call.c (add_builtin_candidate, build_new_op): Likewise.
      	* error.c (dump_expr): Likewise.
      	* pt.c (tsubst_copy, tsubst_copy_and_build): Likewise.
      	* decl.c (ambi_op_p, grok_op_properties): Likewise.
      	* dump.c (dump_op): Likewise.
      	* lex.c (init_operators): Likewise.
      	* operators.def ("+"): Likewise.
      	* cp-gimplify.c (cp_gimplify_expr): Handle UNARY_PLUS_EXPR like a
      	conversion, if the result and argument types differ.
      	* tree.c (fold_if_not_in_template): Fold UNARY_PLUS_EXPR much
      	like a NOP_EXPR when !processing_template_decl.
      
      	* cxx-pretty-print.c (pp_cxx_cast_expression): Prototype.
      	(pp_cxx_unary_expression): Handle new UNARY_PLUS_EXPR tree code.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100285 138bc75d-0d04-0410-961f-82ee72b054a4
      97d541d5
    • ghazi's avatar
      * config/mips/mips-protos.h (mips_declare_object): Add printf · e2a91ff6
      ghazi authored
      	attribute.
      	* config/mips/mips.c (mips_declare_object_name): Fix format
      	argument.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100284 138bc75d-0d04-0410-961f-82ee72b054a4
      e2a91ff6
    • sayle's avatar
      · ea06f797
      sayle authored
      	* reg-stack.c (compensate_edge): Remove original prototype.
      	(propagate_stack): New function to copy the stack layout
      	at the start of a basic block from the layout at the end of
      	one of its predecessors.
      	(compensate_edge): Assume that both source and destination
      	blocks have already had their stack layouts defined.
      	(compensate_edges): Traverse all non-entry edges in the CFG
      	and call compensate_edge on each in turn.
      	(convert_regs_1): Change return type to void.  Call
      	propagate_stack instead of compensate_edge.
      	(convert_regs_2): Change return type to void.  Update call
      	to convert_regs_1 to ignore the (now void) return value.
      	(convert_regs): Update calls to convert_regs_2 to ignore
      	the (now void) return value.  After all the basic blocks have
      	been processed, call compensate_edges to actually emit new
      	insns.
      	(reg_to_stack): Initialize the aux info for each basic block
      	with FOR_EACH_BB instead of which FOR_EACH_BB_REVERSE.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100283 138bc75d-0d04-0410-961f-82ee72b054a4
      ea06f797
    • hubicka's avatar
      * except.c (can_throw_internal_1, can_throw_external_1): Add · e4bbf4c1
      hubicka authored
      	"is_resx" argument.
      	(can_throw_external, can_throw_internal): Bring into sync wrt
      	dealing resx.
      	* except.h (can_throw_internal_1, can_throw_external_1): Update
      	prototype.
      	* tree-eh.c (tree_can_throw_internal, tree_can_throw_external):
      	Deal properly with resx.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100282 138bc75d-0d04-0410-961f-82ee72b054a4
      e4bbf4c1
    • kazu's avatar
      * domwalk.c (walk_dominator_tree, init_walk_dominator_tree, · 0c304c96
      kazu authored
      	fini_walk_dominator_tree): Use VEC instead of VARRAY.
      	* domwalk.h (dom_walk_data): Change the type of
      	block_data_stack and free_block_data to VEC(void_p,heap)*.
      	* tree-ssa-dse.c (dse_initialize_block_local_data,
      	dse_optimize_stmt, dse_record_phis, dse_finalize_block): Use
      	VEC instead of VARRAY.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100281 138bc75d-0d04-0410-961f-82ee72b054a4
      0c304c96
    • kazu's avatar
      * basic-block.h (basic_block_def): Add phi_nodes and · 7ea47fbd
      kazu authored
      	predictions.  Remove tree_annotations.
      	* predict.c (tree_predicted_by_p, tree_predict_edge,
      	combine_predictions_for_bb): Adjust references to predictions.
      	* tree-cfg.c (init_empty_tree_cfg, create_bb): Don't call
      	create_block_annotation.
      	(create_block_annotation, free_blocks_annotatios,
      	clear_blocks_annotations): Remove.
      	(dump_cfg_stats): Don't print out the memory spent on
      	bb_ann_d.
      	(delete_tree_cfg_annotations): Don't call free_blocks_annotations.
      	* tree-flow-inline.h (bb_ann): Remove.
      	(phi_nodes, set_phi_nodes): Update references to phi_nodes.
      	* tree-flow.h (bb_ann_d): Remove.
      	* tree-if-conv.c (process_phi_nodes): Update a reference to
      	phi_nodes.
      	* tree-phinodes.c (reserve_phi_args_for_new_edge,
      	create_phi_node, remove_phi_node): Likewise.
      	* tree-pretty-print.c (dump_generic_bb_buff): Don't call bb_ann.
      	* tree-ssa-dom.c (threaded_blocks): New.
      	(tree_ssa_dominator_optimize): Initialize, clear, and free
      	threaded_blocks. Update a call to thread_through_all_blocks.
      	(thread_across_edge): Use threaded_blocks instead of setting
      	incoming_edge_threaded.
      	* tree-ssa-threadupdate.c (threaded_through_all_blocks): Take
      	a bitmap of blocks that are threaded through.
      	* tree.h: Move the prototype of threaded_through_blocks to
      	tree-flow.h.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100279 138bc75d-0d04-0410-961f-82ee72b054a4
      7ea47fbd
    • paolo's avatar
      2005-05-27 Paolo Carlini <pcarlini@suse.de> · 866adfb6
      paolo authored
      	* docs/html/abi.html: Mention 3.4.0 as the current baseline; add
      	a notice about the configure options.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100277 138bc75d-0d04-0410-961f-82ee72b054a4
      866adfb6
    • hubicka's avatar
      · 9bfec7c2
      hubicka authored
      	* cgraph.c: Include tree-gimple.h
      	(cgraph_edge): Rename expr to stmt.
      	(cgraph_create_edge): Likewise.
      	(cgraph_clone_node): Likewise.
      	* cgraph.h (cgraph_node): Use call_stmt instead of call_expr.
      	* cgraphunit.c (record_call_1): Rename to ...
      	(record_reference): ... this one; do not build edges.
      	(cgraph_varpool_analyze_pending_decls): Call record_reference directly.
      	(current_basic_block): Kill.
      	(cgraph_create_edges): Rewrite to work on gimple statements nicely.
      	(verify_cgraph_node): Likewise.
      	* tree-inline.c (copy_body_r): Do not mess up with cgraph edges.
      	(copy_bb): Mess up with cgraph edges here; simplify EH handling.
      	(copy_edges_for_bb): Simplify EH handling.
      	(expand_call_inline): Pass statement to cgraph_edge and
      	cgraph_create_edge.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100276 138bc75d-0d04-0410-961f-82ee72b054a4
      9bfec7c2
    • ziga's avatar
      2005-05-27 Ziga Mahkovec <ziga.mahkovec@klika.si> · 985aa8de
      ziga authored
      	* ChangeLog: Fix typo.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100275 138bc75d-0d04-0410-961f-82ee72b054a4
      985aa8de
    • ziga's avatar
      2005-05-27 Ziga Mahkovec <ziga.mahkovec@klika.si> · 8c31789b
      ziga authored
      	* MAINTAINERS (Write After Approval): Add self.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100274 138bc75d-0d04-0410-961f-82ee72b054a4
      8c31789b