Commit graph

59348 commits

Author SHA1 Message Date
Paolo Carlini
07e938fc86 stl_algobase.h (fill, fill_n): Revert last change...
2004-06-25  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (fill, fill_n): Revert last
	change: actually we need to copy construct an object of type
	_Tp, not of type iterator_traits<>::value_type, therefore the
	code is ok.

From-SVN: r83652
2004-06-25 14:17:58 +00:00
Paul Brook
4adf3e34b2 * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_EABI__.
From-SVN: r83651
2004-06-25 13:48:51 +00:00
Paolo Carlini
1a277d94fe stl_algobase.h (fill, fill_n): Tighten the dispatch: use iterator_traits<>::value_type, not _Tp.
2004-06-25  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (fill, fill_n): Tighten the
	dispatch: use iterator_traits<>::value_type, not _Tp.

From-SVN: r83648
2004-06-25 10:51:45 +00:00
Richard Earnshaw
68d560d4d6 arm.c (arm_arch4t): New variable.
* arm.c (arm_arch4t): New variable.
(arm_override_options): Initialize it.  If compiling for armv5 or
higher clear TARGET_INTERWORK.
(output_call): Abort if called for armv5.  Use BX if it's available.
(output_call_mem): Use BLX if available and ensure that all armv5
code is interworking safe.
(output_return_instruction): Always use BX in preference to MOV if
it's available.
(arm_output_epilogue): Likewise.
(arm_final_prescan_insn): Never conditionally call a subroutine
on armv5.
* arm.h (arm_arch4t): Declare.
* arm.md (call_reg_armv5, call_value_reg_armv5): New.
(call_reg_arm, call_value_reg_arm): Renamed from call_reg and
call_value_reg respectively.
(call_reg_thumb_v5, call_value_reg_thumb_v5): New.
(call_reg_thumb, call_value_reg_thumb): Renamed from call_indirect
and call_value_indirect respectively.

From-SVN: r83647
2004-06-25 10:42:21 +00:00
Paolo Carlini
576df3214c 1.cc: Tweak instantiations.
2004-06-25  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/25_algorithms/fill/1.cc: Tweak instantiations.
	* testsuite/25_algorithms/fill/2.cc: Likewise.

From-SVN: r83646
2004-06-25 09:37:21 +00:00
Paolo Carlini
6e539e2396 [multiple changes]
2004-06-25  Dan Nicolaescu  <dann@ics.uci.edu>
	    Paolo Carlini  <pcarlini@suse.de>

	* include/bits/stl_algobase.h (__fill, __fill_n): New helpers
	for fill and fill_n, respectively: when copying is cheap, use a
	temporary to avoid a memory read in each iteration.

2004-06-25  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/25_algorithms/fill/1.cc: New.
	* testsuite/25_algorithms/fill/2.cc: Likewise.

From-SVN: r83645
2004-06-25 09:25:57 +00:00
Benjamin Kosnik
c19d6c9f9f formatter.h (__gnu_debug::_Error_formatter): Remove copy constructor and assignment operator.
2004-06-25  Benjamin Kosnik  <bkoz@redhat.com>

	* include/debug/formatter.h (__gnu_debug::_Error_formatter):
	Remove copy constructor and assignment operator.

From-SVN: r83641
2004-06-25 07:01:42 +00:00
Richard Sandiford
bdb41add9d mips.c (reg_or_const_float_1_operand): Reimplement in terms of const_float_1_operand.
* config/mips/mips.c (reg_or_const_float_1_operand): Reimplement
	in terms of const_float_1_operand.

From-SVN: r83640
2004-06-25 06:59:03 +00:00
Richard Sandiford
3af5dcdb45 re PR target/16144 (Bogus reference to __divdf3 when -O1)
PR target/16144
	* config/mips/mips.md (divsf, divdf): Don't FAIL if the first operand
	is 1.0; force it into a register instead.

From-SVN: r83639
2004-06-25 06:57:14 +00:00
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