Commit Graph

59239 Commits

Author SHA1 Message Date
Benjamin Kosnik
838d430929 concurrence.h (__gnu_cxx::lock): New.
2004-06-24  Benjamin Kosnik  <bkoz@redhat.com>

	* include/bits/concurrence.h (__gnu_cxx::lock): New.
	* include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove.
	(__pool_base::_M_get_mutex): New.
	* include/bits/allocator.h: Tweak.
	* src/allocator.cc (__pool_base::_M_get_free_list): Correct offset.
	* config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock.
	* include/bits/stl_threads.h: Remove.
	* include/Makefile.am: Also here.
	* include/Makefile.in: Regenerate.

	* src/locale_init.cc: Use __gnu_cxx::lock.

	* src/allocator.cc: Move all instantiations...
	* src/allocator-inst.cc: ...here.

From-SVN: r83638
2004-06-25 06:10:44 +00:00
Bernardo Innocenti
ade83c33bd m68k.h: Restore valid comment removed by mistake with the recent m68k comments cleanup.
* config/m68k/m68k.h: Restore valid comment removed by mistake with
	the recent m68k comments cleanup.

From-SVN: r83637
2004-06-25 07:05:16 +02:00
Mark Mitchell
f1b90a04e0 decl.c (grokdeclarator): Restore error messages about __thread.
* decl.c (grokdeclarator): Restore error messages about __thread.
	* parser.c (cp_parser_decl_specifier_seq): Likewise.

From-SVN: r83636
2004-06-25 04:48:53 +00:00
Andrew Pinski
6f0aa5e195 encoding.h: Wrap the functions with extern "C" for C++ mode.
2004-06-24  Andrew Pinski  <apinski@apple.com>

        * objc/encoding.h: Wrap the functions with extern "C" for C++
        mode.
        * objc/hash.h: Likewise.
        * objc/objc-api.h: Likewise.
        * objc/objc-list.h: Likewise.
        * objc/runtime.h: Likewise.
        * objc/sarray.h: Likewise.
        * objc/thr.h: Likewise.
        * objc/typedstream.h: Likewise.

From-SVN: r83635
2004-06-24 21:31:51 -07:00
Richard Kenner
fff34d356a c-gimplify.c (gimplify_for_stmt): Use gimplify_and_add.
* c-gimplify.c (gimplify_for_stmt): Use gimplify_and_add.
	* gimplify.c (internal_get_tmp_var, gimplify_return_expr): Likewise.
	(gimplify_loop_expr, gimplify_init_constructor): Likewise.
	(gimplify_self_mod_expr, gimplify_cond_expr): Likewise.

From-SVN: r83634
2004-06-24 23:46:30 -04:00
Richard Kenner
77db1f411d gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.
PR/16131
	* gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.

From-SVN: r83633
2004-06-24 23:41:41 -04:00
Richard Kenner
aa4a53af51 Update whitespace and comments
From-SVN: r83632
2004-06-24 22:00:16 -04:00
Richard Kenner
eb6127a4f9 * gimplify.c: Remove unneeded forward declarations.
From-SVN: r83630
2004-06-24 21:37:56 -04:00
Richard Kenner
f0d59f2e43 gimplify.c (append_to_compound_expr): Deleted.
* gimplify.c (append_to_compound_expr): Deleted.
	* tree-gimple.h (append_to_compound_expr): Deleted.

From-SVN: r83629
2004-06-24 21:33:42 -04:00
Richard Kenner
0c3b8d135d fold-const.c (fold_addr_expr_with_type): Look through all valid LHS modifiers to find a base to mark addressable.
* fold-const.c (fold_addr_expr_with_type): Look through all
	valid LHS modifiers to find a base to mark addressable.

From-SVN: r83628
2004-06-24 21:28:34 -04:00
Richard Kenner
61a36b9baa tree.h (debug_find_tree): Add declaration.
* tree.h (debug_find_tree): Add declaration.
	* tree-inline.c (debug_find_tree): Remove extern declaration.

From-SVN: r83627
2004-06-24 21:22:04 -04:00
Eric Christopher
819e019c9d rs6000.md: Apply change mistakenly deleted with 2004-06-22 patch.
2004-06-24  Eric Christopher  <echristo@redhat.com>

	* config/rs6000/rs6000.md: Apply change mistakenly
	deleted with 2004-06-22 patch.

