Paul Brook [Fri, 25 Jun 2004 13:48:51 +0000 (13:48 +0000)]
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_EABI__.
From-SVN: r83651
Paolo Carlini [Fri, 25 Jun 2004 10:51:45 +0000 (10:51 +0000)]
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
Richard Earnshaw [Fri, 25 Jun 2004 10:42:21 +0000 (10:42 +0000)]
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
Paolo Carlini [Fri, 25 Jun 2004 09:37:21 +0000 (09:37 +0000)]
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
Paolo Carlini [Fri, 25 Jun 2004 09:25:57 +0000 (09:25 +0000)]
[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
Benjamin Kosnik [Fri, 25 Jun 2004 07:01:42 +0000 (07:01 +0000)]
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
Richard Sandiford [Fri, 25 Jun 2004 06:59:03 +0000 (06:59 +0000)]
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
Richard Sandiford [Fri, 25 Jun 2004 06:57:14 +0000 (06:57 +0000)]
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
Benjamin Kosnik [Fri, 25 Jun 2004 06:10:44 +0000 (06:10 +0000)]
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
Bernardo Innocenti [Fri, 25 Jun 2004 05:05:16 +0000 (07:05 +0200)]
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
Mark Mitchell [Fri, 25 Jun 2004 04:48:53 +0000 (04:48 +0000)]
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
Andrew Pinski [Fri, 25 Jun 2004 04:31:51 +0000 (04:31 +0000)]
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
Richard Kenner [Fri, 25 Jun 2004 03:46:30 +0000 (03:46 +0000)]
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
Richard Kenner [Fri, 25 Jun 2004 03:41:41 +0000 (03:41 +0000)]
gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.
PR/16131
* gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.
From-SVN: r83633
Richard Kenner [Fri, 25 Jun 2004 02:00:16 +0000 (22:00 -0400)]
Update whitespace and comments
From-SVN: r83632
Richard Kenner [Fri, 25 Jun 2004 01:37:56 +0000 (01:37 +0000)]
* gimplify.c: Remove unneeded forward declarations.
From-SVN: r83630
Richard Kenner [Fri, 25 Jun 2004 01:33:42 +0000 (01:33 +0000)]
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
Richard Kenner [Fri, 25 Jun 2004 01:28:34 +0000 (01:28 +0000)]
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
Richard Kenner [Fri, 25 Jun 2004 01:22:04 +0000 (01:22 +0000)]
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
Eric Christopher [Fri, 25 Jun 2004 00:59:35 +0000 (00:59 +0000)]
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
GCC Administrator [Fri, 25 Jun 2004 00:16:19 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83623.2
GCC Administrator [Fri, 25 Jun 2004 00:16:14 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83622.2
Richard Henderson [Thu, 24 Jun 2004 23:12:30 +0000 (16:12 -0700)]
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
Richard Kenner [Thu, 24 Jun 2004 22:54:21 +0000 (22:54 +0000)]
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
Andrew Pinski [Thu, 24 Jun 2004 22:52:42 +0000 (22:52 +0000)]
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
Richard Kenner [Thu, 24 Jun 2004 22:47:42 +0000 (18:47 -0400)]
Minor comment and whitespace changes
From-SVN: r83617
Richard Henderson [Thu, 24 Jun 2004 22:46:56 +0000 (15:46 -0700)]
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
Richard Kenner [Thu, 24 Jun 2004 22:45:57 +0000 (18:45 -0400)]
Minor updating of comments.
From-SVN: r83615
Richard Kenner [Thu, 24 Jun 2004 22:42:26 +0000 (18:42 -0400)]
Minor whitespace changes
From-SVN: r83613
Frank Ch. Eigler [Thu, 24 Jun 2004 21:12:49 +0000 (21:12 +0000)]
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
Frank Ch. Eigler [Thu, 24 Jun 2004 21:12:18 +0000 (21:12 +0000)]
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
Roger Sayle [Thu, 24 Jun 2004 20:38:59 +0000 (20:38 +0000)]
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
Jason Merrill [Thu, 24 Jun 2004 20:07:23 +0000 (16:07 -0400)]
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
Eric Christopher [Thu, 24 Jun 2004 19:15:43 +0000 (19:15 +0000)]
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
Jakub Jelinek [Thu, 24 Jun 2004 17:54:13 +0000 (19:54 +0200)]
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
Andrew Pinski [Thu, 24 Jun 2004 17:53:07 +0000 (17:53 +0000)]
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
Bryce McKinlay [Thu, 24 Jun 2004 17:41:18 +0000 (17:41 +0000)]
jacks.xfail: Remove 15.9.1-qualified-concrete-20.
* testsuite/libjava.jacks/jacks.xfail: Remove
15.9.1-qualified-concrete-20.
From-SVN: r83602
Revital Eres [Thu, 24 Jun 2004 16:50:35 +0000 (16:50 +0000)]
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
Richard Henderson [Thu, 24 Jun 2004 16:25:17 +0000 (09:25 -0700)]
* gimplify.c (gimplify_body): Watch for body vanishing.
From-SVN: r83598
Jeff Law [Thu, 24 Jun 2004 15:59:52 +0000 (09:59 -0600)]
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
Bryce McKinlay [Thu, 24 Jun 2004 15:56:54 +0000 (15:56 +0000)]
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
Richard Sandiford [Thu, 24 Jun 2004 15:30:07 +0000 (15:30 +0000)]
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
Nathan Sidwell [Thu, 24 Jun 2004 15:05:35 +0000 (15:05 +0000)]
reformat, remove '^M's
From-SVN: r83594
Richard Kenner [Thu, 24 Jun 2004 13:47:49 +0000 (09:47 -0400)]
Add a blank.
From-SVN: r83593
Ulrich Weigand [Thu, 24 Jun 2004 12:09:44 +0000 (12:09 +0000)]
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
Ben Elliston [Thu, 24 Jun 2004 11:43:34 +0000 (21:43 +1000)]
* doc/cfg.texi (Edges): Fix typo.
From-SVN: r83591
Paul Brook [Thu, 24 Jun 2004 11:01:56 +0000 (11:01 +0000)]
* config/arm/arm.c (arm_output_epilogue): Remove excess checks.
From-SVN: r83589
Giovanni Bajo [Thu, 24 Jun 2004 09:47:31 +0000 (09:47 +0000)]
tree-ssa.exp: Remove.
* g++.dg/tree-ssa/tree-ssa.exp: Remove. dg.exp already handles
this directory.
From-SVN: r83588
Andreas Schwab [Thu, 24 Jun 2004 09:34:23 +0000 (09:34 +0000)]
* cp-tree.h (enum cp_storage_class): Remove trailing comma.
From-SVN: r83587
Andrew Pinski [Thu, 24 Jun 2004 06:51:56 +0000 (06:51 +0000)]
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
Mark Mitchell [Thu, 24 Jun 2004 06:48:44 +0000 (06:48 +0000)]
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
Alan Modra [Thu, 24 Jun 2004 06:10:35 +0000 (06:10 +0000)]
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
Richard Henderson [Thu, 24 Jun 2004 05:35:16 +0000 (22:35 -0700)]
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
Roger Sayle [Thu, 24 Jun 2004 05:26:07 +0000 (05:26 +0000)]
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
Richard Henderson [Thu, 24 Jun 2004 05:21:27 +0000 (22:21 -0700)]
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
Robert Millan [Thu, 24 Jun 2004 02:56:23 +0000 (02:56 +0000)]
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
Eric Christopher [Thu, 24 Jun 2004 02:00:25 +0000 (02:00 +0000)]
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
Eric Christopher [Thu, 24 Jun 2004 01:51:30 +0000 (01:51 +0000)]
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
Ulrich Weigand [Thu, 24 Jun 2004 00:49:07 +0000 (00:49 +0000)]
s390-protos.h (s390_emit_compare): Add prototype.
* config/s390/s390-protos.h (s390_emit_compare): Add prototype.
(s390_emit_jump): Likewise.
* config/s390/s390.c (s390_emit_compare): New function.
(s390_emit_jump): Likewise.
* config/s390/s390.md ("beq", "bne", "bgt", "bgtu", "blt", "bltu",
"bge", "bgeu", "ble", "bleu", "bunordered", "bordered", "buneq",
"bungt", "bunlt", "bunge", "bunle", "bltgt"): Use s390_emit_compare
and s390_emit_jump.
("cjump"): Remove, replace by ...
("*cjump_64", "*cjump_31"): ... these insns. Improve length default.
("icjump", "*icjump_64", "*icjump_31"): Likewise.
("trap"): Fix type attribute.
("conditional_trap"): Use s390_emit_compare.
("doloop_si"): Remove, replace by ...
("doloop_si64", "doloop_si31"): ... these new insn_and_split.
Merge existing splitter into insn_and_split. Improve length default.
("doloop_di"): Merge with existing splitter into insn_and_split.
("doloop"): Adapt.
("jump"): Convert to expander. Use s390_emit_jump.
("*jump_64", "*jump_31"): New insns. Improve length default.
From-SVN: r83574
GCC Administrator [Thu, 24 Jun 2004 00:16:20 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83572.2
GCC Administrator [Thu, 24 Jun 2004 00:16:15 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83571.2
Wu Yongwei [Wed, 23 Jun 2004 23:57:27 +0000 (23:57 +0000)]
gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.
2004-06-23 Wu Yongwei <adah@sh163.net>
* gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.
(__gthr_i486_lock_cmp_xchg): New inline assembly function.
(__GTHR_W32_InterlockedCompareExchange): New macro to choose a
suitable function for interlocked compare-and-exchange.
(__gthread_mutex_trylock): Use
__GTHR_W32_InterlockedCompareExchange.
(__gthread_mutex_init_function, __gthread_mutex_lock,
__gthread_mutex_trylock, __gthread_mutex_unlock): Adjust the
initial counter value to work correctly under Windows 95.
* config/i386/gthr-win32.c: Adjust include order.
Define __GTHREAD_I486_INLINE_LOCK_PRIMITIVES before including
gthr-win32.h.
(__gthr_win32_mutex_init_function, __gthr_win32_mutex_lock,
__gthr_win32_mutex_trylock, __gthr_win32_mutex_unlock): Adjust
to match inline versions in gthr-win32.h.
From-SVN: r83569
David Edelsohn [Wed, 23 Jun 2004 21:19:00 +0000 (21:19 +0000)]
rs6000.c (rs6000_use_dfa_pipeline_interface): Delete.
* config/rs6000/rs6000.c (rs6000_use_dfa_pipeline_interface): Delete.
(TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Redefine a hook_int_void_1.
(insvdi_rshift_rlwimi_p): New function.
* config/rs6000/rs6000.md (insvdi_internal2/3): New patterns.
(extendsfdf2): Convert to define_insn_and_split.
* config/rs6000/rs6000-protos.h (insvdi_rshift_rlwimi_p): Prototype.
From-SVN: r83568
Andrew Pinski [Wed, 23 Jun 2004 20:53:17 +0000 (20:53 +0000)]
c-typeck.c (composite_type, [...]): Abort if we have type qualifiers at all.
2004-06-23 Andrew Pinski <apinski@apple.com>
* c-typeck.c (composite_type, <case ARRAY_TYPE>): Abort if we have
type qualifiers at all.
If both of the type domains are null and the new element type is
the same as one of the, return the one which the element type.
matches.
Do not call qualify_type on the new type.
2004-06-23 Andrew Pinski <apinski@apple.com>
* gcc.dg/c90-array-quals-2.c: New test.
From-SVN: r83567
Ulrich Weigand [Wed, 23 Jun 2004 20:44:54 +0000 (20:44 +0000)]
* config/s390/s390.h (DEFAULT_MAIN_RETURN): Remove.
From-SVN: r83566
Roger Sayle [Wed, 23 Jun 2004 20:42:45 +0000 (20:42 +0000)]
convert.c (strip_float_extension): Skip both NOP_EXPR and CONVERT_EXPR floating point extensions.
* convert.c (strip_float_extension): Skip both NOP_EXPR and
CONVERT_EXPR floating point extensions.
From-SVN: r83565
Diego Novillo [Wed, 23 Jun 2004 20:12:44 +0000 (20:12 +0000)]
Makefile.in (tree-vn.o): New.
* Makefile.in (tree-vn.o): New.
(tree-ssa-pre.o): Don't depend on RTL_H.
* tree-dfa.c (find_referenced_vars): Don't call init_tree_ssa.
* tree-flow.h (struct var_ann_d): Remove field expr_set.
(add_to_value, expressions_equal_p, get_value_handle, vn_compute,
vn_lookup_or_add, vn_add, vn_lookup, vn_init, vn_delete): Declare.
* tree-optimize.c (execute_init_datastructures): New local function.
(pass_init_datastructures): New local variable.
(init_tree_optimization_passes): Sequence pass_init_datastructures.
* tree-pretty-print.c (MASK_POINTER): Remove.
(dump_generic_node): Handle VALUE_HANDLE.
* tree-ssa-pre.c: Move all value numbering routines to tree-vn.c.
Update callers to use new function names.
Use VALUE_HANDLE_ID and VALUE_HANDLE_EXPR_SET instead of
variable annotations.
* tree-ssa.c (init_tree_ssa): Call vn_init.
(delete_tree_ssa): Call vn_delete.
* tree-vn.c: New file.
* tree.c (tree_size): Handle VALUE_HANDLE.
(tree_node_structure): Likewise.
(iterative_hash_expr): Likewise.
* tree.def (VALUE_HANDLE): New code.
* tree.h (struct tree_value_handle): New.
(VALUE_HANDLE_ID): Define.
(VALUE_HANDLE_EXPR_SET): Define.
(enum tree_node_structure_enum): Add TS_VALUE_HANDLE.
(union tree_node): Add struct tree_value_handle.
From-SVN: r83564
Nitin Yewale [Wed, 23 Jun 2004 19:58:01 +0000 (13:58 -0600)]
* gcc.dg/kpice1.c: New test.
From-SVN: r83563
Andrew Pinski [Wed, 23 Jun 2004 17:05:45 +0000 (17:05 +0000)]
[multiple changes]
2004-06-23 Andrew Pinski <apinski@apple.com>
* c-typeck.c (composite_type):
<case POINTER_TYPE>: Build a qualified type of
the new type.
<case ARRAY_TYPE>: Likewise.
<case FUNCTION_TYPE>: Likewise.
2006-06-23 Andrew Pinski <apinski@apple.com>
* gcc.dg/c90-array-quals.c: New test.
From-SVN: r83557
Pat Haugen [Wed, 23 Jun 2004 16:07:58 +0000 (16:07 +0000)]
re PR rtl-optimization/15633 (Failure to propagate FDO counters by vpt results in performance regression)
2004-06-23 Pat Haugen <pthaugen@us.ibm.com>
PR optimization/15633
* value-prof.c (divmod_fixed_value_transform): Compute probability
of taking optimal path and pass along to gen_ routine.
(mod_pow2_value_transform): Same.
(mod_subtract_transform): Same.
(gen_divmod_fixed_value): Add new probability parameter.
Add probability to newly created jump.
(gen_mod_pow2): Same.
(gen_mod_subtract): Same.
From-SVN: r83555
Paolo Carlini [Wed, 23 Jun 2004 16:03:52 +0000 (16:03 +0000)]
re PR libstdc++/16154 (input iterator concept too restrictive)
2004-06-23 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/16154
* include/bits/boost_concept_check.h (struct _TrivialIteratorConcept):
Don't require the _DefaultConstructibleConcept.
(struct _ForwardIteratorConcept): Require it here.
From-SVN: r83554
Richard Earnshaw [Wed, 23 Jun 2004 11:39:32 +0000 (11:39 +0000)]
re PR target/15948 (THUMB: ICE with non-commutative cbranch)
* PR target/15948
* arm.md (bicsi3_cbranch): Add alternative to handle tying operands
one and two.
From-SVN: r83549
Richard Earnshaw [Wed, 23 Jun 2004 10:39:50 +0000 (10:39 +0000)]
re PR target/15927 (THUMB -O2: strength-reduced iteration variable ends up off by 1)
PR target/15927
* arm.h (THUMB_SECONDARY_OUTPUT_RELOAD_CLASS): Don't need a secondary
reload if CLASS is BASE_REGS.
From-SVN: r83548
Paolo Bonzini [Wed, 23 Jun 2004 09:10:36 +0000 (09:10 +0000)]
Makefile.tpl (HOST_EXPORTS): Fix pasto.
2004-06-22 Paolo Bonzini <bonzini@gnu.org>
* Makefile.tpl (HOST_EXPORTS): Fix pasto.
* Makefile.in: Regenerate.
From-SVN: r83547
Richard Sandiford [Wed, 23 Jun 2004 09:08:21 +0000 (09:08 +0000)]
gengtype-yacc.y (option): Avoid use of non-constant struct initializer.
* gengtype-yacc.y (option): Avoid use of non-constant struct
initializer.
From-SVN: r83546
Nathan Sidwell [Wed, 23 Jun 2004 08:43:25 +0000 (08:43 +0000)]
remove stray conflict marker
From-SVN: r83544
Nathan Sidwell [Wed, 23 Jun 2004 08:41:55 +0000 (08:41 +0000)]
* doc/extend.texi (Function Attributes): Alphabetize.
From-SVN: r83543
Paolo Bonzini [Wed, 23 Jun 2004 08:36:05 +0000 (08:36 +0000)]
Makefile.tpl (configure-build-[+module+], [...]): Pass [+extra_configure_args+].
2004-06-22 Paolo Bonzini <bonzini@gnu.org>
* Makefile.tpl (configure-build-[+module+],
configure-[+module+], configure-target-[+module+]): Pass
[+extra_configure_args+].
(all-build-[+module+], all-[+module+], check-[+module+],
install-[+module+], [+make_target+]-[+module+],
all-target-[+module+], check-target-[+module+],
install-target-[+module+], [+make_target+]-target-[+module+]):
Pass [+extra_make_args+].
(HOST_EXPORTS): Include the former GCC_HOST_EXPORTS.
(GCC_HOST_EXPORTS): Remove.
(configure-gcc, all-gcc, GCC_STRAP_TARGETS, profiledbootstrap,
cross, check-gcc, check-gcc-c++, install-gcc,
gcc-no-fixedincludes, [+make_target+]-gcc, stage[+id+]-bubble):
Replace GCC_HOST_EXPORTS with HOST_EXPORTS.
* Makefile.in: Regenerate.
From-SVN: r83542
Richard Henderson [Wed, 23 Jun 2004 07:43:21 +0000 (00:43 -0700)]
c-gimplify.c (gimplify_decl_stmt): Update gimplify_type_sizes call.
* c-gimplify.c (gimplify_decl_stmt): Update gimplify_type_sizes call.
Use gimplify_and_add.
* c-typeck.c (c_finish_if_stmt): Use NULL instead of empty stmt.
* gimplify.c (build_and_jump, gimplify_exit_expr,
gimplify_init_constructor, gimplify_save_expr, gimple_push_cleanup,
gimplify_stmt, gimplify_expr): Likewise.
(shortcut_cond_expr): Handle NULL arms of COND_EXPR.
(gimplify_statement_list): Remove NULL entries.
(gimplify_to_stmt_list): Handle NULL results.
(gimplify_type_sizes): Add list_p argument.
(gimplify_one_sizepos): Don't use internal pre/post queue.
* tree-gimple.h (gimplify_type_sizes): Update.
ada/
* trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call.
From-SVN: r83539
Eric Christopher [Wed, 23 Jun 2004 05:54:21 +0000 (05:54 +0000)]
rs6000.md (*insvsi_internal5/6): New patterns.
2004-06-22 Eric Christopher <echristo@redhat.com>
* config/rs6000/rs6000.md (*insvsi_internal5/6): New patterns.
From-SVN: r83538
Pat Haugen [Wed, 23 Jun 2004 04:09:46 +0000 (04:09 +0000)]
cfghooks.c (make_forwarder_block): Decrement count on fallthru edge when redirecting back edges.
* cfghooks.c (make_forwarder_block): Decrement count on fallthru edge
when redirecting back edges.
* cfghooks.c (split_block): Call make_single_succ_edge so that edge
count/probability are set correctly.
From-SVN: r83537
Richard Henderson [Wed, 23 Jun 2004 02:51:06 +0000 (19:51 -0700)]
* gcc.dg/noreturn-1.c (foo5): Update function does return lineno.
From-SVN: r83535
Richard Henderson [Wed, 23 Jun 2004 02:33:25 +0000 (19:33 -0700)]
c-typeck.c (emit_side_effect_warnings): Ignore error marks.
* c-typeck.c (emit_side_effect_warnings): Ignore error marks.
(c_finish_stmt_expr): Likewise.
From-SVN: r83534
Richard Henderson [Wed, 23 Jun 2004 02:27:22 +0000 (19:27 -0700)]
i386.c (TARGET_STRUCT_VALUE_RTX): New.
* config/i386/i386.c (TARGET_STRUCT_VALUE_RTX): New.
(ix86_return_in_memory): Move SSE vector return warning ...
(ix86_struct_value_rtx): ... here. New.
From-SVN: r83533
Loren J. Rittle [Wed, 23 Jun 2004 02:25:06 +0000 (02:25 +0000)]
* gcc.dg/builtins-config.h: Handle FreeBSD.
From-SVN: r83532
Richard Henderson [Wed, 23 Jun 2004 00:26:04 +0000 (17:26 -0700)]
tree.def (VTABLE_REF): Remove.
* tree.def (VTABLE_REF): Remove.
(OBJ_TYPE_REF): New.
(TRY_CATCH_EXPR, TRY_FINALLY_EXPR): Set type 's'.
* expr.c (expand_expr_real_1): Replace VTABLE_REF with OBJ_TYPE_REF.
* fold-const.c (non_lvalue): Likewise.
* gimplify.c (gimplify_expr): Likewise.
(gimplify_call_expr): Use is_gimple_call_addr.
* langhooks-def.h (LANG_HOOKS_FOLD_OBJ_TYPE_REF): New.
* langhooks.h (fold_obj_type_ref): New.
* tree-gimple.c (is_gimple_call_addr): New.
* tree-gimple.h (is_gimple_call_addr): Declare.
* tree-inline.c (inlinable_function_p): Fix merge error.
(estimate_num_insns_1): Replace VTABLE_REF with OBJ_TYPE_REF.
* tree-pretty-print.c (dump_generic_node): Likewise.
(print_call_name): Handle OBJ_TYPE_REF.
* tree-ssa-ccp.c (fold_stmt): Fold OBJ_TYPE_REF.
* tree-ssa-operands.c (get_expr_operands): Handle OBJ_TYPE_REF.
* tree.h (OBJ_TYPE_REF_EXPR): New.
(OBJ_TYPE_REF_OBJECT, OBJ_TYPE_REF_TOKEN): New.
* doc/c-tree.texi (VTABLE_REF): Remove.
* objc/objc-act.c (build_objc_method_call): Build an OBJ_TYPE_REF.
cp/
* class.c (build_vfn_ref): Take a pointer not object. Build
an OBJ_TYPE_REF.
(cp_fold_obj_type_ref): New.
* call.c (build_over_call): Update build_vfn_ref call.
* cp-lang.c (LANG_HOOKS_FOLD_OBJ_TYPE_REF): New.
* cp-tree.h (cp_fold_obj_type_ref): Declare.
testsuite/
* g++.dg/opt/devirt1.C: New.
From-SVN: r83531
GCC Administrator [Wed, 23 Jun 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83529.2
GCC Administrator [Wed, 23 Jun 2004 00:16:10 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83527.2
Richard Henderson [Tue, 22 Jun 2004 23:54:46 +0000 (16:54 -0700)]
re PR middle-end/16026 (ICE in function.c:4804, assign_parms, when -mpowerpc64 & half-word operation)
PR middle-end/16026
* function.c (assign_parms): Don't abort for overaligned PARALLEL.
From-SVN: r83525
Joseph Myers [Tue, 22 Jun 2004 22:27:16 +0000 (23:27 +0100)]
* Makefile.in (distclean): Don't try to remove empty directories.
From-SVN: r83523
Alexandre Oliva [Tue, 22 Jun 2004 22:22:14 +0000 (22:22 +0000)]
istream.tcc (getline): Make sure arguments passed to min/max have the same type.
* include/bits/istream.tcc (getline): Make sure arguments passed
to min/max have the same type.
* include/bits/locale_facets.tcc (__verify_grouping): Likewise.
* include/bits/stl_deque.h (_Deque_base::_Deque_base): Likewise.
From-SVN: r83522
Jason Merrill [Tue, 22 Jun 2004 21:45:54 +0000 (17:45 -0400)]
fix
From-SVN: r83517
Richard Sandiford [Tue, 22 Jun 2004 21:28:05 +0000 (21:28 +0000)]
re PR target/15869 (No NOP after LW (with -mips1 -O0))
PR target/15869
* config/mips/mips.c (mips_avoid_hazards): Call split_all_insns_noflow.
From-SVN: r83516
Kelley Cook [Tue, 22 Jun 2004 21:17:16 +0000 (21:17 +0000)]
pr15551.C: New testcase.
2004-06-22 Kelley Cook <kcook@gcc.gnu.org>
* g++.dg/opt/pr15551.C: New testcase.
From-SVN: r83515
Jason Merrill [Tue, 22 Jun 2004 21:15:29 +0000 (17:15 -0400)]
re PR c++/16112 (ICE with statement expression in return statement)
PR c++/16112
* cp-gimplify.c (cp_gimplify_init_expr): Look through
CLEANUP_POINT_EXPR.
From-SVN: r83514
H.J. Lu [Tue, 22 Jun 2004 19:52:33 +0000 (19:52 +0000)]
re PR target/14800 (Some x86 tests aren't valid for x86_64)
2004-06-22 H.J. Lu <hongjiu.lu@intel.com>
PR target/14800
* gcc.misc-tests/linkage.exp: Set native_cflags to "-m32" for
x86_64-*-linux* when compiling for 32bit.
From-SVN: r83513
Bryce McKinlay [Tue, 22 Jun 2004 19:24:32 +0000 (19:24 +0000)]
BytesToUnicode.java (getDecoder): Pass original encoding name to iconv.
* gnu/gcj/convert/BytesToUnicode.java (getDecoder): Pass original
encoding name to iconv.
* gnu/gcj/convert/UnicodeToBytes.java (getEncoder): Likewise.
From-SVN: r83512
Dale Johannesen [Tue, 22 Jun 2004 19:11:43 +0000 (19:11 +0000)]
Testcases for my rs6000-specific change of this date.
From-SVN: r83511
Alexandre Oliva [Tue, 22 Jun 2004 18:38:00 +0000 (18:38 +0000)]
mn10300.md (movdi, movdf): Use high/low for movu operands.
* config/mn10300/mn10300.md (movdi, movdf): Use high/low for movu
operands.
From-SVN: r83510
Andrew Haley [Tue, 22 Jun 2004 18:22:43 +0000 (18:22 +0000)]
re PR java/16113 (ICE: Segmentation fault when compiling bytecode with debugging info and try/catch)
Fixes PR java/16113.
* decl.c (force_poplevels): Remove call to expand_end_bindings.
Co-Authored-By: Ranjit Mathew <rmathew@hotmail.com>
From-SVN: r83509