gcc.git
20 years agoc-common.def (COMPOUND_STMT): Remove.
Richard Henderson [Thu, 17 Jun 2004 01:24:06 +0000 (18:24 -0700)]
c-common.def (COMPOUND_STMT): Remove.

        * c-common.def (COMPOUND_STMT): Remove.
        * c-common.c (finish_fname_decls): Don't look through it.
        * c-typeck.c (c_tree_expr_nonnegative_p): Likewise.
        * c-common.h (COMPOUND_BODY): Remove.
        (c_common_stmt_codes): Remove COMPOUND_STMT.
        * c-dump.c (c_dump_tree): Likewise.
        * c-gimplify.c (c_gimplify_stmt): Likewise.
        * c-pretty-print.c (pp_c_statement): Likewise.
        * tree.h (DECL_SAVED_TREE): Update commentary.
        * doc/c-tree.texi (ASM_EXPR): Rename from ASM_STMT.
        (CASE_LABEL_EXPR): Rename from CASE_LABEL.
        (GOTO_EXPR): Rename from GOTO_STMT.
        (GOTO_FAKE_P): Remove.
        (COMPOUND_STMT): Remove.
        (HANDLER): Update wrt COMPOUND_STMT.
        (STMT_EXPR): Likewise.
        (LABEL_EXPR): Rename from LABEL_STMT.
        (SCOPE_STMT): Remove.
        * objc/objc-act.c (objc_build_try_catch_finally_stmt): Don't look
        through COMPOUND_STMT.
cp/
        * cp-tree.h (COMPOUND_STMT_TRY_BLOCK, COMPOUND_STMT_BODY_BLOCK): Kill.
        (BIND_EXPR_TRY_BLOCK, BIND_EXPR_BODY_BLOCK): New.
        * cxx-pretty-print.c (pp_cxx_function_definition): Move handling
        of CTOR_INITIALIZER ...
        (pp_cxx_statement): ... here.
        * decl.c (begin_function_body): Don't set COMPOUND_STMT_BODY_BLOCK.
        (finish_function): Use alloc_stmt_list to zap entire function.
        * parser.c (cp_parser_compound_statement): Update commentary.
        * pt.c (tsubst_expr): Use BIND_EXPR instead of COMPOUND_STMT.
        * semantics.c (begin_compound_stmt, finish_compound_stmt): Likewise.
        (finish_stmt_expr): Don't look through COMPOUND_STMT.

From-SVN: r83281

20 years agoc-common.h (c_begin_if_stmt, [...]): Remove decls.
Richard Henderson [Thu, 17 Jun 2004 01:06:04 +0000 (18:06 -0700)]
c-common.h (c_begin_if_stmt, [...]): Remove decls.

        * c-common.h (c_begin_if_stmt, c_begin_while_stmt,
        c_finish_while_stmt_cond): Remove decls.
        * c-parse.in (if_prefix): Don't save c_begin_if_stmt result.
        * c-typeck.c (c_begin_if_stmt): Return void.
        (c_begin_else): Tidy.  Save stmt_count.
        * c-tree.h (c_begin_if_stmt): Update decl.
        * objc/objc-act.c (objc_build_try_enter_fragment,
        objc_build_extract_fragment, objc_build_try_epilogue,
        objc_build_catch_stmt, objc_build_catch_epilogue,
        objc_build_finally_prologue, objc_build_finally_epilogue): Update
        for if builder function changes.

From-SVN: r83280