From-SVN: r83625
2004-06-25 00:59:35 +00:00
GCC Administrator
3953b22e75 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83623.2
2004-06-25 00:16:19 +00:00
GCC Administrator
933d6b39d6 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83622.2
2004-06-25 00:16:14 +00:00
Richard Henderson
506e271035 c-decl.c (c_in_iteration_stmt, [...]): Remove.
* c-decl.c (c_in_iteration_stmt, c_in_case_stmt): Remove.
	(c_break_label, c_cont_label): New.
	(start_function): Update initializations.
	(c_push_function_context): Update saves.
	(c_pop_function_context): Update restores.
	* c-parse.in: Update expected conflicts.
	(stmt_count, compstmt_count): Remove.  Remove all updates.
	(if_prefix, simple_if, do_stmt_start): Remove.
	(lineno_labeled_stmt): Remove.
	(lineno_labels): New.
	(c99_block_lineno_labeled_stmt): Use it.
	(lineno_stmt, lineno_label): Don't clear EXPR_LOCUS before calling
	annotate_with_locus.
	(select_or_iter_stmt): Replace by ...
	(condition, if_statement_1, if_statement_2, if_statement,
	start_break, start_continue, while_statement, do_statement,
	for_cond_expr, for_incr_expr, for_statement, switch_statement): New.
	(stmt): Split out ...
	(stmt_nocomp): ... this.  Use c_finish_bc_stmt, c_finish_goto_label,
	c_finish_goto_ptr.
	* c-semantics.c (add_stmt): Don't add line numbers to labels.
	* c-tree.h: Update prototypes.
	(struct language_function): Remove x_in_iteration_stmt, x_in_case_stmt;
	add x_break_label, x_cont_label, x_switch_stack.
	(c_switch_stack): Declare.
	* c-typeck.c (c_finish_goto_label, c_finish_goto_ptr): New.
	(c_finish_return): Return the statement.
	(c_switch_stack): Rename from switch_stack; export.
	(if_elt, if_stack, if_stack_space, if_stack_pointer): Remove.
	(c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_begin_else,
	c_finish_else): Remove.
	(c_finish_if_stmt): Rewrite to perform the entire operation.
	(c_begin_while_stmt, c_finish_while_stmt_cond, c_finish_while_stmt,
	c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
	c_finish_for_stmt_incr, c_finish_for_stmt): Remove.
	(c_finish_loop): New.
	(c_finish_bc_stmt): New.
	(c_finish_expr_stmt): Return the statement.  Split out...
	(c_process_expr_stmt): ... this.  Don't add locus to error marks.
	* gimplify.c (gimplify_cond_expr): Accept NULL type statements.
	* tree-gimple.c (is_gimple_stmt): Likewise.
	* tree-pretty-print.c (dump_generic_node <COND_EXPR>): Likewise.
	(print_struct_decl): Delete empty compound statement.
	* objc/objc-act.c (objc_build_throw_stmt): Return the statement.
	* objc/objc-act.h: Update decl.

From-SVN: r83620
2004-06-24 16:12:30 -07:00
Richard Kenner
6e6e49b10f tree-pretty-print.c (dump_generic_node, [...]): Don't look at TYPE_METHODS unless RECORD_TYPE or UNION_TYPE.
* tree-pretty-print.c (dump_generic_node, case TYPE_DECL):
	Don't look at TYPE_METHODS unless RECORD_TYPE or UNION_TYPE.

From-SVN: r83619
2004-06-24 18:54:21 -04:00
Andrew Pinski
c63817711e objc-act.c (build_objc_method_call): Save the lookup_object so we do not call it twice.
2004-06-24  Andrew Pinski  <apinski@apple.com>

        * objc-act.c (build_objc_method_call): Save the lookup_object
        so we do not call it twice.

From-SVN: r83618
2004-06-24 15:52:42 -07:00
Richard Kenner
500b9b49b2 Minor comment and whitespace changes
From-SVN: r83617
2004-06-24 18:47:42 -04:00
Richard Henderson
940db2c87c tree-ssa-dom.c (real_avail_expr_hash): New.
* tree-ssa-dom.c (real_avail_expr_hash): New.
        (tree_ssa_dominator_optimize): Use it in the htab.

From-SVN: r83616
2004-06-24 15:46:56 -07:00
Richard Kenner
c2484a8b43 Minor updating of comments.
From-SVN: r83615
2004-06-24 18:45:57 -04:00
Richard Kenner
7120d04625 Minor whitespace changes
From-SVN: r83613
2004-06-24 18:42:26 -04:00
Frank Ch. Eigler
2be480afc8 tree-mudflap.c (mx_register_decls): Add third (type) argument to synthesized __mf_unregister call.
2004-06-24  Frank Ch. Eigler  <fche@redhat.com>

	* tree-mudflap.c (mx_register_decls): Add third (type) argument
	to synthesized __mf_unregister call.

From-SVN: r83612
2004-06-24 21:12:49 +00:00
Frank Ch. Eigler
cfbd22d765 Adopt splay trees for object database.
2004-06-24  Frank Ch. Eigler  <fche@redhat.com>

	Adopt splay trees for object database.
	* Makefile.am: Copy splay-tree.* from libiberty.
	* Makefile.in, testsuite/Makefile.in: Regenerated.
	* mf-runtime.h.in (__mf_unregister): Add third parameter (type).
	* mf-hooks[123].c (*): Add new third parameter to mf_unregister.
	* mf-impl.h (BEGIN_PROTECT): Remove some trace text.
	* mf-runtime.c: Rewrite code dealing with object database to use
	libiberty splay trees.  Remove tree liveness aging option.
	* testsuite/libmudflap.c/fail18-frag.c: Add volatile flag.

From-SVN: r83611
2004-06-24 21:12:18 +00:00
Roger Sayle
7906648201 re PR middle-end/15239 (suboptimal mult-by-const expansion cost limit)
PR middle-end/15239
	* expmed.c (expand_mult): Remove artificial restriction on the
	maximum cost of a synthetic multiplication sequence.

From-SVN: r83610
2004-06-24 20:38:59 +00:00
Jason Merrill
3db4a9b428 re PR tree-optimization/16115 (double-destruction problem with argument passing via temporary (breaks auto_ptr))
PR c++/16115
        * decl.c (grokparms): Give the PARM_DECL reference type if the
        parameter is passed by invisible reference.

From-SVN: r83609
2004-06-24 16:07:23 -04:00
Eric Christopher
de7c79cc77 combine.c (distribute_notes): Don't delete sets to global register variables.
2004-06-24  Eric Christopher  <echristo@redhat.com>

	* combine.c (distribute_notes): Don't delete sets to
	global register variables.

From-SVN: r83606
2004-06-24 19:15:43 +00:00
Jakub Jelinek
d413e3cc11 i386.md (ffsdi2, clzdi2): New expanders.
* config/i386/i386.md (ffsdi2, clzdi2): New expanders.
	(ffs_rex64): New splitter.
	(ffsdi_1, ctzdi2, bsr_rex64): New instructions.

From-SVN: r83604
2004-06-24 19:54:13 +02:00
Andrew Pinski
d42093a1db darwin7.h (MATH_LIBRARY): Remove.
gcc/ChangeLog:
        * config/darwin7.h (MATH_LIBRARY): Remove.
        (LIB_SPEC): Define.
        * config/darwin.h (MATH_LIBRARY): Define always to empty.
        (LIB_SPEC): Only define if not already defined.

libstdc++/ChangeLog:
	* linkage.m4: Remove check for libmx.
	* configure: Regenerate.

libgfortran/ChangeLog:
	* configure.ac: Remove check for libmx.
	* configure: Regenerate.

From-SVN: r83603
2004-06-24 10:53:07 -07:00
Bryce McKinlay
cc21f43ecc jacks.xfail: Remove 15.9.1-qualified-concrete-20.
* testsuite/libjava.jacks/jacks.xfail: Remove
	15.9.1-qualified-concrete-20.

From-SVN: r83602
2004-06-24 18:41:18 +01:00
Revital Eres
abe0d774cf loop-iv.c (iv_analyze, [...]): Support for identifying shifts of induction variable.
2004-06-24  Revital Eres  <eres@il.ibm.com>

	* loop-iv.c (iv_analyze, simple_set_p): Support for identifying
	shifts of induction variable.
	(iv_shift): New function.

From-SVN: r83599
2004-06-24 16:50:35 +00:00
Richard Henderson
be1ba3d170 * gimplify.c (gimplify_body): Watch for body vanishing.
From-SVN: r83598
2004-06-24 09:25:17 -07:00
Jeff Law
d2d8936f3f tree-ssa-dom.c (record_dominating_conditions): New function.
* tree-ssa-dom.c (record_dominating_conditions): New function.
	(dom_opt_finalize_block, get_eq_expr_value): Use it.

	* gcc.dg/tree-ssa/20040624-1.c: New test.

From-SVN: r83597
2004-06-24 09:59:52 -06:00
Bryce McKinlay
d01a8ee025 parse.y (set_nested_class_simple_name_value): Removed.
* parse.y (set_nested_class_simple_name_value): Removed.
	(java_complete_expand_class): Remove calls to
	set_nested_class_simple_name_value.

From-SVN: r83596
2004-06-24 16:56:54 +01:00
Richard Sandiford
5a1f395394 calls.c (shift_returned_value): Fix handling of non-integer TYPE_MODEs.
* calls.c (shift_returned_value): Fix handling of non-integer
	TYPE_MODEs.