20 years agoDaily bump.
GCC Administrator [Thu, 17 Jun 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r83278.2

20 years agoDaily bump.
GCC Administrator [Thu, 17 Jun 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r83277.2

20 years agos390.c (struct machine_function): New member last_restore_gpr.
Ulrich Weigand [Wed, 16 Jun 2004 23:11:33 +0000 (23:11 +0000)]
s390.c (struct machine_function): New member last_restore_gpr.

* config/s390/s390.c (struct machine_function):  New member
last_restore_gpr.
(s390_frame_info): Add BASE_USED and RETURN_ADDR_USED parameters.
Do not modify machine->save_return_addr_p or regs_ever_live.
Fill in machine->last_restore_gpr.
(s390_optimize_prolog): Use s390_frame_info to compute registers
to save/restore, remove duplicated code.
(s390_arg_frame_offset): Use s390_frame_info to compute frame
size, remove duplicated code.
(s390_emit_prologue): Adapt s390_frame_info call.  Update
machine->save_return_addr_p and regs_ever_live.
(s390_emit_epilogue): Use machine->last_restore_gpr instead of
machine->last_save_gpr.

From-SVN: r83275

20 years agoc-parse.in (if_stmt_locus): Remove.
Richard Henderson [Wed, 16 Jun 2004 23:05:37 +0000 (16:05 -0700)]
c-parse.in (if_stmt_locus): Remove.

        * c-parse.in (if_stmt_locus): Remove.
        (if_prefix): Increment stmt_count; pass it to c_finish_if_cond.
        (select_or_iter_stmt): Move empty if warnings to c-typeck.c.
        * c-typeck.c (if_elt): Sort by expected size.  Rename locus to
        empty_locus.  Add stmt_count, saw_else.
        (c_begin_if_stmt): Push if_stack here.
        (c_finish_if_cond): Rename from c_expand_end_cond.  Record stmt_count.
        (c_finish_then, c_finish_else): Record empty_locus.
        (c_begin_else): Rename from c_expand_start_else.  Record stmt_count.
        (c_finish_if_stmt): Rename from c_expand_end_cond.  Warn for empty
        if or else body.
        * c-tree.h: Update prototypes.
testsuite/
        * gcc.dg/20001116-1.c: Move expected warning line.

From-SVN: r83274

20 years agotree.h (PHI_CHAIN): New.
Steven Bosscher [Wed, 16 Jun 2004 23:03:34 +0000 (23:03 +0000)]
tree.h (PHI_CHAIN): New.

* tree.h (PHI_CHAIN): New.
* (tree-cfg.c, tree-dfa.c, tree-flow-inline.h, tree-into-ssa.c,
tree-outof-ssa.c, tree-phinodes.c, tree-pretty-print.c,
tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-dom.c, tree-ssa-dse.c,
tree-ssa-live.c, tree-ssa-loop.c, tree-ssa-phiopt.c, tree-ssa-pre.c,
tree-ssa.c, tree-tailcall.c): Use PHI_CHAIN instead of TREE_CHAIN
when traversing a list of PHI_NODEs.

From-SVN: r83273

20 years agoi386-ssetype-1.c: Remove XFAIL.
Richard Henderson [Wed, 16 Jun 2004 22:57:02 +0000 (15:57 -0700)]
i386-ssetype-1.c: Remove XFAIL.

        * gcc.dg/i386-ssetype-1.c: Remove XFAIL.
        * gcc.dg/i386-ssetype-3.c: Remove XFAIL.

From-SVN: r83270

20 years agore PR target/13292 (-msoft-float seems to corrupt builtin defines)
Bernardo Innocenti [Wed, 16 Jun 2004 22:10:39 +0000 (00:10 +0200)]
re PR target/13292 (-msoft-float seems to corrupt builtin defines)

PR target/13292
* config/m68k/m68k.h (TARGET_SWITCHES): Don't remove MASK_68040_ONLY
on -msoft-float.
(TARGET_FLT_EVAL_METHOD): Don't advertise extended precision for
68040 and soft-float.
* config/m68k/m68k.md (truncdfsf2): Explicitly require TARGET_68881
in the TARGET_68040_ONLY case.

From-SVN: r83268

20 years ago* pt.c (mark_decl_instantiated): Don't call defer_fn.
Geoffrey Keating [Wed, 16 Jun 2004 22:07:03 +0000 (22:07 +0000)]
* pt.c (mark_decl_instantiated): Don't call defer_fn.

From-SVN: r83267

20 years agom68k.md (movsi_cfv4): New pattern to allow mov3q.
Peter Barada [Wed, 16 Jun 2004 21:53:46 +0000 (21:53 +0000)]
m68k.md (movsi_cfv4): New pattern to allow mov3q.

* config/m68k/m68k.md (movsi_cfv4): New pattern to allow mov3q.
(movsi_cf): Make named, don't match TARGET_CFV4.
(pushexthisi_const): Use mov3q if possible.
(extendhisi2, cvf4_extendhisi2): Split extendhisi2 pattern
to special case mvz.w for ColdFire V4.
(extendqisi2, cvf4_extendqisi2): Split extendhisi2 pattern
to special case mvz.b for ColdFire V4.
(udivmodhi4, divmodhi4): Use mvz to zero extend arg for
divide.
(iorsi3, xorsi3, andsi3): Use bitfield instructions if possible.
* config/m68k/m68k.c(valid_mov3q_const):  New function.
(const_method): SWAP is valid for ColdFire.
(MULL_COST, MULW_COST): Fix costs for ColdFire V3/V4.
* config/m68k/m68k-protos.h (valid_mov3q_const): Prototype here.

From-SVN: r83266

20 years agoc-common.def (CASE_LABEL): Remove.
Richard Henderson [Wed, 16 Jun 2004 20:51:46 +0000 (13:51 -0700)]
c-common.def (CASE_LABEL): Remove.

        * c-common.def (CASE_LABEL): Remove.
        * c-common.c (c_add_case_label): Use CASE_LABEL, not CASE_LABEL_DECL.
        (match_case_to_enum_1): Likewise.
        * c-common.h (c_common_stmt_codes): Remove CASE_LABEL.
        * c-dump.c (c_dump_tree): Likewise.
        * c-gimplify.c (c_gimplify_stmt): Likewise.
        * c-pretty-print.c (pp_c_statement): Likewise.
        * c-semantics.c (build_case_label): Use CASE_LABEL_EXPR.
        * tree.h (CASE_LOW): Update commentary.
cp/
        * parser.c (cp_parser_labeled_statement): Update commentary.
        * pt.c (tsubst_expr): Use CASE_LABEL_EXPR.
        * tree.c (mark_local_for_remap_r): Likewise.

From-SVN: r83261

20 years agoc-common.def (ASM_STMT): Remove.
Richard Henderson [Wed, 16 Jun 2004 20:23:02 +0000 (13:23 -0700)]
c-common.def (ASM_STMT): Remove.

        * c-common.def (ASM_STMT): Remove.
        * c-common.h (c_common_stmt_codes): Remove ASM_STMT.
        * c-dump.c (c_dump_tree): Likewise.
        * c-gimplify.c (c_gimplify_stmt): Likewise.
        * c-pretty-print.c (pp_c_statement): Likewise.
        * c-typeck.c (build_asm_expr): Use ASM_EXPR.
        * tree.h: Fix commentary.
cp/
        * parser.c (cp_parser_asm_definition): Update commentary.
        * pt.c (tsubst_expr): Use ASM_EXPR.
        * semantics.c (finish_asm_stmt): Likewise.

From-SVN: r83260

20 years agoc-common.def (GOTO_STMT, LABEL_STMT): Remove.
Richard Henderson [Wed, 16 Jun 2004 18:21:20 +0000 (11:21 -0700)]
c-common.def (GOTO_STMT, LABEL_STMT): Remove.

        * c-common.def (GOTO_STMT, LABEL_STMT): Remove.
        * c-common.c (c_add_case_label): Use LABEL_EXPR.
        * c-common.h (GOTO_FAKE_P, LABEL_STMT_LABEL): Remove.
        (c_common_stmt_codes): Remove GOTO_STMT, LABEL_STMT.
        * c-dump.c (c_dump_tree): Likewise.
        * c-gimplify.c (c_gimplify_stmt): Likewise.
        * c-pretty-print.c (pp_c_statement): Likewise.
        * c-parse.in (stmt): Use GOTO_EXPR.
        (label): Use LABEL_EXPR.
        * c-semantics.c (build_stmt): Set TREE_TYPE to void.
        * tree-inline.c (copy_body_r): Don't build empty BLOCKs.
cp/
        * decl.c (finish_destructor_body): Use LABEL_EXPR.
        * parser.c (cp_parser_statement): Update commentary.
        * pt.c (tsubst_expr): Use LABEL_EXPR, GOTO_EXPR.
        * semantics.c (finish_goto_stmt, finish_label_stmt): Likewise.
        * tree.c (mark_local_for_remap_r): Likewise.

From-SVN: r83255

20 years agocfgcleanup.c (try_simplify_condjump): Update test to make sure we have a conditional...
J"orn Rennecke [Wed, 16 Jun 2004 18:03:11 +0000 (18:03 +0000)]
cfgcleanup.c (try_simplify_condjump): Update test to make sure we have a conditional branch around am unconditional...

* cfgcleanup.c (try_simplify_condjump): Update test to make
sure we have a conditional branch around am unconditional branch.

From-SVN: r83254

20 years agore PR c++/16012 (trouble with scope in for statements in templates)
Richard Henderson [Wed, 16 Jun 2004 17:59:07 +0000 (10:59 -0700)]
re PR c++/16012 (trouble with scope in for statements in templates)

        PR c++/16012
        * semantics.c (begin_for_stmt, begin_for_stmt): Do put the init
        statement in FOR_INIT_STMT for templates.

From-SVN: r83253

20 years agorope (rope(_CharT, const allocator_type&)): Fix to use _Data_allocate.
Paolo Carlini [Wed, 16 Jun 2004 17:29:16 +0000 (17:29 +0000)]
rope (rope(_CharT, const allocator_type&)): Fix to use _Data_allocate.

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

* include/ext/rope (rope(_CharT, const allocator_type&)): Fix
to use _Data_allocate.
* include/ext/ropeimpl.h (rope<>::_S_leaf_concat_char_iter): Likewise.
(rope<>::_S_substring): Likewise.
(rope<>::rope(size_t, _CharT, const allocator_type&)): Likewise.
(rope<>::c_str()): Likewise.
(rope<>::replace_with_c_str()): Likewise.

* include/ext/ropeimpl.h (_Rope_iterator_base<>::_S_setbuf):
Correctly qualify _S_leaf, _S_function, etc., with _Rope_constants::,
not _RopeRep.
(_Rope_iterator_base<>::_S_setcache): Likewise.
(_Rope_iterator_base<>::_S_setcache_for_incr): Likewise.
(rope<>::_S_substring): Likewise.
(rope<>::_S_dump): Likewise.
(rope<>::_S_fetch_ptr): Likewise.
(rope<>::_S_compare): Likewise.
(rope<>::replace_with_c_str()): Likewise.

* testsuite/ext/rope.cc: Rename to testsuite/ext/rope/1.cc.
* testsuite/ext/rope/2.cc: New.

2004-06-16  Paolo Carlini  <pcarlini@suse.de>
    Matt Austern  <austern@apple.com>

* testsuite/ext/rope/3.cc: New.

Co-Authored-By: Matt Austern <austern@apple.com>
From-SVN: r83251

20 years agotree-cfg.c (pass_split_crit_edge): Give it a name and a dump file.
Daniel Berlin [Wed, 16 Jun 2004 17:17:17 +0000 (17:17 +0000)]
tree-cfg.c (pass_split_crit_edge): Give it a name and a dump file.

2004-06-16  Daniel Berlin  <dberlin@dberlin.org>

* tree-cfg.c (pass_split_crit_edge): Give it a name and a dump file.

From-SVN: r83250

20 years agoloop.c (loop_givs_reduce): Avoid miscompilation of loops entered at bottom.
Dale Johannesen [Wed, 16 Jun 2004 17:13:34 +0000 (17:13 +0000)]
loop.c (loop_givs_reduce): Avoid miscompilation of loops entered at bottom.

2004-06-16  Dale Johannesen  <dalej@apple.com>

        * loop.c (loop_givs_reduce): Avoid miscompilation of
        loops entered at bottom.

From-SVN: r83248

20 years agocfglayout.c (fixup_reorder_chain): Handle case where the destination of E_FALL is...
Joern Rennecke [Wed, 16 Jun 2004 16:49:22 +0000 (17:49 +0100)]
cfglayout.c (fixup_reorder_chain): Handle case where the destination of E_FALL is EXIT_BLOCK_PTR.

* cfglayout.c (fixup_reorder_chain): Handle case where the
destination of E_FALL is EXIT_BLOCK_PTR.

From-SVN: r83247

20 years agocfglayout.c (fixup_reorder_chain): Handle case where the destination of E_FALL is...
Joern Rennecke [Wed, 16 Jun 2004 16:00:40 +0000 (17:00 +0100)]
cfglayout.c (fixup_reorder_chain): Handle case where the destination of E_FALL is EXIT_BLOCK_PTR.

* cfglayout.c (fixup_reorder_chain): Handle case where the
destination of E_FALL is EXIT_BLOCK_PTR.

From-SVN: r83245

20 years agore PR target/15653 (Gcc 3.4 ICE on valid code)
Vladimir Makarov [Wed, 16 Jun 2004 15:47:29 +0000 (15:47 +0000)]
re PR target/15653 (Gcc 3.4 ICE on valid code)

2004-06-16  Vladimir Makarov  <vmakarov@redhat.com>

PR target/15653
* config/ia64/ia64.c (ia64_dfa_new_cycle): Do not insert nops
after shifts before asm.

From-SVN: r83243

20 years agore PR tree-optimization/15993 ([lno] Compiler hangs at -O3)
Zdenek Dvorak [Wed, 16 Jun 2004 13:39:49 +0000 (13:39 +0000)]
re PR tree-optimization/15993 ([lno] Compiler hangs at -O3)

PR tree-optimization/15993
* tree-ssa-dom.c (thread_across_edge): Do not thread edge if its
destination is unchanged.

From-SVN: r83242

20 years agore PR tree-optimization/15993 ([lno] Compiler hangs at -O3)
Zdenek Dvorak [Wed, 16 Jun 2004 13:39:04 +0000 (13:39 +0000)]
re PR tree-optimization/15993 ([lno] Compiler hangs at -O3)

PR tree-optimization/15993
* tree-ssa-dom.c (thread_across_edge): Do not thread edge if its
destination is unchanged.

[[Split portion of a mixed commit.]]

From-SVN: r83241.2

20 years agoinstall.texi (Configuration): Update description for --enable-version-specific-runtim...
Andreas Jaeger [Wed, 16 Jun 2004 12:34:24 +0000 (14:34 +0200)]
install.texi (Configuration): Update description for --enable-version-specific-runtime-libs.

* doc/install.texi (Configuration): Update description for
--enable-version-specific-runtime-libs.

From-SVN: r83240

20 years ago* gcc_update: boehm-gc/configure.in -> configure.ac.
Andreas Jaeger [Wed, 16 Jun 2004 11:58:44 +0000 (13:58 +0200)]
* gcc_update: boehm-gc/configure.in -> configure.ac.

From-SVN: r83238

20 years agoRemove conflict marker.
Andreas Schwab [Wed, 16 Jun 2004 10:45:58 +0000 (10:45 +0000)]
Remove conflict marker.

From-SVN: r83234

20 years agoconfigure.ac: New name of configure.in.
Paolo Bonzini [Wed, 16 Jun 2004 07:35:00 +0000 (07:35 +0000)]
configure.ac: New name of configure.in.

boehm-gc/ChangeLog:
2005-06-16  Paolo Bonzini  <bonzini@gnu.org>

* boehm-gc/configure.ac: New name of configure.in.
Remove useless multilib stuff.  Change uses of
INCLUDES and CXXINCLUDES to AM_CPPFLAGS.
* boehm-gc/configure.in: New name of configure.in.
* boehm-gc/Makefile.am: Update for automake 1.8.5.
* boehm-gc/acinclude.m4: Include ../config/acx.m4.
* boehm-gc/aclocal.m4: Regenerate.
* boehm-gc/configure: Regenerate.

contrib/ChangeLog:
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

* gcc_update (boehm-gc/configure): Depend on
boehm-gc/configure.ac instead of boehm-gc/configure.in

gcc/ChangeLog:
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

* doc/install.texi: boehm-gc now uses automake 1.8.5.

From-SVN: r83227

20 years agotoplev.h (rest_of_compilation): Adjust prototype.
Paolo Bonzini [Wed, 16 Jun 2004 07:27:32 +0000 (07:27 +0000)]
toplev.h (rest_of_compilation): Adjust prototype.

2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

* toplev.h (rest_of_compilation): Adjust prototype.

From-SVN: r83226

20 years agocoverage.c: Remove argument to rest_of_compilation.
Paolo Bonzini [Wed, 16 Jun 2004 07:25:53 +0000 (07:25 +0000)]
coverage.c: Remove argument to rest_of_compilation.

gcc/ChangeLog:
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

* coverage.c: Remove argument to rest_of_compilation.
* expr.c (execute_expand, set_save_expr_context, pass_expand): New.
* passes.c (rest_of_compilation): Remove argument.
(pass_rest_of_compilation): New.
(rest_of_handle_final, rest_of_handle_delay_slots,
rest_of_handle_stack_regs, rest_of_handle_variable_tracking
rest_of_handle_machine_reorg, rest_of_handle_regrename
rest_of_handle_sched, rest_of_handle_sched2, rest_of_handle_gcse2
rest_of_handle_regmove, rest_of_handle_tracer
rest_of_handle_if_conversion, rest_of_handle_if_after_combine
rest_of_handle_web, rest_of_handle_branch_prob
rest_of_handle_value_profile_transformations, rest_of_handle_cfg
rest_of_handle_addressof, rest_of_handle_jump_bypass
rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2):
Check that the two arguments are actually superfluous.
* toplev.h (rest_of_compilation): Adjust prototype.
* tree-optimize.c (register_dump_files): Add properties argument.
Track validity of passes.  Only initialize dump files for
tree-based passes.  Store the full set of provided passes in
the pass.
(init_tree_optimization_passes): Register pass_expand and
pass_rest_of_compilation.
(execute_one_pass): Do not track the presence of required properties
here.  Set in_gimple_form.  Do not update current_properties.
(current_properties): Remove.
(set_save_expr_context): Remove.
(tree_rest_of_compilation): Do not set in_gimple_form.  Do not
expand to RTL here, and do not call rest_of_compilation.  Push
GGC context even before gimplification.
* tree-pass.h (PROP_rtl, PROP_trees): New flags.
(pass_expand, pass_rest_of_compilation): Declare.

gcc/java/ChangeLog:
2004-06-16  Paolo Bonzini  <bonzini@gnu.org>

* java/class.c (emit_register_classes): Remove argument to
rest_of_compilation.
* java/resource.c (write_resource_constructor): Likewise.

From-SVN: r83225

20 years agofold-const.c (swap_tree_comparison): No longer static.
Jeff Law [Wed, 16 Jun 2004 05:09:41 +0000 (23:09 -0600)]
fold-const.c (swap_tree_comparison): No longer static.

        * fold-const.c (swap_tree_comparison): No longer static.
        (tree_swap_operands_p): Similarly.  Return true if both operands
        are SSA_NAMEs and the first operand has a higher version number than
        the second operand.
        * tree.h (swap_tree_comparison): Prototype.
        (tree_swap_operands_p): Prototype.
        * tree-ssa-operands.c (get_expr_operands): For commutative
        operators and relational comparisons, canonicalize the
        order of the operands.

        * gcc.dg/tree-ssa/20040615-1.c: New test.
        * gcc.dg/tree-ssa/20030824-1.c: Update expected output to
        be less sensitive to operand ordering.
        * gcc.dg/tree-ssa/20030824-2.c: Likewise.

From-SVN: r83224

20 years ago* g++.dg/abi/bitfield3.C: Add comment..
Danny Smith [Wed, 16 Jun 2004 04:00:31 +0000 (04:00 +0000)]
* g++.dg/abi/bitfield3.C: Add comment..

From-SVN: r83223

20 years agoc-common.c (lang_gimplify_stmt): Remove next_p argument.
Richard Henderson [Wed, 16 Jun 2004 01:21:38 +0000 (18:21 -0700)]
c-common.c (lang_gimplify_stmt): Remove next_p argument.

* c-common.c (lang_gimplify_stmt): Remove next_p argument.
(if_elt, if_stack, if_stack_space, c_expand_start_cond, c_finish_then,
c_expand_end_cond, c_expand_start_else, c_finish_else, c_begin_if_stmt,
c_begin_while_stmt, c_finish_while_stmt_cond): Move to c-typeck.c.
(finish_fname_decls, fname_decl): Use statement_lists.
(c_expand_expr_stmt): Don't set last_expr_type.
(c_type_hash): Fix indentation.
(c_safe_from_p): Don't follow TREE_CHAIN.
(c_tree_chain_matters_p): Remove.
* c-common.def (SCOPE_STMT): Remove.
(CLEANUP_STMT): Redefine to contain its own body.
* c-common.h (struct stmt_tree_s): Remove x_last_stmt,
x_last_expr_type, x_last_expr_filename, x_scope_stmt_stack.
Add x_cur_stmt_list.
(last_tree, last_expr_type, last_expr_filename, RECHAIN_STMTS): Remove.
(cur_stmt_list): New.
(STATEMENT_LIST_STMT_EXPR): New.
(SCOPE_BEGIN_P, SCOPE_END_P, SCOPE_STMT_BLOCK, SCOPE_NULLIFIED_P,
SCOPE_NO_CLEANUPS_P, SCOPE_PARTIAL_P, NEW_FOR_SCOPE_P): Remove.
(CLEANUP_BODY): New.
(CLEANUP_DECL): Move to operand 2.
(c_common_stmt_codes): Remove SCOPE_STMT.
(COMPOUND_STMT_NO_SCOPE, COMPOUND_STMT_BODY_BLOCK): Remove.
* c-decl.c (c_scope_stmt_stack, current_scope_stmt_stack): Remove.
(c_push_function_context, c_pop_function_context): Don't save it.
(finish_decl): Set TREE_USED on the decl for a cleanup.
Use push_cleanup.
(store_parm_decls): Use statement lists.
(finish_function): Remove compstmt rule workaround.  Use statement
lists.  Call finish_fname_decls after finalizing the body.
(c_begin_compound_stmt): Move to c-typeck.c.
* c-dump.c (c_dump_tree): Remove SCOPE_STMT.
* c-gimplify.c (gimplify_cleanup_stmt, gimplify_cleanup_stmts): New.
(c_genericize): Invoke them.
(c_gimplify_stmt): Don't look through TREE_CHAIN.  Kill SCOPE_STMT.
(c_build_bind_expr): Export.
(gimplify_block, gimplify_cleanup): Remove.
(gimplify_condition): Use gimplify_stmt.
(gimplify_for_stmt): Remove FOR_INIT_STMT chaining hack.
(gimplify_if_stmt): Remove recursion hack.
(c_gimplify_expr): Remove STMT_EXPR handling.
(stmt_expr_last_stmt, gimplify_stmt_expr): Remove.
(is_last_stmt_of_scope): Remove.
* c-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Remove.
* c-mudflap.c (mflang_flush_calls): Use c_begin_compound_stmt,
c_end_compound_stmt.
* c-objc-common.c (build_cdtor): Likewise.
* c-parse.in (primary): Use c_finish_stmt_expr.
(push_scope, pop_scope): Remove.
(c99_block_start, compstmt_start): Use c_begin_compound_stmt.
(c99_block_end, compstmt): Use c_end_compound_stmt.
(c99_block_lineno_labeled_stmt): Likewise.
(compstmt_primary_start): Use c_begin_stmt_expr.
(simple_if, select_or_iter_stmt): Update calls to stmt builders.
(do_stmt_start): Fill in body directly.
(lineno_stmt): Avoid setting lineno on constants.
* c-pretty-print.c (pp_c_statement): Handle STATEMENT_LIST.
Remove SCOPE_STMT.
* c-semantics.c (begin_stmt_tree): Remove.
(push_stmt_list, re_push_stmt_list, pop_stmt_list): New.
(add_stmt): Use statement lists.
(add_scope_stmt, finish_stmt_tree): Remove.
(push_cleanup): New.
* c-tree.h: Move some decls from c-common.h.
* c-typeck.c (c_tree_expr_nonnegative_p): Simplify for statement lists.
(do_case, c_finish_case): Likewise.
(c_finish_then): Take body for then as argument.
(c_finish_else): Similarly.
(c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
c_finish_for_stmt_incr, c_finish_for_stmt): New.
(c_begin_stmt_expr, c_finish_stmt_expr): New.
(c_begin_compound_stmt): Do scope management.
(c_end_compound_stmt): New.
* fold-const.c (tree_expr_nonnegative_p): Fix BIND_EXPR.
* gimplify.c (voidify_wrapper_expr): Accept temporary argument.
Look through exception handling constructs.
(gimplify_bind_expr): Accept temporary argument.
(gimplify_target_expr): Special case BIND_EXPR bodies.
(gimplify_expr): Handle fallback == fb_none like a statement.
* langhooks-def.h (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Kill.
* langhooks.c (lhd_tree_inlining_tree_chain_matters_p): Remove.
* langhooks.h (tree_chain_matters_p): Remove.
* stub-objc.c (objc_clear_super_receiver): New.
* tree-gimple.h (voidify_wrapper_expr): Update decl.
(append_to_statement_list, append_to_statement_list_force): Move
to tree-iterator.h.
* tree-inline.c (expand_call_inline): Update call.
(clone_body): Use statement lists.
(walk_tree): Don't check tree_chain_matters_p.
(copy_tree_r): Likewise.
* tree-iterator.c (alloc_stmt_list): Clear lang bits.
(tsi_link_before, tsi_link_after): Set TREE_SIDE_EFFECTS properly.
* tree-iterator.h (append_to_statement_list,
append_to_statement_list_force): Moved from tree-gimple.h.
* tree-pretty-print.c (dump_generic_node): Clean up TARGET_EXPR dump.
* objc/objc-act.c (build_module_descriptor): Use c_begin_compound_stmt.
(objc_enter_block): Likewise.
(objc_exit_block): Use c_end_compound_stmt.
(objc_build_try_enter_fragment): Add #error and comment for
rewriting for OBJCPLUS.
(objc_build_extract_fragment, objc_build_try_epilogue,
objc_build_catch_stmt, objc_build_finally_prologue,
objc_build_finally_epilogue): Update for C statement builders.
* objc/objc-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P):
Remove.
cp/
* call.c (initialize_reference): Don't build CLEANUP_STMT here.
* cp-gimplify.c (cp_gimplify_stmt): Remove next_p argument.
(genericize_try_block): Use gimplify_stmt.
(genericize_catch_block, genericize_eh_spec_block): Likewise.
(cp_gimplify_init_expr): Remove STMT_EXPR special case.
(gimplify_must_not_throw_expr): Update voidify_wrapper_expr call.
* cp-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Remove.
(cp_tree_chain_matters_p): Remove.
* cp-tree.h (COMPOUND_STMT_TRY_BLOCK): New.
(COMPOUND_STMT_BODY_BLOCK): New.
(STATEMENT_LIST_NO_SCOPE, STATEMENT_LIST_TRY_BLOCK): New.
(EXPR_STMT_STMT_EXPR_RESULT): New.
(building_stmt_tree): Check cur_stmt_list.
(tf_stmt_expr_cmpd, tf_stmt_expr_body): Remove.
(BCS_NO_SCOPE, BCS_TRY_BLOCK, BCS_FN_BODY): New.
* decl.c (poplevel): Use pop_stmt_list for minding cleanups.
(cp_finish_decl): Use push_cleanup.
(start_function, finish_function): Use statement lists.
(finish_stmt): Do nothing.
* except.c (begin_eh_spec_block): Use statement lists.
(check_handlers_1, check_handlers): Likewise.
* init.c (construct_virtual_base): Don't add extra compound stmts.
(build_vec_init): Likewise.
* name-lookup.c (maybe_push_cleanup_level): Use statement lists.
* name-lookup.h (struct cp_binding_level): Add statement_list.
* parser.c (cp_parser_statement): Take the STMT_EXPR node, not a bool.
(cp_parser_labeled_statement, cp_parser_expression_statement,
cp_parser_statement_seq_opt): Likewise.
(cp_parser_compound_statement): Likewise.  Take bool for try block.
(cp_parser_selection_statement): Tidy if processing.
(cp_parser_already_scoped_statement): Rewrite to do what it says.
* pt.c (tsubst_copy): Move STMT_EXPR to tsubst_expr.
(tsubst_expr): Rewrite STMT_EXPR processing.  Handle STATEMENT_LIST.
Mind COMPOUND_STMT_TRY_BLOCK, EXPR_STMT_STMT_EXPR_RESULT.
* semantics.c (do_poplevel, do_pushlevel): Use statement lists.
(finish_cond): New, rewritten from FINISH_COND.
(simplify_loop_decl_cond): New.
(finish_expr_stmt): Avoid nested EXPR_STMTs.
(begin_if_stmt, finish_if_stmt_cond, finish_then_clause,
begin_else_clause, finish_else_clause, finish_if_stmt,
begin_while_stmt, finish_while_stmt_cond, finish_while_stmt,
begin_do_stmt, finish_do_body, begin_for_stmt, finish_for_init_stmt,
finish_for_cond, finish_for_stmt, begin_switch_stmt,
finish_switch_cond, finish_switch_stmt, begin_try_block,
finish_try_block, finish_cleanup_try_block, finish_function_try_block,
finish_handler_sequence, finish_function_handler_sequence,
begin_handler, finish_handler_parms, finish_handler,
begin_stmt_expr, finish_stmt_expr_expr, finish_stmt_expr): Rewrite
using statement lists.
(begin_compound_stmt): Replace has_no_scope argument with flags.
Update all callers.  Use statement lists.
(finish_compound_stmt): Likewise.
(finish_decl_cleanup, finish_eh_cleanup): Use push_cleanup.
(current_scope_stmt_stack): Remove.
(simplify_aggr_init_expr): Don't muck with TREE_CHAIN.
* typeck2.c (split_nonconstant_init_1, split_nonconstant_init):
Rewrite with statement lists.
testsuite/
* g++.dg/ext/stmtexpr1.C: XFAIL.
* gcc.dg/20030612-1.c: XFAIL.

From-SVN: r83221

20 years agoDaily bump.
GCC Administrator [Wed, 16 Jun 2004 00:16:15 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r83219.2

20 years agoDaily bump.
GCC Administrator [Wed, 16 Jun 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r83217.2

20 years agoasm5.c: New.
Eric Christopher [Tue, 15 Jun 2004 23:09:24 +0000 (23:09 +0000)]
asm5.c: New.

2004-06-15  Eric Christopher  <echristo@redhat.com>

        * g++.dg/charset/asm5.c: New.
        * gcc.dg/charset/asm6.c: New.

From-SVN: r83215

20 years agodf.c (df_reg_clobber_gen): Removed.
Zdenek Dvorak [Tue, 15 Jun 2004 22:15:21 +0000 (00:15 +0200)]
df.c (df_reg_clobber_gen): Removed.

* df.c (df_reg_clobber_gen): Removed.
(df_bb_rd_local_compute, df_insn_refs_record, df_rd_local_compute):
Make more effective for hard regs.
* ra-build.c (livethrough_conflicts_bb): Check contains_call.

From-SVN: r83204

20 years agoRevert previous inintended changes.
Tobias Schlüter [Tue, 15 Jun 2004 21:53:26 +0000 (23:53 +0200)]
Revert previous inintended changes.

From-SVN: r83203

20 years agore PR fortran/15962 (constant expression not recognized as such)
Tobias Schlüter [Tue, 15 Jun 2004 21:50:50 +0000 (23:50 +0200)]
re PR fortran/15962 (constant expression not recognized as such)

fortran/
PR fortran/15962
* match.c (match_case_selector): Call gfc_match_init_expr
instead of gfc_match_expr.
* resolve.c (validate_case_label_expr): No need to check for
constant, since it wouldn't have been matched with the fix to
match.c.
testsuite/
PR fortran/15962
* gfortran.fortran-torture/execute/select_1.f90: New test.

From-SVN: r83202

20 years agoc-pragma.h (c_lex_string_translate): Change type to int.
Alexandre Oliva [Tue, 15 Jun 2004 21:43:21 +0000 (21:43 +0000)]
c-pragma.h (c_lex_string_translate): Change type to int.

gcc/ChangeLog:
* c-pragma.h (c_lex_string_translate): Change type to int.
* c-parse.in: Change all assignments of c_lex_string_translate
to true and false to 1 and 0.
* c-lex.c (c_lex_string_translate): Likewise.
(lex_string): Convert string without translation in the -1
case.
gcc/cp/ChangeLog:
* parser.c: Change all assignments of c_lex_string_translate
to true and false to 1 and 0.
(cp_lexer_read_token): Convert type of the translated string.
(cp_parser_skip_to_closing_parentheses): Preserve original
value of c_lex_string_translate, and set it to -1 while
running.
(cp_parser_cache_group): Likewise.
(cp_parser_cache_group_1): Renamed.
(cp_parser_asm_operand_list): Remove redundant setting of
c_lex_string_translate.
(cp_parser_primary_expression) [CPP_STRING, CPP_WSTRING]:
Handle chained strings.

From-SVN: r83201

20 years ago* convert.h: Add include guards
Mark G. Adams [Tue, 15 Jun 2004 21:04:15 +0000 (21:04 +0000)]
* convert.h: Add include guards

From-SVN: r83200

20 years agore PR c++/14639 ([non-unit-at-a-time] Incorrect emission of unused compiler-generated...
Andrew Pinski [Tue, 15 Jun 2004 20:52:00 +0000 (20:52 +0000)]
re PR c++/14639 ([non-unit-at-a-time] Incorrect emission of unused compiler-generated destructor)

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

        PR c++/14639
        Revert:
        2004-06-02  Andrew Pinski  <pinskia@physics.uc.edu>

                * cp-tree.h: Fix typo.

                * cp-tree.h: Include cgraph.h
                (DECL_NEEDED_P): Use cgraph_*node on the decl instead of
                TREE_SYMBOL_REFERENCED on the DECL_ASSEMBLER_NAME of the decl.

From-SVN: r83199

20 years agore PR tree-optimization/14107 (Return warnings don't work without optimizations enabled)
Jason Merrill [Tue, 15 Jun 2004 20:38:40 +0000 (16:38 -0400)]
re PR tree-optimization/14107 (Return warnings don't work without optimizations enabled)

        PR tree-optimization/14107
        * decl.c (finish_function): Warn about no return in all functions.

From-SVN: r83198

20 years agotree-flow-inline.h: Document all functions.
Daniel Berlin [Tue, 15 Jun 2004 18:51:43 +0000 (18:51 +0000)]
tree-flow-inline.h: Document all functions.

2004-06-15  Daniel Berlin  <dberlin@dberlin.org>

* tree-flow-inline.h: Document all functions.

From-SVN: r83197

20 years agotree-flow-inline.h (stmt_ann): Remove use of is_essa_node.
Daniel Berlin [Tue, 15 Jun 2004 18:37:34 +0000 (18:37 +0000)]
tree-flow-inline.h (stmt_ann): Remove use of is_essa_node.

2004-06-15  Daniel Berlin  <dberlin@dberlin.org>

* tree-flow-inline.h (stmt_ann): Remove use of is_essa_node.
* tree-dfa.c (create_stmt_ann): Ditto.
* tree-pretty-print.c (dump_generic_node): Remove E* node handling.
* tree-inline.c (estimate_num_insns_1): Ditto.
* tree.c (tree_size): Ditto.
(make_node_stat): Ditto.
(tree_node_structure): Ditto.
(ephi_node_elt_check_failed): Remove.
(is_essa_node): Ditto.
* tree.def (EPHI_NODE): Ditto.
(EEXIT_NODE): Ditto.
(EUSE_NODE): Ditto.
(EKILL_NODE): Ditto.
* tree.h (EREF_NODE_CHECK): Remove.
(EPHI_NODE_ELT_CHECK): Ditto.
(struct tree_eref_common): Ditto.
(struct tree_euse_node): Ditto.
(struct ephi_arg_d): Ditto.
(struct tree_ephi_node): Ditto.
(ephi_node_elt_check_failed): Remove prototype.
(is_essa_node): Ditto.
(enum tree_node_structure_enum): Remove TS_E*_NODE.
(union tree_node): Remove E*_NODE uses.

From-SVN: r83196

20 years agoalias.c (record_set, [...]): Use REG_P.
Jerry Quinn [Tue, 15 Jun 2004 18:02:40 +0000 (18:02 +0000)]
alias.c (record_set, [...]): Use REG_P.

2004-06-15  Jerry Quinn  <jlquinn@optonline.net>

* alias.c (record_set, record_base_value, canon_rtx, get_addr,
nonlocal_mentioned_p_1, init_alias_analysis): Use REG_P.
* bt-load.c (find_btr_reference, insn_sets_btr_p, note_btr_set):
Likewise.
* builtins.c (expand_builtin_setjmp, expand_builtin_apply,
expand_builtin_mathfn, expand_builtin_strlen, expand_builtin_memcmp,
expand_builtin_strcmp, expand_builtin_strncmp,
expand_builtin_frame_address): Likewise.
* caller-save.c (mark_set_regs, add_stored_regs, mark_referenced_regs,
insert_one_insn): Likewise.
* calls.c (prepare_call_address, precompute_register_parameters,
precompute_arguments, expand_call, emit_library_call_value_1): Likewise.
* cfganal.c (flow_active_insn_p): Likewise.
* combine.c (set_nonzero_bits_and_sign_copies, can_combine_p,
combinable_i3pat, try_combine, find_split_point, COMBINE_RTX_EQUAL_P,
subst, combine_simplify_rtx, simplify_if_then_else, simplify_set,
make_extraction, recog_for_combine, gen_lowpart_for_combine,
simplify_comparison, record_dead_and_set_regs_1,
record_dead_and_set_regs, record_promoted_value,
check_promoted_subreg, get_last_value_validate, get_last_value,
reg_dead_at_p_1, reg_bitfield_target_p, distribute_notes,
unmentioned_reg_p_1): Likewise.
* conflict.c (mark_reg): Likewise.
* cse.c (HASH, COST, COST_IN, approx_reg_cost_1, notreg_cost,
mention_regs, insert_regs, lookup, lookup_for_remove, insert,
merge_equiv_classes, flush_hash_table, invalidate,
remove_invalid_refs, remove_invalid_subreg_refs, rehash_using_reg,
invalidate_for_call, use_related_value, canon_hash, exp_equiv_p,
cse_rtx_varies_p, canon_reg, find_best_addr, fold_rtx, equiv_constant,
record_jump_cond, cse_insn, addr_affects_sp_p,
invalidate_from_clobbers, cse_process_notes, cse_around_loop,
cse_set_around_loop, count_reg_usage, set_live_p, cse_change_cc_mode,
cse_cc_succs, cse_condition_code_reg): Likewise.
* cselib.c (cselib_reg_set_mode, rtx_equal_for_cselib_p,
cselib_lookup, cselib_invalidate_regno, cselib_invalidate_rtx,
cselib_record_set, cselib_record_sets): Likewise.
* dbxout.c (dbxout_symbol_location, dbxout_parms, dbxout_reg_parms,
dbxout_block): Likewise.
* df.c (df_ref_record, df_def_record_1, df_uses_record): Likewise.
* dojump.c (do_jump): Likewise.
* dwarf2out.c (dwarf2out_frame_debug_expr, is_pseudo_reg,
is_based_loc, rtl_for_decl_location): Likewise.
* emit-rtl.c (set_reg_attrs_for_parm, set_decl_rtl,
set_decl_incoming_rtl, mark_user_reg): Likewise.
* explow.c (copy_all_regs, copy_all_regs, memory_address, force_reg,
copy_to_suggested_reg, allocate_dynamic_stack_space,
probe_stack_range, hard_function_value): Likewise.
* expmed.c (store_bit_field, store_fixed_bit_field,
store_split_bit_field, extract_bit_field, extract_fixed_bit_field,
extract_split_bit_field, expand_divmod, emit_store_flag_force):
Likewise.
* expr.c (convert_move, convert_modes,
block_move_libcall_safe_for_call_parm, emit_group_load, use_reg,
use_group_regs, emit_move_insn, emit_move_insn_1,
compress_float_constant, push_block, emit_single_push_insn,
emit_push_insn, get_subtarget, expand_assignment, store_expr,
store_constructor, store_field, force_operand, safe_from_p,
expand_expr_real_1, expand_increment, do_store_flag, do_tablejump):
Likewise.
* final.c (profile_function, final_scan_insn, alter_subreg,
get_mem_expr_from_op, output_asm_operand_names, output_operand,
only_leaf_regs_used, leaf_renumber_regs_insn): Likewise.
* flow.c (verify_wide_reg_1, mark_regs_live_at_end,
find_regno_partial, propagate_one_insn, init_propagate_block_info,
insn_dead_p, libcall_dead_p, mark_set_1, not_reg_cond,
attempt_auto_inc, find_auto_inc, mark_used_regs,
count_or_remove_death_notes_bb): Likewise.
* function.c (find_temp_slot_from_address, update_temp_slot_address,
preserve_temp_slots, put_var_into_stack, fixup_var_refs_insn,
fixup_var_refs_1, fixup_stack_1, optimize_bit_field, flush_addressof,
put_addressof_into_stack, purge_addressof_1, insns_for_mem_walk,
purge_single_hard_subreg_set, instantiate_decl,
instantiate_virtual_regs_1, aggregate_value_p, assign_parms,
promoted_input_arg, setjmp_vars_warning, setjmp_args_warning,
setjmp_protect, setjmp_protect_args, fix_lexical_addr,
expand_function_start, diddle_return_value, clobber_return_register,
expand_function_end, keep_stack_depressed, handle_epilogue_set,
update_epilogue_consts): Likewise.
* genemit.c (gen_exp, gen_insn): Likewise.
* genrecog.c (make_insn_sequence): Likewise.
* global.c (global_conflicts, expand_preferences, mark_reg_store,
mark_reg_conflicts, set_preference, reg_becomes_live,
build_insn_chain, mark_reg_change): Likewise.
* haifa_sched.c (CONST_BASED_ADDRESS_P, find_set_reg_weight):
Likewise.
* ifcvt.c (noce_try_abs, noce_get_condition, noce_process_if_block):
Likewise.
* integrate.c (copy_rtx_and_substitute, try_constants,
subst_constants, mark_stores, allocate_initial_values): Likewise.
* jump.c (reversed_comparison_code_parts, delete_prior_computation,
delete_computation, rtx_renumbered_equal_p, true_regnum,
reg_or_subregno): Likewise.
* lcm.c (reg_dies, reg_becomes_live): Likewise.
* local-alloc.c (validate_equiv_mem_from_store, validate_equiv_mem,
update_equiv_regs, no_equiv, block_alloc, combine_regs, reg_is_set,
wipe_dead_reg, no_conflict_p): Likewise.
* loop-iv.c (simple_reg_p, simple_set_p, kill_sets,
iv_get_reaching_def, iv_analyze_biv, altered_reg_used, mark_altered,
simple_rhs_p, simplify_using_assignment, implies_p): Likewise.
* loop.c (scan_loop, combine_movables, rtx_equal_for_loop_p,
move_movables, note_set_pseudo_multiple_uses, consec_sets_invariant_p,
find_single_use_in_loop, count_one_set, loop_bivs_init_find,
loop_givs_rescan, check_insn_for_bivs, check_insn_for_givs,
valid_initial_value_p, simplify_giv_expr, consec_sets_giv,
loop_regs_update, check_dbra_loop, maybe_eliminate_biv,
maybe_eliminate_biv_1, record_initial, update_reg_last_use,
canonicalize_condition, loop_regs_scan, load_mems, try_copy_prop,
try_swap_copy_prop): Likewise.
* optabs.c (expand_binop, expand_vector_binop, expand_vector_unop,
expand_abs, emit_no_conflict_block, emit_libcall_block, expand_float):
Likewise.
* postreload.c (reload_cse_simplify, reload_cse_simplify_set,
reload_cse_simplify_operands, reload_combine,
reload_combine_note_store, reload_combine_note_use,
reload_cse_move2add, move2add_note_store): Likewise.
* print-rtl.c (print_rtx): Likewise.
* ra-build.c (copy_insn_p, remember_move, init_one_web_common,
contains_pseudo, handle_asm_insn): Likewise.
* ra-debug.c (ra_print_rtx_object, dump_constraints,
dump_static_insn_cost): Likewise.
* ra-rewrite.c (slots_overlap_p, emit_colors,
remove_suspicious_death_notes): Likewise.
* recog.c (validate_replace_rtx_1, find_single_use_1, find_single_use,
register_operand, scratch_operand, nonmemory_operand,
constrain_operands): Likewise.
* reg-stack (check_asm_stack_operands, remove_regno_note,
emit_swap_insn, swap_rtx_condition, subst_stack_regs_pat,
subst_asm_stack_regs): Likewise.
* regclass.c (scan_one_insn, record_reg_classes, copy_cost,
record_address_regs, reg_scan_mark_refs): Likewise.
* regmove.c (discover_flags_reg, replacement_quality,
copy_src_to_dest, reg_is_remote_constant_p, regmove_optimize,
fixup_match_1): Likewise.
* regrename.c (note_sets, clear_dead_regs, build_def_use, kill_value,
kill_set_value, copyprop_hardreg_forward_1): Likewise.
* reload.c (MATCHES, push_secondary_reload, find_reusable_reload,
reload_inner_reg_of_subreg, can_reload_into, push_reload,
combine_reloads, find_dummy_reload, hard_reg_set_here_p,
operands_match_p, decompose, find_reloads, find_reloads_toplev,
find_reloads_address, subst_indexed_address, find_reloads_address_1,
find_reloads_subreg_address, find_replacement,
refers_to_regno_for_reload_p, reg_overlap_mentioned_for_reload_p,
refers_to_mem_for_reload_p, find_equiv_reg, regno_clobbered_p): Likewise.
* reload1.c (replace_pseudos_in, reload, calculate_needs_all_insns,
find_reg, delete_dead_insn, alter_reg, eliminate_regs,
elimination_effects, eliminate_regs_in_insn, scan_paradoxical_subregs,
forget_old_reloads_1, reload_reg_free_for_value_p, choose_reload_regs,
emit_input_reload_insns, emit_output_reload_insns, do_input_reload,
do_output_reload, emit_reload_insns, gen_reload,
delete_address_reloads_1, inc_for_reload): Likewise.
* reorg.c (update_reg_dead_notes, fix_reg_dead_note,
update_reg_unused_notes, fill_slots_from_thread): Likewise.
* resource.c (update_live_status, mark_referenced_resources,
mark_set_resources, mark_target_live_regs): Likewise.
* rtlanal.c (nonzero_address_p, get_jump_table_offset,
global_reg_mentioned_p_1, reg_mentioned_p, reg_referenced_p,
reg_set_p, set_noop_p, find_last_value, refers_to_regno_p,
note_stores, dead_or_set_p, dead_or_set_regno_p, find_regno_note,
find_reg_fusage, find_regno_fusage, replace_regs, regno_use_in,
parms_set, find_first_parameter_load, keep_with_call_p,
hoist_test_store, hoist_update_store, address_cost, nonzero_bits1,
num_sign_bit_copies1): Likewise.
* rtlhooks.c (gen_lowpart_general): Likewise.
* sched-deps.c (deps_may_trap_p, sched_analyze_1, sched_analyze_insn,
sched_analyze): Likewise.
* sched-rgn.c (check_live_1, update_live_1, sets_likely_spilled_1):
Likewise.
* sdbout.c (sdbout_symbol, sdbout_parms, sdbout_reg_parms): Likewise.
* simplify-rtx.c (simplify_replace_rtx, simplify_unary_operation,
simplify_binary_operation, simplify_const_relational_operation,
simplify_subreg): Likewise.
* stmt.c (decl_conflicts_with_clobbers_p, expand_asm_operands,
expand_end_stmt_expr, expand_return, expand_decl,
expand_anon_union_decl): Likewise.
* unroll.c (precondition_loop_p, calculate_giv_inc, copy_loop_body,
find_splittable_regs, find_splittable_givs, find_common_reg_term,
loop_iterations): Likewise.
* var-tracking.c (variable_union, variable_part_different_p,
variable_different_p, count_uses, add_uses, add_stores,
compute_bb_dataflow, set_variable_part, delete_variable_part,
emit_notes_in_bb, vt_get_decl_and_offset, vt_add_function_parameters):
Likewise.
* varasm.c (assemble_variable): Likewise.

From-SVN: r83195

20 years agolinux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove definition.
Chris Demetriou [Tue, 15 Jun 2004 17:12:15 +0000 (17:12 +0000)]
linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove definition.

2004-06-15  Chris Demetriou  <cgd@broadcom.com>

        * config/mips/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
        definition.
        * config/mips/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
        #undef and #if 0'd definition.

From-SVN: r83193

20 years ago* combine.c (distribute_notes): Comment typo fix.
J"orn Rennecke [Tue, 15 Jun 2004 15:55:27 +0000 (15:55 +0000)]
* combine.c (distribute_notes): Comment typo fix.

From-SVN: r83191

20 years ago* gcc.dg/arm-mmx-1.c: Use asm to clobber registers.
Paul Brook [Tue, 15 Jun 2004 15:25:52 +0000 (15:25 +0000)]
* gcc.dg/arm-mmx-1.c: Use asm to clobber registers.

From-SVN: r83189

20 years agoexpmed.c (synth_mult): Mask bits of the multiplier to the machine mode of the multipl...
Roger Sayle [Tue, 15 Jun 2004 15:06:14 +0000 (15:06 +0000)]
expmed.c (synth_mult): Mask bits of the multiplier to the machine mode of the multiplication.

* expmed.c (synth_mult): Mask bits of the multiplier to the
machine mode of the multiplication.  Don't consider shifts
by more than (or equal to) the width of the operation's mode.

From-SVN: r83187

20 years agogcc_update (libmudflap/configure): Depend on libmudflap/configure.ac instead of libmu...
Paolo Bonzini [Tue, 15 Jun 2004 14:59:58 +0000 (14:59 +0000)]
gcc_update (libmudflap/configure): Depend on libmudflap/configure.ac instead of libmudflap/configure.in

2004-06-14  Paolo Bonzini  <bonzini@gnu.org>

* gcc_update (libmudflap/configure): Depend on
libmudflap/configure.ac instead of libmudflap/configure.in

From-SVN: r83186

20 years agoinstall.texi: Yet another update for autoconf and automake versions.
Paolo Bonzini [Tue, 15 Jun 2004 14:53:26 +0000 (14:53 +0000)]
install.texi: Yet another update for autoconf and automake versions.

2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* doc/install.texi: Yet another update for autoconf
and automake versions.

From-SVN: r83185

20 years agoconfigure.ac: New name of configure.in.
Paolo Bonzini [Tue, 15 Jun 2004 14:47:55 +0000 (14:47 +0000)]
configure.ac: New name of configure.in.

libmudflap/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac: New name of configure.in.  Update
AC_INIT, AC_CONFIG_SRCDIR, AC_CONFIG_HEADERS, AC_CONFIG_FILES,
AC_OUTPUT, AM_INIT_AUTOMAKE to the preferred style for
Autoconf 2.5x and Automake 1.7 or later.
* configure.in: Remove.
* configure: Regenerate.

* Makefile.am: Remove useless multilib rules.
* Makefile.in: Regenerate.

libstdc++-v3/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

* acinclude.m4: Remove useless multilib configury.
* Makefile.am: Remove useless multilib rules.
* aclocal.m4: Regenerate.
* Makefile.in: Regenerate.
* configure.ac: Use AM_ENABLE_MULTILIB.
* configure: Regenerate.

zlib/ChangeLog.gcj:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.am: Remove useless multilib rules.
* configure.ac: Rewrite multilib support to use
features of recent automakes.
* aclocal.m4: Regenerate with Automake 1.8.5.
* Makefile.in: Regenerate with Automake 1.8.5.
* configure: Regenerate.

libffi/ChangeLog:
2005-06-15  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.am: Remove useless multilib rules.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate with automake 1.8.5.
* configure.ac: Remove useless multilib configury.
* configure: Regenerate.

From-SVN: r83184

20 years agohashtable.h: Trivial formatting fixes.
Paolo Carlini [Tue, 15 Jun 2004 13:43:56 +0000 (13:43 +0000)]
hashtable.h: Trivial formatting fixes.

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

* include/ext/hashtable.h: Trivial formatting fixes.
* include/ext/rb_tree: Likewise.

From-SVN: r83183

20 years agonatSystem.cc (getenv0): Don't assume environment variable is Latin 1 coded.
Andrew Haley [Tue, 15 Jun 2004 13:43:33 +0000 (13:43 +0000)]
natSystem.cc (getenv0): Don't assume environment variable is Latin 1 coded.

2004-06-15  Andrew Haley  <aph@redhat.com>

        * java/lang/natSystem.cc (getenv0): Don't assume environment
        variable is Latin 1 coded.

From-SVN: r83182

20 years agofunction.h (struct function): Remove cannot_inline field.
Paolo Bonzini [Tue, 15 Jun 2004 12:46:07 +0000 (12:46 +0000)]
function.h (struct function): Remove cannot_inline field.

gcc/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* function.h (struct function): Remove cannot_inline field.
(current_function_cannot_inline): Remove.
* passes.c (rest_of_compilation): Reset DECL_DEFER_OUTPUT.
Simplify conditionals to ignore warn_return_type.
* tree-optimize.c (tree_rest_of_compilation): Do not reset
DECL_DEFER_OUTPUT.
* objc/objc-act.c (build_module_descriptor, finish_method_def):
Do not set current_function_cannot_inline.

gcc/java/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* class.c (emit_register_classes): Make the function uninlinable,
do not set current_function_cannot_inline.
* resource.c (write_resource_constructor): Do not reset
flag_inline_functions around rest_of_compilation.

gcc/cp/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* cp-tree.h (struct language_function): Remove cannot_inline.
* decl.c (save_function_data): cannot_inline is no more.
(cxx_push_function_context): Likewise.
* decl2.c (start_objects, start_static_storage_duration_function):
Reset DECL_INLINE, set DECL_UNINLINABLE.

From-SVN: r83181

20 years agocfglayout.c (fixup_reorder_chain): Handle case where the destination of E_TAKEN is...
J"orn Rennecke [Tue, 15 Jun 2004 11:58:40 +0000 (11:58 +0000)]
cfglayout.c (fixup_reorder_chain): Handle case where the destination of E_TAKEN is EXIT_BLOCK_PTR.

* cfglayout.c (fixup_reorder_chain): Handle case where the
destination of E_TAKEN is EXIT_BLOCK_PTR.

From-SVN: r83179

20 years ago* tree-ssa-copy.c (cprop_into_successor_phis): Fix typo.
Diego Novillo [Tue, 15 Jun 2004 11:49:50 +0000 (11:49 +0000)]
* tree-ssa-copy.c (cprop_into_successor_phis): Fix typo.

From-SVN: r83177

20 years ago* longlong.h: Fix macros for m32r add_ssaaaa and sub_ddmmss.
Kazuhiro Inaoka [Tue, 15 Jun 2004 10:40:44 +0000 (10:40 +0000)]
* longlong.h: Fix macros for m32r add_ssaaaa and sub_ddmmss.

From-SVN: r83174

20 years agofold-const.c (operand_equal_p): Update comment.
Paolo Bonzini [Tue, 15 Jun 2004 10:27:30 +0000 (10:27 +0000)]
fold-const.c (operand_equal_p): Update comment.

2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* fold-const.c (operand_equal_p): Update comment.

From-SVN: r83173

20 years agom32r.h (RETURN_ADDR_RTX): Define.
Kazuhiro Inaoka [Tue, 15 Jun 2004 10:01:34 +0000 (10:01 +0000)]
m32r.h (RETURN_ADDR_RTX): Define.

* config/m32r/m32r.h (RETURN_ADDR_RTX): Define.
  (INCOMING_RETURN_ADDR_RTX): Define.
* config/m32r/m32r-protos.h (m32r_return_addr): Added.
* config/m32r/m32r.c (m32r_exppand_prologue): Changed for
  __builtin_return_address(0).
  (m32r_return_addr): Added for __builtin_return_address(0).
  (m32r_reload_lr): Ditto.

From-SVN: r83171

20 years agoinstall.texi (Prerequisites): Update libbanshee, fastjar, libcpp, libjava/libltdl...
Paolo Bonzini [Tue, 15 Jun 2004 07:50:45 +0000 (07:50 +0000)]
install.texi (Prerequisites): Update libbanshee, fastjar, libcpp, libjava/libltdl entries to automake 1.8.5.

2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* doc/install.texi (Prerequisites): Update libbanshee,
fastjar, libcpp, libjava/libltdl entries to
automake 1.8.5.

From-SVN: r83170

20 years agoAdded .cvsignore entry for autom4te.cache to boehm-gc, libffi and
Paolo Bonzini [Tue, 15 Jun 2004 07:42:08 +0000 (07:42 +0000)]
Added .cvsignore entry for autom4te.cache to boehm-gc, libffi and
libmudflap.

From-SVN: r83169

20 years agoacinclude.m4: Quote first argument of AC_DEFUNs.
Paolo Bonzini [Tue, 15 Jun 2004 07:36:33 +0000 (07:36 +0000)]
acinclude.m4: Quote first argument of AC_DEFUNs.

2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* acinclude.m4: Quote first argument of AC_DEFUNs.
* aclocal.m4: Regenerate with automake 1.8.
* Makefile.in: Likewise.
* configure: Regenerate.
* .cvsignore: New file.

From-SVN: r83168

20 years agoMakefile.in: Regenerate with automake 1.8.5.
Paolo Bonzini [Tue, 15 Jun 2004 07:32:58 +0000 (07:32 +0000)]
Makefile.in: Regenerate with automake 1.8.5.

libcpp/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.in: Regenerate with automake 1.8.5.
* aclocal.m4: Likewise.
* configure: Regenerate.

libjava/libltdl/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.in: Regenerate with Automake 1.8.5.
* aclocal.m4: Likewise.
* configure: Regenerate.

libbanshee/ChangeLog:
2004-06-15  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.in: Regenerate with Automake 1.8.5.
* engine/Makefile.in: Likewise.
* points-to/Makefile.in: Likewise.
* libcompat/Makefile.in: Likewise.
* aclocal.m4: Likewise.
* configure: Regenerate.
* .cvsignore: New file.

From-SVN: r83167

20 years agofunction.c (fixup_var_refs): Also adjust the start of sequence after fixing up the...
Eric Botcazou [Tue, 15 Jun 2004 06:16:48 +0000 (08:16 +0200)]
function.c (fixup_var_refs): Also adjust the start of sequence after fixing up the insns.

* function.c (fixup_var_refs): Also adjust the start of sequence
after fixing up the insns.

Co-Authored-By: Olivier Hainque <hainque@act-europe.fr>
From-SVN: r83166

20 years ago* gccbug.in: Update optimization -> tree-optimization/rtl-optimization.
Giovanni Bajo [Tue, 15 Jun 2004 02:41:21 +0000 (02:41 +0000)]
* gccbug.in: Update optimization -> tree-optimization/rtl-optimization.

From-SVN: r83160

20 years agore PR c++/15967 (ICE on ambiguous operator new in class hierarchy)
Giovanni Bajo [Tue, 15 Jun 2004 01:46:21 +0000 (01:46 +0000)]
re PR c++/15967 (ICE on ambiguous operator new in class hierarchy)

PR c++/15967
* search.c (lookup_field): Propagate the ambiguity list.
(lookup_fnfields): Likewise.

PR c++/15967
* g++.dg/lookup/crash3.C: New test.

From-SVN: r83158

20 years agore PR c++/15947 (Puzzling error message for wrong destructor declaration in template...
Giovanni Bajo [Tue, 15 Jun 2004 00:24:47 +0000 (00:24 +0000)]
re PR c++/15947 (Puzzling error message for wrong destructor declaration in template class)

PR c++/15947
* parser.c (cp_parser_template_name): Ctors/dtors never need a
template keyword to disambiguate.

PR c++/15947
* g++.dg/parse/dtor4.C: New test.

From-SVN: r83154

20 years agoDaily bump.
GCC Administrator [Tue, 15 Jun 2004 00:16:23 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r83152.2

20 years agoDaily bump.
GCC Administrator [Tue, 15 Jun 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r83151.2

20 years agoinstall.texi (Prerequisites): Update libstdc++ entry to automake 1.8.5.
Benjamin Kosnik [Mon, 14 Jun 2004 22:52:35 +0000 (22:52 +0000)]
install.texi (Prerequisites): Update libstdc++ entry to automake 1.8.5.

2004-06-14  Benjamin Kosnik  <bkoz@redhat.com>

* doc/install.texi (Prerequisites): Update libstdc++ entry to
automake 1.8.5.

From-SVN: r83147

20 years agos390.h (TARGET_SWITCHES): Change -mtpf (-mno-tpf) to -mtpf-trace (-mno-tpf-trace).
Eric Christopher [Mon, 14 Jun 2004 21:36:40 +0000 (21:36 +0000)]
s390.h (TARGET_SWITCHES): Change -mtpf (-mno-tpf) to -mtpf-trace (-mno-tpf-trace).

2004-06-14  Eric Christopher  <echristo@redhat.com>

* config/s390/s390.h (TARGET_SWITCHES): Change -mtpf (-mno-tpf)
to -mtpf-trace (-mno-tpf-trace).
* doc/invoke.texi (S/390 and zSeries Options): Add tpf option
documentation.

From-SVN: r83135

20 years ago* real.c: Fix bit count in head comment.
Eric Botcazou [Mon, 14 Jun 2004 21:07:07 +0000 (23:07 +0200)]
* real.c: Fix bit count in head comment.

From-SVN: r83133

20 years agotree-ssa.c (kill_redundant_phi_nodes): More correctly handle PHIs where the destinati...
Jeff Law [Mon, 14 Jun 2004 20:41:41 +0000 (14:41 -0600)]
tree-ssa.c (kill_redundant_phi_nodes): More correctly handle PHIs where the destination or an argument is marked with...

        * tree-ssa.c (kill_redundant_phi_nodes): More correctly handle
        PHIs where the destination or an argument is marked with
        SSA_NAME_OCCURS_IN_ABNORMAL_PHI.

* gcc.c-torture/20040614-1.c: New test.

From-SVN: r83132

20 years agohash_map: Trivial formatting fixes.
Paolo Carlini [Mon, 14 Jun 2004 19:40:45 +0000 (19:40 +0000)]
hash_map: Trivial formatting fixes.

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

* include/ext/hash_map: Trivial formatting fixes.
* include/ext/hash_set: Likewise.
* include/ext/memory: Likewise.
* include/ext/numeric: Likewise.

From-SVN: r83131

20 years agoFix ChangeLog, fix parentheses from previous patch to trans-intrinsic.c
Tobias Schlüter [Mon, 14 Jun 2004 19:25:33 +0000 (21:25 +0200)]
Fix ChangeLog, fix parentheses from previous patch to trans-intrinsic.c

From-SVN: r83128

20 years agore PR fortran/15211 (ICE with LEN intrinsic)
Tobias Schlüter [Mon, 14 Jun 2004 18:50:44 +0000 (20:50 +0200)]
re PR fortran/15211 (ICE with LEN intrinsic)

fortran/
PR fortran/15211
* trans-intrinsic.c (gfc_conv_intrinsic_len): Deal with arrays
of strings.

testsuite/
PR fortran/15211
* gfortran.fortran-torture/execute/intrinsic_len.f90: Also test
LEN of a character array.

From-SVN: r83126

20 years agoconfigure.in: Support --enable-version-specific-runtime-libs.
Andreas Jaeger [Mon, 14 Jun 2004 18:29:01 +0000 (20:29 +0200)]
configure.in: Support --enable-version-specific-runtime-libs.

* configure.in: Support --enable-version-specific-runtime-libs.
* configure: Regenerated.

From-SVN: r83125

20 years agoMakefile.in: Regenerate with automake 1.8.5.
Benjamin Kosnik [Mon, 14 Jun 2004 17:49:30 +0000 (17:49 +0000)]
Makefile.in: Regenerate with automake 1.8.5.

2004-06-14  Benjamin Kosnik  <bkoz@redhat.com>

* Makefile.in: Regenerate with automake 1.8.5.
* aclocal.m4: Same.
* include/Makefile.in: Same.
* libmath/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* po/Makefile.in: Same.
* src/Makefile.in: Same.
* testsuite/Makefile.in: Same.

From-SVN: r83123

20 years agore PR middle-end/15945 (Incorrect floating point optimization)
Jakub Jelinek [Mon, 14 Jun 2004 17:45:08 +0000 (19:45 +0200)]
re PR middle-end/15945 (Incorrect floating point optimization)

PR middle-end/15945
* simplify-rtx.c (simplify_binary_operation): Don't optimize out
Inf + -Inf, Inf - Inf, Inf / Inf and 0 * Inf if flag_trapping_math.

From-SVN: r83121

20 years ago* opts.sh (var_args): Fix regexp.
Zdenek Dvorak [Mon, 14 Jun 2004 17:36:29 +0000 (19:36 +0200)]
* opts.sh (var_args): Fix regexp.

From-SVN: r83120

20 years agore PR target/15178 (Solaris 9/x86 fails linking after stage 3)
Jakub Jelinek [Mon, 14 Jun 2004 17:31:27 +0000 (19:31 +0200)]
re PR target/15178 (Solaris 9/x86 fails linking after stage 3)

PR target/15178
* config/i386/sol2.h (ASM_OUTPUT_DEF_FROM_DECLS): Define.

From-SVN: r83117

20 years agore PR libfortran/15292 (libgfortran depends on c99 functionality round and roundf)
Bud Davis [Mon, 14 Jun 2004 17:27:20 +0000 (17:27 +0000)]
re PR libfortran/15292 (libgfortran depends on c99 functionality round and roundf)

2004-06-14  Bud Davis  <bdavis9659@comcast.net>

        PR gfortran/15292
        * intrinsics/c99_functions.c: Use fpclassify if it exists.

From-SVN: r83116

20 years agore PR fortran/15510 (Should not warn about unused variables from used modules)
Tobias Schlüter [Mon, 14 Jun 2004 16:04:41 +0000 (18:04 +0200)]
re PR fortran/15510 (Should not warn about unused variables from used modules)

PR fortran/15510
* trans-deecl.c (generate_local_decl): Do not issue warning for
unused variables if they're use associated.

Co-Authored-By: Andrew Vaught <andyv@firstinter.net>
From-SVN: r83113

20 years agore PR c++/15096 (parse error with templates and pointer to const member)
Mark Mitchell [Mon, 14 Jun 2004 15:58:54 +0000 (15:58 +0000)]
re PR c++/15096 (parse error with templates and pointer to const member)

PR c++/15096
* decl.c (grokdeclarator): Ignore pointer-to-members when
computing template depth.

PR c++/14930
* name-lookup.c (pushtag): Do not try to put class declarations in
explicit specialization scopes.

PR c++/15096
* g++.dg/template/ptrmem10.C: New test.

PR c++/14930
* g++.dg/template/friend30.C: New test.

From-SVN: r83112

20 years agore PR fortran/14928 (minloc intrinsic does not understand mask)
Tobias Schlüter [Mon, 14 Jun 2004 15:56:50 +0000 (17:56 +0200)]
re PR fortran/14928 (minloc intrinsic does not understand mask)

fortran/
2004-06-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
        Andrew Vaught <andyv@firstinter.net>

PR fortran/14928
* gfortran.h (gfc_check_f): Add new field f3ml.
* check.c (gfc_check_minloc_maxloc): Take argument list instead
of individual arguments, reorder if necessary.
* intrinsic.h (gfc_check_minloc_maxloc): ... adapt prototype.
* intrinsic.c (add_sym_3ml): New function.
(add_functions): Change to add_sym_3ml for MINLOC, MAXLOC.
(check_specific): Catch special case MINLOC, MAXLOC.

testsuite/
PR fortran/14928
* gfortran.fortran-torture/compile/mloc.f90: New test.

Co-Authored-By: Andrew Vaught <andyv@firstinter.net>
From-SVN: r83111

20 years agoCalendar.java: Change ResourceBundle.getBundle() calls to pass ClassLoader argument.
Bryce McKinlay [Mon, 14 Jun 2004 15:51:37 +0000 (15:51 +0000)]
Calendar.java: Change ResourceBundle.getBundle() calls to pass ClassLoader argument.

* java/util/Calendar.java: Change ResourceBundle.getBundle() calls
to pass ClassLoader argument.
* java/util/GregorianCalendar.java: Likewise.
* java/util/Currency.java: Likewise.
* java/text/BreakIterator.java: Likewise.
* java/text/Collator.java: Likewise.
* java/text/DateFormat.java: Likewise.
* java/text/DateFormatSymbols.java: Likewise.
* java/text/DecimalFormatSymbols.java: Likewise.
* java/text/NumberFormat.java: Likewise.
* java/awt/Window.java: Likewise.

From-SVN: r83109

20 years ago* dwarf2out.c (output_call_frame_info): Support dwarf3 cie entries.
Paul Brook [Mon, 14 Jun 2004 14:56:35 +0000 (14:56 +0000)]
* dwarf2out.c (output_call_frame_info): Support dwarf3 cie entries.

From-SVN: r83108

20 years agoSystem.java: (getenv0): New method.
Andrew Haley [Mon, 14 Jun 2004 14:34:21 +0000 (14:34 +0000)]
System.java: (getenv0): New method.

2004-06-14  Andrew Haley  <aph@redhat.com>

        * java/lang/System.java: (getenv0): New method.
        (getenv): Add security check.  Do the right thing.
        * java/lang/natSystem.cc (getenv0): New method.

From-SVN: r83107

20 years agoMakefile.in (FLAGS_H): New.
Zdenek Dvorak [Mon, 14 Jun 2004 14:18:01 +0000 (16:18 +0200)]
Makefile.in (FLAGS_H): New.

* Makefile.in (FLAGS_H): New.
(flags.h): Replace by FLAGS_H.
* c.opt: Document Var, VarExists, Init and Report attributes.
* common.opt: Fill the values of the attributes.
* diagnostic.c (flag_fatal_errors): Do not define.
* except.c (flag_non_call_exceptions): Do not define.
* flags.h: Include options.h.  Remove declarations conflicting with
the automatically defined ones.
* opts.c: Remove automatically defined variables.
(handle_option): Perform default initialization.
(common_handle_option): Do not handle options covered by the
default initialization.
* opts.h (struct cl_option): Add flag_var, has_set_value and set_value
fields.
(CL_REPORT): New.
* opts.sh: Generate variable declarations, handle CL_REPORT.
* toplev.c: Remove automatically defined variables.
(f_options): Removed.
(print_switch_values): Use cl_options instead of f_options.
* toplev.h (version_flag): Declaration removed.

From-SVN: r83105

20 years agoada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation.
Richard Kenner [Mon, 14 Jun 2004 14:09:38 +0000 (14:09 +0000)]
ada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation.

* ada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation.
* ada-tree.h (EXIT_STMT_LABEL): Renamed from EXIT_STMT_LOOP.
* decl.c (gnat_to_gnu_entity): Also set force_global for imported
subprograms.
* trans.c (gnu_loop_label_stack): Renamed from gnu_loop_stmt_stack;
all callers changed.
(gnat_to_gnu, case N_Loop_Statement, case N_Exit_Statement): Change
the way that EXIT_STMT finds the loop label.
(gnat_gimplify_stmt, case LOOP_STMT, EXIT_STMT): Likewise.
(gnat_gimplify_stmt, case DECL_STMT): Handle variable-sized decls here.
(add_stmt): Use annotate_with_locus insted of setting directly.
(pos_to_construct): Set TREE_PURPOSE of each entry to index.
(gnat_stabilize_reference, case ARRAY_RANGE_REF): Merge with ARRAY_REF.
* utils.c (gnat_install_builtins): Install __builtin_memcmp.
(build_vms_descriptor): Add extra args to ARRAY_REF.
(convert): Use VIEW_CONVERT_EXPR between aggregate types.
* utils2.c (gnat_truthvalue_conversion, case INTEGER_CST, REAL_CST):
New cases.
(build_binary_op): Don't make explicit CONVERT_EXPR.
Add extra rgs to ARRAY_REF.

From-SVN: r83103

20 years agosparc.h: Correct comment about availability of little endian option.
Ian Lance Taylor [Mon, 14 Jun 2004 14:07:06 +0000 (14:07 +0000)]
sparc.h: Correct comment about availability of little endian option.

* config/sparc/sparc.h: Correct comment about availability of
little endian option.

From-SVN: r83102

20 years agoconfig.gcc: Remove sparc64-*-aout*.
Ian Lance Taylor [Mon, 14 Jun 2004 13:59:44 +0000 (13:59 +0000)]
config.gcc: Remove sparc64-*-aout*.

* config.gcc: Remove sparc64-*-aout*.
* config/sparc/sparc.c (sparc_aout_select_rtx_section): Remove.
* config/sparc/sp64-aout.h: Remove.
* config/sparc/aout.h: Remove.

From-SVN: r83101

20 years ago* gcc_update: Add libcpp.
Andreas Jaeger [Mon, 14 Jun 2004 13:53:45 +0000 (15:53 +0200)]
* gcc_update: Add libcpp.

From-SVN: r83100

20 years ago[multiple changes]
Arnaud Charlet [Mon, 14 Jun 2004 13:19:14 +0000 (15:19 +0200)]
[multiple changes]

2004-06-14  Pascal Obry  <obry@gnat.com>

* gnat_ugn.texi: Document relocatable vs. dynamic Library_Kind on
Windows.  Fix minor typo.

* mlib-tgt-mingw.adb: New implementation using the GCC -shared option
which is now supported on Windows. With this implementation using the
Library Project feature is no different on Windows than on UNIX.

2004-06-14  Vincent Celier  <celier@gnat.com>

* makegpr.adb (Compile_Sources): Nothing to do when there are no
non-Ada sources.

* mlib-tgt-vxworks.adb (Library_Exists_For): Remove incorrect comment

* prj-part.adb (Parse_Single_Project): When a duplicate project name is
found, show the project name and the path of the previously parsed
project file.

2004-06-14  Ed Schonberg  <schonberg@gnat.com>

* exp_ch6.adb (Add_Call_By_Copy_Code): For an out-parameter that is an
array, avoid copying the actual before the call.

2004-06-14  Thomas Quinot  <quinot@act-europe.fr>

* g-debpoo.adb: Remove alignment assumptions from GNAT.Debug_Pools.
Instead, allocate memory on worst-case alignment assumptions, and then
return an aligned address within the allocated zone.

2004-06-14  Robert Dewar  <dewar@gnat.com>

* bindgen.adb (Gen_Adainit_Ada): Do not generate external references to
elab entities in predefined units in No_Run_Time_Mode.
(Gen_Adainit_C): Same fix
(Gen_Elab_Calls_Ada): Do not generate calls to elaborate predefined
units in No_Run_Time_Mode
(Gen_Elab_Calls_C): Same fix

* symbols-vms-alpha.adb: Minor reformatting

* g-debpoo.ads: Minor reformatting

* lib.adb (In_Same_Extended_Unit): Version working on node id's

* lib.ads (In_Same_Extended_Unit): Version working on node id's

* lib-xref.adb: Minor cleanup, use new version of In_Same_Extended_Unit
working on nodes.

* make.adb: Minor reformatting

* par-ch12.adb: Minor reformatting

* par-prag.adb: Add dummy entry for pragma Profile_Warnings

* prj-strt.adb: Minor reformatting

* restrict.ads, restrict.adb: Redo handling of profile restrictions to
be more general.

* sem_attr.adb: Minor reformatting

* sem_ch7.adb: Minor reformatting

* sem_elab.adb (Check_A_Call): Deal with problem of calling init proc
for type in the same unit as the object declaration.

* sem_prag.adb (Check_Arg_Is_External_Name): New procedure, allows
static string expressions and not just string literals.
Minor reformatting
(Set_Warning): Reset restriction warning flag for restriction pragma
Implement pragma Profile_Warnings
Implement pragma Profile (Restricted)
Give obolescent messages for old restrictions and pragmas

* snames.h, snames.ads, snames.adb: Add new entry for pragma
Profile_Warnings.

* s-rident.ads: Add declarations for restrictions required by profile
Restricted and profile Ravenscar.

* targparm.ads, targparm.adb: Allow pragma Profile in system.ads

* gnat_ugn.texi: Correct some missing entries in the list of GNAT
configuration pragmas.

From-SVN: r83099

20 years agoslist: Trivial formatting fixes.
Paolo Carlini [Mon, 14 Jun 2004 13:03:45 +0000 (13:03 +0000)]
slist: Trivial formatting fixes.

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

* include/ext/slist: Trivial formatting fixes.

From-SVN: r83098

20 years agos390.c: Include "tree-gimple.h".
Ulrich Weigand [Mon, 14 Jun 2004 12:11:06 +0000 (12:11 +0000)]
s390.c: Include "tree-gimple.h".

* config/s390/s390.c: Include "tree-gimple.h".
(s390_gimplify_va_arg): New function.
(TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
(s390_va_arg): Remove.
* config/s390/s390-protos.h (s390_va_arg): Remove.
* config/s390/s390.h (EXPAND_BUILTIN_VA_ARG): Call abort ().

From-SVN: r83090

20 years agobasic-block.h (could_fall_through): Declare.
J"orn Rennecke [Mon, 14 Jun 2004 12:09:08 +0000 (12:09 +0000)]
basic-block.h (could_fall_through): Declare.

* basic-block.h (could_fall_through): Declare.
* cfganal.c (can_fallthru): Succeed if the target is EXIT_BLOCK_PTR.
Fail if the source already has a fallthrough edge to the exit
block pointer.
(could_fall_through): New function.
* cfgbuild.c (make_edges): Check if we already have a fallthrough
edge to the exit block pointer.
* cfglayout.c (fixup_fallthru_exit_predecessor): Check that it is
not called before reload has completed.
Handle special case of first block having a fall-through exit edge.
(cfg_layout_finalize): Don't call it before reload or if we have
rtl epilogues.
(fixup_reorder_chain): A fall through to the exit block does not
require the block to come last.  Add sanity checks.
* cfgrtl.c (rtl_split_edge): Add special handling of fall through
edges to the exit block.
* function.c (cfglayout.h): #include.
(thread_prologue_and_epilogue_insns): If we have neither return nor
epilogue, but a fall through to the exit block from mid-function,
force a non-fall-through exit.
* Makefile.in (function.o): Depend on CFGLAYOUT_H.

From-SVN: r83089

20 years agolocale_facets.tcc (time_get<>::_M_extract_name): Don't use the 'magic number' 10...
Paolo Carlini [Mon, 14 Jun 2004 10:49:36 +0000 (10:49 +0000)]
locale_facets.tcc (time_get<>::_M_extract_name): Don't use the 'magic number' 10 in the computation of __minlen...

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

* include/bits/locale_facets.tcc (time_get<>::_M_extract_name):
Don't use the 'magic number' 10 in the computation of __minlen;
never access __name past __minlen; in the loop over __i3, don't
decrease __nmatches and increase __i3 at once, only either of
the two; tidy.

From-SVN: r83088