From-SVN: r83595
2004-06-24 15:30:07 +00:00
Nathan Sidwell
061cae1fa9 reformat, remove '^M's
From-SVN: r83594
2004-06-24 15:05:35 +00:00
Richard Kenner
aa7cb8c39e Add a blank.
From-SVN: r83593
2004-06-24 09:47:49 -04:00
Ulrich Weigand
bb2d400f61 c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
* c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
	* system.h (DEFAULT_MAIN_RETURN): Poison.
	* doc/tm.texi (DEFAULT_MAIN_RETURN): Remove documentation.

From-SVN: r83592
2004-06-24 12:09:44 +00:00
Ben Elliston
79a4758dd5 * doc/cfg.texi (Edges): Fix typo.
From-SVN: r83591
2004-06-24 21:43:34 +10:00
Paul Brook
0cc3dda830 * config/arm/arm.c (arm_output_epilogue): Remove excess checks.
From-SVN: r83589
2004-06-24 11:01:56 +00:00
Giovanni Bajo
bbb2a3456f tree-ssa.exp: Remove.
* g++.dg/tree-ssa/tree-ssa.exp: Remove. dg.exp already handles
	this directory.

From-SVN: r83588
2004-06-24 09:47:31 +00:00
Andreas Schwab
5e7752d2ac * cp-tree.h (enum cp_storage_class): Remove trailing comma.
From-SVN: r83587
2004-06-24 09:34:23 +00:00
Andrew Pinski
b713a445f2 re PR middle-end/15988 (ICE in fold_convert with pointer-to-member-function)
2004-06-23  Andrew Pinski  <apinski@apple.com>

        PR middle-end/15988
        * fold-const.c (fold_convert): Types which are compatible
        can be converted with only a NOP_EXPR.

2004-06-23  Andrew Pinski  <apinski@apple.com>

        PR middle-end/15988
        * g++.dg/opt/ptrmem4.C: New test.

From-SVN: r83585
2004-06-23 23:51:56 -07:00
Mark Mitchell
62d1db179e Make-lang.in (cp/lex.o): Do not depend on cp/lex.h.
* Make-lang.in (cp/lex.o): Do not depend on cp/lex.h.
	(cp/decl.o): Likewise.
	(cp/decl2.o): Likewise.
	(cp/pt.o): Likewise.
	(cp/semantics.o): Likewise.
	* config-lang.in (gtfiles): Do not reference cp/lex.h.
	* class.c: Do not include lex.h.
	(add_implicitly_declared_members): Do not use
	adding_implicit_members.
	(check_bases_and_members): Do not talk about grok_x_components.
	* cp/cp-tree.h (adding_implicit_members): Remove.
	(cp_storage_class): New type.
	(cp_decl_spec): Likewise.
	(cp_decl_specifier_seq): Likewise.
	(cp_parameter_declarator): Use it for the decl_specifiers field.
	(check_tag_decl): Adjust prototype.
	(shadow_tag): Likewise.
	(groktypename): Likewise.
	(start_decl): Likewise.
	(start_function): Likewise.
	(start_method): Likewise.
	(grok_x_components): Remove.
	(grokfield): Adjust prototype.
	(grokbitfield): Likewise.
	(finish_member_class_template): Remove.
	* decl.c: Do not include lex.h.
	(adding_implicit_members): Do not define.
	(check_tag_decl): Do not use trees to represent decl-specifiers.
	(shadow_tag): Likewise.
	(groktypename): Likewise.
	(start_decl): Likewise.
	(grokvardecl): Likewise.
	(grokdeclarator): Likewise.
	(grokparms): Likewise.
	(start_function): Likewise.
	(start_method): Likewise.
	* decl.h (grokdeclarator): Adjust prototype.
	* decl2.c: Do not include lex.h.
	(grok_x_components): Remove.
	(grokfield): Do not use trees to represent decl-specifiers.
	(grokbitfield): Likewise.
	* lex.c: Do not include lex.h.
	* lex.h: Remove.
	* parser.c: Include target.h.
	(clear_decl_specs): New function.
	(cp_parser_translation_unit): Do not use trees to represent
	decl-specifiers.
	(cp_parser_postfix_expression): Likewise.
	(cp_parser_new_type_id): Likewise.
	(cp_parser_condition): Likewise.
	(cp_parser_simple_declaration): Likewise.
	(cp_parser_decl_specifier_seq): Likewise.
	(cp_parser_function_specifier_opt): Likewise.
	(cp_parser_conversion_type_id): Likewise.
	(cp_parser_template_parameter): Likewise.
	(cp_parser_explicit_instantiation): Likewise.
	(cp_parser_type_specifier): Likewise.
	(cp_parser_simple_type_specifier): Likewise.
	(cp_parser_init_declarator): Likewise.
	(cp_parser_type_id): Likewise.
	(cp_parser_type_specifier_seq): Likewise.
	(cp_parser_parameter_declaration): Likewise.
	(cp_parser_member_declaration): Likewise.
	(cp_parser_exception_declaration): Likewise.
	(cp_parser_function_definition_from_specifiers_and_declarator):
	Likewise.
	(cp_parser_single_declaration): Likewise.
	(cp_parser_save_member_function_body): Likewise.
	(cp_parser_friend_p): Likewise.
	(cp_parser_set_storage_class): New function.
	(cp_parser_set_decl_spec_type): Likewise.
	* pt.c: Do not include lex.h.
	* semantics.c: Likewise.
	(finish_member_class_template): Remove.

From-SVN: r83584
2004-06-24 06:48:44 +00:00
Alan Modra
3a4d587b32 calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and pass raw n_named_args to it.
* calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and
	pass raw n_named_args to it.
	* targhooks.c: Formatting.
	(hook_bool_CUMULATIVE_ARGS_false): Correct comment.

From-SVN: r83583
2004-06-24 15:40:35 +09:30
Richard Henderson
8c56bb8307 c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside non-constant size check.
* c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside
	non-constant size check.  Gimplify the type too.  Tidy building
	BUILT_IN_STACK_ALLOC call

From-SVN: r83582
2004-06-23 22:35:16 -07:00
Roger Sayle
d522060b39 c-common.c (expand_unordered_cmp): Delete.
* c-common.c (expand_unordered_cmp): Delete.
	(expand_tree_builtin): Delete.
	* c-common.h (expand_tree_builtin): Delete function prototype.
	* c-typeck.c (build_function_call): Don't call expand_tree_builtin.

	* call.c (build_cxx_call): Don't call expand_tree_builtin.  No
	longer take both "args" and "convert_args" as arguments.
	(build_op_delete_call): Update call to build_cxx_call.
	(build_over_call): Likewise, update call to build_cxx_call.
	* cp-tree.h (build_cxx_call): Update funtion prototype.
	* typeck.c (build_function_call): Don't call expand_tree_builtin.
	* rtti.c (throw_bad_cast): Update call to build_cxx_call.
	(throw_bad_typeid): Likewise.
	(build_dynamic_cast_1): Likewise.

From-SVN: r83579
2004-06-24 05:26:07 +00:00
Richard Henderson
a7cc468aa3 gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or COMPONENT_REF variable fields unless they're non-constant.
* gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or
        COMPONENT_REF variable fields unless they're non-constant.

From-SVN: r83578
2004-06-23 22:21:27 -07:00
Robert Millan
cfafe9734d Patch from Robert Millan.
* config.gcc: Merge kfreebsd*-gnu with linux* and add knetbsd*-gnu.
* config/i386/linux.h: Allow overriding of LINK_EMULATION,
  DYNAMIC_LINKER and register names in sc_ structure.
* config/kfreebsd-gnu.h: New. kfreebsd-gnu followup for linux.h.
* config/i386/kfreebsd-gnu.h: New. Ditto for i386-kfreebsd-gnu.
* config/knetbsd-gnu.h: New. Ditto for knetbsd-gnu.
* config/i386/knetbsd-gnu.h: New. Ditto for i386-knetbsd-gnu.
* config/kfreebsdgnu.h: Remove.
* config/t-kfreebsd-gnu: Likewise.
* config/i386/kfreebsdgnu.h: Likewise.

From-SVN: r83577
2004-06-23 19:56:23 -07:00
Eric Christopher
d182275449 fold-const.c (make_range): Cleanup type checking through function.
2004-06-23  Eric Christopher  <echristo@redhat.com>

	* fold-const.c (make_range): Cleanup type checking through function.
	Remove orig_type. Replace with checks to exp_type and arg0_type.
	Clarify comment when converting from unsigned to signed.

From-SVN: r83576
2004-06-24 02:00:25 +00:00
Eric Christopher
2ac23d05c0 mips.c (mips_use_dfa_pipeline_interface): Add R3000.
2004-06-23  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips.c (mips_use_dfa_pipeline_interface): Add R3000.
	* config/mips/mips.md: Remove R3000 scheduling description.
	* config/mips/3000.md: New file.

From-SVN: r83575
2004-06-24 01:51:30 +00:00