]> gcc.gnu.org Git - gcc.git/log
gcc.git
20 years agors6000.md (*insvsi_internal5/6): New patterns.
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

20 years agocfghooks.c (make_forwarder_block): Decrement count on fallthru edge when redirecting...
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

20 years ago* gcc.dg/noreturn-1.c (foo5): Update function does return lineno.
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

20 years agoc-typeck.c (emit_side_effect_warnings): Ignore error marks.
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

20 years agoi386.c (TARGET_STRUCT_VALUE_RTX): New.
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

20 years ago* gcc.dg/builtins-config.h: Handle FreeBSD.
Loren J. Rittle [Wed, 23 Jun 2004 02:25:06 +0000 (02:25 +0000)]
* gcc.dg/builtins-config.h: Handle FreeBSD.

From-SVN: r83532

20 years agotree.def (VTABLE_REF): Remove.
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

20 years agoDaily bump.
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

20 years agoDaily bump.
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

20 years agore PR middle-end/16026 (ICE in function.c:4804, assign_parms, when -mpowerpc64 &...
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

20 years ago* Makefile.in (distclean): Don't try to remove empty directories.
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

20 years agoistream.tcc (getline): Make sure arguments passed to min/max have the same type.
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

20 years agofix
Jason Merrill [Tue, 22 Jun 2004 21:45:54 +0000 (17:45 -0400)]
fix

From-SVN: r83517

20 years agore PR target/15869 (No NOP after LW (with -mips1 -O0))
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

20 years agopr15551.C: New testcase.
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

20 years agore PR c++/16112 (ICE with statement expression in return statement)
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

20 years agore PR target/14800 (Some x86 tests aren't valid for x86_64)
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

20 years agoBytesToUnicode.java (getDecoder): Pass original encoding name to iconv.
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

20 years agoTestcases for my rs6000-specific change of this date.
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

20 years agomn10300.md (movdi, movdf): Use high/low for movu operands.
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

20 years agore PR java/16113 (ICE: Segmentation fault when compiling bytecode with debugging...
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

20 years agoparse.y (create_class): Correct diagnostic message about java.lang.Object extending...
Ranjit Mathew [Tue, 22 Jun 2004 18:17:12 +0000 (18:17 +0000)]
parse.y (create_class): Correct diagnostic message about java.lang.Object extending anything else.

* parse.y (create_class): Correct diagnostic message about
java.lang.Object extending anything else.

From-SVN: r83507

20 years agors6000.c (legitimate_offset_address_p): Make global, rename rs6000_legitimate_offset_...
Dale Johannesen [Tue, 22 Jun 2004 18:12:37 +0000 (18:12 +0000)]
rs6000.c (legitimate_offset_address_p): Make global, rename rs6000_legitimate_offset_address_p.

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

* config/rs6000/rs6000.c (legitimate_offset_address_p): Make
global, rename rs6000_legitimate_offset_address_p.
(rs6000_legitimate_address_p): Adjust calls to it.
(lmw_operation): Ditto.
(stmw_operation): Ditto.
* config/rs6000/rs6000-protos.h: Declare it.
* config/rs6000/rs6000.md (*movdf_hardfloat32): Use it
instead of offsettable_memref_p.

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

* config/rs6000/rs6000.c (rs6000_legitimate_address): Disallow
[reg+reg] mode for TFmode memory accesses.
(rs6000_eliminate_indexed_memrefs): New.
(rs6000_emit_move): Call preceding for TImode and TFmode.

From-SVN: r83504

20 years agoFix ChangeLog entry.
Bryce McKinlay [Tue, 22 Jun 2004 17:23:13 +0000 (18:23 +0100)]
Fix ChangeLog entry.

From-SVN: r83502

20 years agore PR libgcj/16134 (Memory leak in String.getBytes())
Bryce McKinlay [Tue, 22 Jun 2004 17:21:23 +0000 (17:21 +0000)]
re PR libgcj/16134 (Memory leak in String.getBytes())

PR libgcj/16134:
* gnu/gcj/convert/BytesToUnicode.java: Canonicalize encoding name
before cache lookup. Thanks to Hannes Wallnoefer.
* gnu/gcj/convert/UnicodeToBytes.java: Likewise.

From-SVN: r83501

20 years agoabi.html: Update links.
Benjamin Kosnik [Tue, 22 Jun 2004 16:01:02 +0000 (16:01 +0000)]
abi.html: Update links.

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

* docs/html/abi.html: Update links.

From-SVN: r83498

20 years agocomplex_inserters_extractors.cc, [...]: Move to...
Paolo Carlini [Tue, 22 Jun 2004 10:52:14 +0000 (10:52 +0000)]
complex_inserters_extractors.cc, [...]: Move to...

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

* testsuite/26_numerics/complex_inserters_extractors.cc,
complex_value.cc, buggy_complex.cc: Move to...
* testsuite/26_numerics/complex/: ... here.
* testsuite/26_numerics/c99_classification_macros_c++.cc,
c99_classification_macros_c.cc, c_math.cc, c_math_dynamic.cc,
fabs_inline.cc: Move to...
* testsuite/26_numerics/cmath/: ... here.
* testsuite/26_numerics/binary_closure.cc, slice.cc,
slice_array_assignment.cc, valarray.cc, valarray_const_bracket.cc,
valarray_name_lookup.cc, valarray_operators.cc,
valarray_subset_assignment.cc: Move to...
* testsuite/26_numerics/valarray/: ... here (new dir).
* testsuite/26_numerics/sum_diff.cc: Move to...
* testsuite/26_numerics/numeric/: ... here (new dir).

From-SVN: r83489

20 years agotree-cfg.c (pass_warn_function_return): It needs CFG, not SSA.
Paolo Bonzini [Tue, 22 Jun 2004 10:06:49 +0000 (10:06 +0000)]
tree-cfg.c (pass_warn_function_return): It needs CFG, not SSA.

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

* tree-cfg.c (pass_warn_function_return): It needs
CFG, not SSA.

From-SVN: r83487

20 years agostd_istream.h (ignore(streamsize __n = 1, int_type __delim = traits_type::eof())...
Paolo Carlini [Tue, 22 Jun 2004 10:06:39 +0000 (10:06 +0000)]
std_istream.h (ignore(streamsize __n = 1, int_type __delim = traits_type::eof())): Split into...

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

* include/std/std_istream.h (ignore(streamsize __n = 1,
int_type __delim = traits_type::eof())): Split into...
(ignore(), ignore(streamsize __n), ignore(streamsize __n,
int_type __delim)): The first two can be much more simpler
and efficient than the fully general case; also, the last
two can take advantage of the same mechanism already used
for getline.
* include/bits/istream.tcc (ignore(streamsize __n = 1,
int_type __delim = traits_type::eof()): Remove.
(ignore(), ignore(streamsize __n), ignore(streamsize __n,
int_type __delim)): New.

From-SVN: r83486

20 years agoinvoke.texi (Machine Dependent Options): Alphabetize.
Nathan Sidwell [Tue, 22 Jun 2004 08:32:31 +0000 (08:32 +0000)]
invoke.texi (Machine Dependent Options): Alphabetize.

* doc/invoke.texi (Machine Dependent Options): Alphabetize.
(Submodel Options): Likewise.

From-SVN: r83485

20 years agoRadar #: 3701874
Andrew Pinski [Tue, 22 Jun 2004 07:23:25 +0000 (07:23 +0000)]
Radar #: 3701874

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

        Radar #: 3701874
        * c-decl.c (push_file_scope): Return early if we already
        have a file scope.

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

        * gcc.dg/pch/struct-1.c: New.
        * gcc.dg/pch/struct-1.hs: New.

From-SVN: r83483

20 years agocp-tree.def (NEW_EXPR): Add a fourth slot.
Mark Mitchell [Tue, 22 Jun 2004 07:18:38 +0000 (07:18 +0000)]
cp-tree.def (NEW_EXPR): Add a fourth slot.

* cp-tree.def (NEW_EXPR): Add a fourth slot.
* cp-tree.h (PARMLIST_ELLIPSIS_P): Remove.
(TREE_PARMLIST): Likewise.
(CALL_DECLARATOR_PARMS): Likewise.
(CALL_DECLARATOR_QUALS): Likewise.
(CALL_DECLARATOR_EXCEPTION_SPEC): Likewise.
(cp_declarator_kind): New type.
(cp_parameter_declarator): Likewise.
(cp_declarator): Likewise.
(cp_error_declarator): Likewise.
(no_parameters): Likewise.
(groktypename): Change prototype.
(start_decl): Likewise.
(start_handler_parms): Likewise.
(get_scope_of_declarator): Likewise.
(start_function): Likewise.
(start_preparsed_function): New function.
(start_function): Change prototype.
(start_method): Likewise.
(grokfield): Likewise.
(grokbitfield): Likewise.
(build_new): Likewise.
(make_pointer_declarator): Remove.
(make_reference_declarator): Likewise.
(make_call_declarator): Likewise.
(set_quals_and_spec): Likewise.
(process_template_parm): Change prototype.
(begin_function_definition): Remove.
(finish_parmlist): Remove.
* decl.c (groktypename): Do not use trees to represent
declarators.
(start_decl): Likewise.
(start_handler_parms): Remove.
(get_scope_of_declarator): Reimplement.
(grokdeclarator): Do not use trees to represent declarators.
(grokparms): Likewise.
(start_function): Likewise.
(start_method): Likewise.
(build_void_list_mode): Do not use TREE_PARMLIST.
* decl.h (grokdeclarator): Change prototype.
* decl2.c (grok_method_quals): Robustify.
(grok_x_components): Do not use trees to represent declarators.
(grokfield): Likewise.
(grokbitfield): Likewise.
(start_objects): Build FUNCTION_DECLs, not declarators.
(start_static_storage_duration_function): Likewise.
* init.c (build_new): Simplify.
* lex.c (make_pointer_declarator): Remove.
(make_reference_declarator): Likewise.
(make_call_declarator): Likewise.
(set_quals_and_spec): Likewise.
* method.c (use_thunk): Use start_preparsed_function.
(synthesize_method): Likewise.
(implicitly_declare_fn): Build FUNCTION_DECLs, not declarators.
* optimize.c (maybe_clone_body): Use start_preparsed_function.
* parser.c (cp_error_declarator): New variable.
(declarator_obstack): Likewise.
(alloc_declarator): New function.
(make_declarator): Likewise.
(make_id_declarator): Likewise.
(make_pointer_declarator): Likewise.
(make_reference_declarator): Likewise.
(make_ptrmem_declarator): Likewise.
(make_call_declarator): Likewise.
(make_array_declarator): Likewise.
(no_parameters): New variable.
(make_parameter_declarator): Likewise.
(cp_parser_check_for_definition_in_return_type): Do not use trees
to represent declarators.
(cp_parser_translation_unit): Likewise.
(cp_parser_new_expression): Likewise.
(cp_parser_new_type_id): Likewise.
(cp_parser_new_declarator_opt): Likewise.
(cp_parser_direct_new_declarator): Likewise.
(cp_parser_condition): Likewise.
(cp_parser_declaration_statement): Likewise.
(cp_parser_declaration): Likewise.
(cp_parser_conversion_type_id): Likewise.
(cp_parser_conversion_declarator_opt): Likewise.
(cp_parser_template_parameter_list): Likewise.
(cp_parser_template_parameter): Likewise.
(cp_parser_explicit_instantiation): Likewise.
(cp_parser_init_declarator): Likewise.
(cp_parser_declarator): Likewise.
(cp_parser_direct_declarator): Likewise.
(cp_parser_type_id): Likewise.
(cp_parser_parameter_declaration_clause): Likewise.
(cp_parser_parameter_declaration_list): Likewise.
(cp_parser_parameter_declaration): Likewise.
(cp_parser_member_declaration): Likewise.
(cp_parser_exception_declaration): Likewise.
(cp_parser_check_declarator_template_parameters): Likewise.
(cp_parser_function_definition_from_specifiers_and_declarator):
Likewise.
(cp_parser_save_member_function_body): Likewise.
* pt.c (process_template_parm): Add is_non_type parameter.
(convert_template_argument): Adjust call to groktypename.
(tsubst_call_declarator_parms): Remove use of TREE_PARMLIST.
(tsubst): Do not expect declarators.
(tsubst_copy_and_build): Adjust NEW_EXPR case to handle additional
argument.
(instantiate_decl): Use start_preparsed_function.
* semantics.c (begin_function_definition): Remove.
(finish_parmlist): Remove.
* cp-mudflap.c (mflang_flush_calls): Build FUNCTION_DECLs, not
declarators.

From-SVN: r83482

20 years agoc-opts.c (c_common_handle_option): Handle -fpch-preprocess.
Geoffrey Keating [Tue, 22 Jun 2004 06:51:56 +0000 (06:51 +0000)]
c-opts.c (c_common_handle_option): Handle -fpch-preprocess.

2004-06-21  Geoffrey Keating  <geoffk@apple.com>

* c-opts.c (c_common_handle_option): Handle -fpch-preprocess.
* c-common.h (flag_pch_preprocess): Declare.
(c_common_pch_pragma): Likewise.
* c-common.c (flag_pch_preprocess): New.
* c-pch.c (c_common_read_pch): Support -fpreprocess-only.
(c_common_pch_pragma): New.
* c-ppoutput.c (cb_read_pch): New.
(init_pp_output): Support -fpch-preprocess.
* c-pragma.c (init_pragma): Support #pragma GNUC pch_preprocess.
* c.opt (fpch-preprocess): New.
* gcc.c (cpp_options): When save-temps, pass -fpch-preprocess.
* doc/cppopts.texi: Document -fpch-preprocess.
* doc/invoke.texi (Precompiled Headers): Mention that
-fpreprocessed is safe for PCH.  Mention that if an option is
listed as safe that doesn't mean it does what you expect.

Index: gcc/testsuite/ChangeLog
2004-06-21  Geoffrey Keating  <geoffk@apple.com>

* gcc.dg/pch/save-temps-1.c: New file.
* gcc.dg/pch/save-temps-1.hs: New file.

Index: libcpp/ChangeLog
2004-06-21  Geoffrey Keating  <geoffk@apple.com>

* files.c (should_stack_file): Correct swapped parameters to call
to cb.read_pch.
* pch.c (cpp_valid_state): Handle -fpreprocessed.

From-SVN: r83478

20 years ago* tree-ssa.c (ssa_redirect_edge): Correct leading comment.
Ben Elliston [Tue, 22 Jun 2004 06:08:37 +0000 (06:08 +0000)]
* tree-ssa.c (ssa_redirect_edge): Correct leading comment.

From-SVN: r83477

20 years agoMAINTAINERS: Added self to write-after-approval.
Matthew Sachs [Tue, 22 Jun 2004 04:13:32 +0000 (04:13 +0000)]
MAINTAINERS: Added self to write-after-approval.

From-SVN: r83476

20 years ago* Makefile.in (gimplify.o): Add cgraph.h.
Richard Kenner [Tue, 22 Jun 2004 03:18:15 +0000 (03:18 +0000)]
* Makefile.in (gimplify.o): Add cgraph.h.

From-SVN: r83475

20 years agoalias.c (adjust_offset_for_component_ref): Use component_ref_field_offset.
Richard Kenner [Tue, 22 Jun 2004 03:07:05 +0000 (03:07 +0000)]
alias.c (adjust_offset_for_component_ref): Use component_ref_field_offset.

* alias.c (adjust_offset_for_component_ref): Use
component_ref_field_offset.
* c-decl.c (build_array_declarator): Add news args for ARRAY_REF.
* c-gimplify.c (gimplify_expr_stmt): Use alloc_stmt_list.
(gimplify_decl_stmt): Call gimplify_type_sizes for type.
For decl, call gimplify_one_sizepos and use statement list.
(gimplify_compound_literal_expr): New arg PRE_P.
Add statement to PRE_P list and return DECL.
(c_gimplify_expr, case COMPOUND_LITERAL_EXPR): Add arg to
gimplify_compound_literal_expr.
* c-tree.h (getdecls): Deleted.
* c-typeck.c (build_component_ref): Add operand for COMPONENT_REF.
(build_array_ref): Add two operands for ARRAY_REF.
(build_unary_op): Set TREE_INVARIANT and TREE_CONSTANT for
COMPOUND_LITERAL_EXPR.
* coverage.c (tree_coverage_counter_ref): Add new operands
for ARRAY_REF.
* emit-rtl.c (component_ref_for_mem_expr): Add new operand
for COMPONENT_REF.
(set_mem_attributes_minus_bitpos): Use array_ref_low_bound
and array_ref_element_size.
(widen_memory_access):Use component_ref_field_offset.
* explow.c (update_nonlocal_goto_save_area): Add two operands
for ARRAY_REF.
* expr.c (array_ref_element_size, array_ref_low_bound): New functions.
(component_ref_field_offset): Likewise.
(get_inner_reference): Use them.
(expand_expr_real_1, case ARRAY_REF): Use array_ref_low_bound.
* fold-const.c (fold, case EQ_EXPR): Properly handle DECL_SIZE.
(fold_read_from_constant_string): Use array_ref_low_bound.
Verify that result is a character type.
(build_fold_indirect_ref): Add two operands for ARRAY_REF.
* function.c (expand_function_start): Likewise.
* gimple-low.c (expand_var_p): Delete duplicated line.
* gimplify.c: Add static decls for local functions.
(cgraph.h): Now included.
(create_tmp_var): Remove check for ARRAY_TYPE.
(copy_if_shared_r): Look at bounds and sizes of types.
(build_and_jump): Return alloc_stmt_list instead of build_empty_stmt.
(gimplify_exit_expr, shortcut_cond_expr): Likewise.
(gimplify_save_expr, gimple_push_cleanup): Likewise.
(gimplify_init_constructor): Likewise.
WANT_VALUE now bool.
If empty list with no result wanted, return GS_UNHANDLED.
Add additional operands for ARRAY_REF and COMPONENT_REF.
(canonicalize_component_ref): Convert to &array[L].
(gimplify_array_ref_to_plus): Use array_ref_element_size and
array_ref_lower_bound.
(build_addr_expr_with_type, build_addr_expr): New functions.
(gimplify_compound_lval): WANT_LVALUE now bool.
Major rework to allow handle_component_p and initialize and
gimplify new operands for ARRAY_REF, ARRAY_RANGE_REF, and
COMPONENT_REF.
(gimplify_array_ref): Deleted.
(gimplify_self_mod_expr): WANT_VALUE now bool.
(gimplify_modify_expr): Gimplify to_p and from_p later.
Factor out code into gimplify_modify_expr_rhs and call twice.
Move variable-size code earlier and handle PLACEHOLDER_EXPR.
(gimplify_modify_expr_rhs, gimplify_variable_sized_compare): New fns.
(gimplify_addr_expr, case VIEW_CONVERT_EXPR): New case.
(gimplify_expr, case ARRAY_REF): Delete special case.
Instead handle like COMPONENT_REF; also do ARRAY_RANGE_REF,
IMAGPART, and REALPART the same way.
(gimplify_expr, case VIEW_CONVERT_EXPR): New case.
(gimplify_expr): Call gimplify_variable_sized_compare if applicable.
Call alloc_stmt_list instead of build_empty_stmt.
Deal with _REF that's volatile.
(gimplify_type_sizes, gimplify_one_sizepos): New functions.
(unshare_body, unvisit_body): New functions.
(gimplify_body): Call them.
* stmt.c (expand_stack_alloc): Don't expand TYPE_MAX_VALUE.
* stor-layout.c (get_pending_sizes): Don't change SAVE_EXPR_CONTEXT.
* tree-alias-common.c (get_alias_var): Also skip ARRAY_RANGE_REF.
* tree-cfg.c (tree_node_can_be_shared): Treat ARRAY_RANGE_REF
like ARRAY_REF.
(verify_expr, case ADDR_EXPR): Use handled_component_p.
* tree-dfa.c (get_virtual_var): Likewise.
* tree-dump.c (dequeue_and_dump, case COMPONENT_REF, ARRAY_REF):
New cases to dump new operands; likewise for ARRAY_RANGE_REF.
* tree-eh.c (tree_could_trap, case ARRAY_RANGE_REF): Like ARRAY_REF.
* tree-gimple.c (is_gimple_addr_expr_arg): Add ARRAY_RANGE_REF
and INDIRECT_REF.
(get_base_address): Use handled_component_p.
* tree-gimple.h (gimplify_type_sizes, gimplify_one_sizepos): New.
* tree-line.c (walk_tree): Walk more things for types and decls.
* tree-mudflap.c (mf_build_check_statement_for): Add new operands
for ARRAY_REF and COMPONENT_REF.
(mx_xform_derefs_1): Clean up usage of decl sizes.
* tree-nested.c (build_addr): Use handled_component_p.
(walk_stmts, case CATCH_EXPR): Add missing "break".
(get_static_chain, get_frame_field): Add new operand for COMPONENT_REF.
(finalize_nesting_tree_1): Likewise.
(convert_nonlocal_reference, case ARRAY_RANGE_REF): Like ARRAY_REF
and process additional operands.
(convert_local_reference): Likewise.
* tree-outof-ssa.c (discover_nonconstant_array_refs_r): Treat
ARRAY_RANGE_REF similarly to ARRAY_REF.
* tree-pretty-print.c (dump_generic_node, case QUAL_UNION_TYPE): Handle
like RECORD_TYPE.
(dump_generic_node, case COMPONENT_REF): Print offset operand.
(dump_generic_node, case ARRAY_RANGE_REF): Treat like ARRAY_REF
and print lower bound and element size for both.
(op_prio, case ARRAY_RANGE_REF): Like ARRAY_REF.
* tree-sra.c (csc_build_component_ref): Add new operand.
(scalarize_call_expr): Use get_base_address.
* tree-ssa-ccp.c (widen_bitfield): Clean up size handling.
(maybe_fold_offset_to_array_ref): Rework to handle input having an
ARRAY_REF, refine handling of lower bound, and add new operands
for ARRAY_REF.
(maybe_fold_to_component_ref): Add new operand for COMPONENT_REF.
(maybe_fold_stmt_indirect): Only fold *&B to B if types match.
(maybe_fold_stmt_addition): Only handle constant lower bound.
* tree-ssa-operands.c (get_expr_operands): Minor rearrangements.
Treat ARRAY_REF and ARRAY_RANGE_REF the same; look at extra operands.
Look at new offset operand of COMPONENT_REF.
* tree-ssa.c (set_is_used): Use handled_component_p.
* tree.c (substitute_in_expr, case COMPONENT_REF): Add new operand.
(stabilize_reference, case COMPONENT_REF): Likewise.
(stabilize_reference, case ARRAY_RANGE_REF, ARRAY_REF): Similarly.
(recompute_tree_invariant_for_addr_expr): Completely rework to
be more precise.  Also set TREE_SIDE_EFFECTS.
(build1_stat, case ARRAY_EXPR): Don't handle TREE_SIDE_EFFECTS here.
(build2_stat, build3_stat, build4_stat): For references,
propagate TREE_THIS_VOLATILE.
(get_unwidened): Add new operand for COMPONENT_REF.
(get_narrower): Likewise; use host_integerp for DECL_SIZE.
* tree.def (COMPONENT_REF): Add new operand.
(ARRAY_REF, ARRAY_RANGE_REF): Add two new operands.
* tree.h (array_ref_element_size, array_ref_low_bound): New decls.
(component_ref_field_offset): Likewise.
* config/alpha/alpha.c (alpha_va_start): Add new op for COMPONENT_REF.
(alpha_gimplify_va_arg): Likewise.
* config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
* config/i860/i860.c (i860_va_start, i860_va_arg): Likewise.
* config/iq2000/iq2000.c (iq2000_va_arg): Likewise.
* config/mips/mips.c (mips_va_start, mips_va_arg): Likewise.
* config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg):
Likewise.
* config/s390/s390.c (s390_va_start, s390_gimplify_va_arg): Likewise.
* config/sh/sh.c (sh_va_start, sh_va_arg): Likewise.
* config/stormy16/stormy16.c (xstormy1_expand_builin_va_start):
Likewise.
(xstormy16_expand_builtin_va_arg): Likewise.
* config/xtensa/xtensa.c (xtensa_va_start, xtensa_va_arg): Likewise.

* cp/call.c (build_vfield_ref): Add new operand for COMPONENT_REF.
(build_new_method_call): Likewise.
* cp/decl.c (local_variable_p_walkfn): Don't walk into types.
* cp/decl2.c (grok_array_decl): Add new operands for ARRAY_REF.
(build_anon_union_vars): Add new operand for COMPONENT_REF.
* cp/init.c (buld_new): Add new operand for ARRAY_REF.
* cp/method.c (do_build_copy_constructor): New op for COMPONENT_REF.
(do_build_assign_ref): Likewise.
* cp/parser.c (cp_parser_direct_new_declarator): Add new operands
for ARRAY_REF.
(cp_parser_direct_declarator): Likewise.
* cp/pt.c (tsubst): Likewise.
(tsubst_copy, tsubst_copy_and_build): Likewise; also add new operand
  for COMPONENT_REF.
* cp/semantics.c (finish_non_static_data_member): Add new operand
for COMPONENT_REF.
* cp/typeck.c (build_class_member_access_expr): Likewise.
(build_class_member_access_expr, finish_class_member_access_expr):
Likewise.
(build_ptrmemfunc_access_expr): Likewise.
(build_array_ref): Add new operands for ARRAY_REF.
* cp/typeck2.c (split_nonconstant_init_1): Likewise; COMPONENT_REF too.
* cp/tree.c (count_trees_r, no_linkage_helper): Don't walk in types.

* fortran/f95-lang.c (LANG_HOOKS_GIMPLE_BEFORE_INLINING): Deleted.
* fortran/trans-array.c (gfc_conv_descriptor_data): Add operand
for COMPONENT_REF.
(gfc_conv_descriptor_offset, gfc_conv_descriptor_dtype): Likewise.
(gfc_conv_descriptor_dimension, gfc_conv_descriptor_stride): Likewise.
(gfc_conv_descriptor_lbound, gfc_conv_descriptor_ubound): Likewise.
* fortran/trans-common.c (create_common): Likewise.
* fortran/trans-expr.c (gfc_conv_component_ref): Likewise.
* fortran/trans-io.c (set_parameter_value): Likewise.
(set_parameter_ref, set_string, set_flag, io_result): Likewise.
(transfer_expr): Likewise.
* fortran/trans-decl.c (gfc_trans_auto_character_variable):
Set up to get DECL_SIZE and DECL_SIZE_UNIT gimplified.
(gfc_simplify_function): New function.
(gfc_generate_function-code): Properly handle nested functions.
* fortran/trans.c (gfc_build_array_ref): Add two new operands
for ARRAY_REF.

* java/class.c (build_class_ref): Add new operand for COMPONENT_REF.
(build_static_field_ref): Likewise and add new operands for ARRAY_REF.
* java/constants.c (build_ref_from_constant_pool): Likewise.
* java/expr.c (build_java_array_length_access): Likewise.
(build_get_class, build_field_ref, build_known_method_ref): Likewise.
(invoke_build_dtable, build_invokevirtual): Likewise.
(build_invokeinterface, java_expand_expr): Likewise.
(emit_init_test_initialization): Likewise.
* java/java-gimplify.c (java_gimplify_new_array_init): Likewise.
* java/parse.y (make_qualifed_name, build_array_ref): Likewise.

* objc/ojbc-act.c (generate_static_references): Add additional
operands to ARRAY_REF.
(generate_strings, build_method_prototype_list_template): Likewise.
(generate_protocol_list): Likewise.

From-SVN: r83474

20 years agoconfigure.in: Check for srcdir/winsup rather than build directory winsup.
Christopher Faylor [Tue, 22 Jun 2004 01:37:04 +0000 (01:37 +0000)]
configure.in: Check for srcdir/winsup rather than build directory winsup.

* configure.in: Check for srcdir/winsup rather than build directory winsup.
* configure: Regenerate.

From-SVN: r83473

20 years agore PR fortran/15750 (IOLENGTH form of INQUIRE statement not implemented)
Janne Blomqvist [Tue, 22 Jun 2004 00:43:55 +0000 (03:43 +0300)]
re PR fortran/15750 (IOLENGTH form of INQUIRE statement not implemented)

PR fortran/15750
* io.c (gfc_match_inquire): Bugfix for iolength related stuff.
(gfc_resolve_inquire): Resolve the iolength tag.  Return
SUCCESS at end of function if no failure has occured.
* resolve.c (resolve_code): Resolve if iolength is encountered.
* trans-io.c: (ioparm_iolength, iocall_iolength,
iocall_iolength_done): New variables.
(last_dt): Add IOLENGTH.
(gfc_build_io_library_fndecls ): Set iolength related variables.
(gfc_trans_iolength): Implement.
(gfc_trans_dt_end): Treat iolength as a third form of data transfer.
libgfortran/
PR fortran/15750
* inquire.c (st_inquire): Add comment
* io.h (st_parameter): Add iolength.
(st_iolength, st_iolength_done): Declare.
* transfer.c (iolength_transfer, iolength_transfer_init,
st_iolength, st_iolength_done): New functions.
testsuite/
* gfortran.fortran-torture/execute/iolength_1.f90: New test.
* gfortran.fortran-torture/execute/iolength_3.f90: New test.

From-SVN: r83472

20 years agolinker-map.gnu: Use wildcards for __basic_file::sys_open(FILE*, _Ios_Openmode).
Loren J. Rittle [Tue, 22 Jun 2004 00:24:52 +0000 (00:24 +0000)]
linker-map.gnu: Use wildcards for __basic_file::sys_open(FILE*, _Ios_Openmode).

* config/linker-map.gnu: Use wildcards for
__basic_file::sys_open(FILE*, _Ios_Openmode).

From-SVN: r83470

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

[[Split portion of a mixed commit.]]

From-SVN: r83467.2

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

[[Split portion of a mixed commit.]]

From-SVN: r83466.2

20 years agore PR rtl-optimization/14782 (produces an unaligned data access at -O2)
John David Anglin [Mon, 21 Jun 2004 23:49:04 +0000 (23:49 +0000)]
re PR rtl-optimization/14782 (produces an unaligned data access at -O2)

PR rtl-optimization/14782
* pa.c (emit_move_sequence): Use SFmode for 4-byte modes when doing
the address checks for secondary reloads for loads from and stores
to floating-point registers.
* pa.h (EXTRA_CONSTRAINT, case T): Use SFmode for 4-byte modes
in the address check.  Move work around for ELF32 targets to
GO_IF_LEGITIMATE_ADDRESS.
(GO_IF_LEGITIMATE_ADDRESS): Require constant offsets to be
correctly aligned for DImode loads and stores.  Don't allow long
SFmode displacements on ELF32.

From-SVN: r83464

20 years agore PR rtl-optimization/16114 (Hang in cse.c (flush_hash_table))
Richard Henderson [Mon, 21 Jun 2004 23:39:26 +0000 (16:39 -0700)]
re PR rtl-optimization/16114 (Hang in cse.c (flush_hash_table))

        PR rtl-opt/16114
        * cse.c (merge_equiv_classes): Also rehash in response to
        delete_reg_equiv changes.
        (rehash_using_reg): Don't exclude REGs from rehashing.

From-SVN: r83463

20 years agoc-common.def (RETURN_STMT): Remove.
Richard Henderson [Mon, 21 Jun 2004 23:30:30 +0000 (16:30 -0700)]
c-common.def (RETURN_STMT): Remove.

        * c-common.def (RETURN_STMT): Remove.
        * c-common.h (RETURN_STMT_EXPR): Remove.
        (c_expand_return, build_return_stmt): Remove.
        (c_common_stmt_codes): Remove RETURN_STMT.
        * c-dump.c (dump_next_stmt): Remove.
        (c_dump_tree): Remove RETURN_STMT.
        * c-decl.c (finish_function): Use c_finish_return.
        * c-parse.in (stmt): Likewise.
        * c-gimplify.c (gimplify_return_stmt): Remove.
        (c_gimplify_expr): Remove RETURN_STMT.
        * c-pretty-print.c (pp_c_statement): Likewise.
        * c-semantics.c (build_return_stmt): Remove.
        * c-tree.h (c_finish_return): Declare.
        * c-typeck.c (c_finish_return): Rename from c_expand_return.
        Return void.  Build RETURN_EXPR directly.
        * tree-dump.h (dump_next_stmt): Remove.
cp/
        * dump.c (cp_dump_tree): Don't use dump_next_stmt.
        * parser.c (cp_parser_jump_statement): Update commentary.
        * pt.c (tsubst_expr): Use RETURN_EXPR.
        * semantics.c (finish_return_stmt): Likewise.
        (finalize_nrv_r): Likewise.
        * typeck.c, typeck2.c: Update file start commentary.

From-SVN: r83461

20 years agoc-decl.c (start_function): Don't call make_decl_rtl.
Zack Weinberg [Mon, 21 Jun 2004 23:04:49 +0000 (23:04 +0000)]
c-decl.c (start_function): Don't call make_decl_rtl.

* c-decl.c (start_function): Don't call make_decl_rtl.  Don't
look at TREE_ADDRESSABLE of symbol name.

From-SVN: r83460

20 years agoselect_1.f90: Rename function to fix type error.
Tobias Schlüter [Mon, 21 Jun 2004 22:56:34 +0000 (00:56 +0200)]
select_1.f90: Rename function to fix type error.

* gfortran.fortran-torture/execute/select_1.f90: Rename function
to fix type error.
* gfortran.fortran-torture/execute/intrinsic_associated.f90:
Remove trailing spaces.

From-SVN: r83459

20 years agore PR target/15551 (-mtune=pentium4 -O2 with sjlj EH breaks stack probe worker on...
Kelley Cook [Mon, 21 Jun 2004 22:52:04 +0000 (22:52 +0000)]
re PR target/15551 (-mtune=pentium4  -O2 with sjlj EH breaks stack probe worker on windows32  targets)

2004-06-21  Kelley Cook  <kcook@gcc.gnu.org>

PR target/15551
* config/i386/i386.md: Change UNSPEC_STACK_PROBE to UNSPECV_STACK_PROBE.
(allocate_stack_worker): Make unspec_volatile.
(allocate_stack_worker_rex64):  Likewise.
(allocate_stack_worker_postreload):  Likewise.
(allocate_stack_worker_rex64_postreload):  Likewise.

From-SVN: r83458

20 years agoFix whitespace from previous checking
R. Kelley Cook [Mon, 21 Jun 2004 22:48:39 +0000 (22:48 +0000)]
Fix whitespace from previous checking

From-SVN: r83457

20 years agoetime.c (etime_sub): Remove array rank check; Add check for sufficient space.
Steven G. Kargl [Mon, 21 Jun 2004 22:25:12 +0000 (22:25 +0000)]
etime.c (etime_sub): Remove array rank check; Add check for sufficient space.

* etime.c (etime_sub): Remove array rank check;
Add check for sufficient space.

From-SVN: r83456

20 years agore PR fortran/15511 (Warning about truncated lines does not follow the standard gcc...
Tobias Schlüter [Mon, 21 Jun 2004 22:22:32 +0000 (00:22 +0200)]
re PR fortran/15511 (Warning about truncated lines does not follow the standard gcc error message format)

PR fortran/15511
* scanner.c (load_line): Don't truncate preprocessor lines.
Reformat error message.
(preprocessor_line): Issue warning in case of malformed
preprocessor line.

From-SVN: r83455

20 years agoNew test, extracted from 15982
Daniel Berlin [Mon, 21 Jun 2004 21:59:38 +0000 (21:59 +0000)]
New test, extracted from 15982

From-SVN: r83454

20 years agore PR tree-optimization/15982 (ICE in tree-ssa-pre due to GVN-PRE)
Daniel Berlin [Mon, 21 Jun 2004 21:57:33 +0000 (21:57 +0000)]
re PR tree-optimization/15982 (ICE in tree-ssa-pre due to GVN-PRE)

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

    Fix PR optimization/15982
    * tree-ssa-pre.c: Update a few comments and todos to
    reflect constants change.
    (get_value_handle): Constants now value number to themselves.
    (lookup): Constants lookup to themselves.
    (add_to_value): Adjust to always be on.
    (set_contains_value): Adjust for constants change.
    (find_leader): Ditto.
    (phi_translate): 'r' nodes are never ANTIC right now.
    (valid_in_set): Ditto.
    (get_expr_set): New function.
    (find_or_generate_expression): New function, broken out from
    insert_aux.
    (create_expression_by_pieces): Ditto, plus additional
    machinery to handle complex values.
    (compute_avail): Remove dead RETURN_EXPR handling.

From-SVN: r83453

20 years agoi386.c: Include insn-codes.h
Steven Bosscher [Mon, 21 Jun 2004 20:41:39 +0000 (20:41 +0000)]
i386.c: Include insn-codes.h

* config/i386/i386.c: Include insn-codes.h
* config/i386/i386.h (FLAGS_REG, FPSR_REG, DIRFLAG_REG): Don't
define here.
* config/i386/i386.md (BP_REG, SP_REG, FLAGS_REG, FPSR_REG,
DIRFLAG_REG): New define_constants.  Use them everywhere.

From-SVN: r83451

20 years agoTypo fix.
Joern Rennecke [Mon, 21 Jun 2004 19:11:23 +0000 (20:11 +0100)]
Typo fix.

From-SVN: r83445

20 years ago[multiple changes]
Joern Rennecke [Mon, 21 Jun 2004 18:18:40 +0000 (19:18 +0100)]
[multiple changes]

2004-06-21  Kaz Kojima  <kkojima@gcc.gnu.org>

* config/sh/t-linux (MULTILIB_OPTIONS): Remove.

2004-06-21  J"orn Rennecke <joern.rennecke@superh.com>

* sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionanlly define.
(SUPPORT_SH4_SINGLE): Likewise.
(TARGET_SWITCHES): Break out switches for cpu subtargets:
(TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define.
(TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise.
(TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise.
(TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise.
(TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise.
(TARGET_SWITCHES_SH5_32MEDIA): Likewise.
(TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise.
(SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to:
(SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU)
(SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to:
(SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU).
(SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define.
(ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise.
* sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine.
(TARGET_DEFAULT): Likewise.
* config/sh/t-elf: Amend comment.
* config/sh/t-1e, config/sh/t-mlib-sh1: New files.
* config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise.
* config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise.
* config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise.
* config/sh/t-mlib-sh4-single: Likewise.
* config/sh/t-mlib-sh4-single-only: Likewise.
* config/sh/t-mlib-sh5-32media: Likewise.
* config/sh/t-mlib-sh5-32media-nofpu: Likewise.
* config/sh/t-mlib-sh5-64media: Likewise.
* config/sh/t-mlib-sh5-64media-nofpu: Likewise.
* config/sh/t-mlib-sh5-compact: Likewise.
* config/sh/t-mlib-sh5-compact-nofpu: Likewise.
* config/sh/t-sh: (MULTILIB_ENDIAN): Add mb.
(MULTILIB_CPUS): Define.
(MULTILIB_OPTIONS): Use MULTILIB_CPUS.
(MULTILIB_MATCHES): Use some shell code to calculate it.
(MULTILIB_EXCEPTIONS): Change to ml/m1.
* config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC.
* config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU.
(LINK_DEFAULT_CPU_EMUL): Don't redefine.
(NO_PROFILE_COUNTERS): Define to 1.
* config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to.
(MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap.
* config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine.
(MULTILIB_MATCHES): Don't zap.
(MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES.
* config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine.
(MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap.
(MULTILIB_RAW_DIRNAMES): Define.
(MULTILIB_DIRNAMES): Use it.
* config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*.
(sh*linux configurations): Merge into:
(sh*elf / sh*kaos configurations).  Support --with-endian, --with-cpu,
--with-multilib-list options.  Support sh-superh-elf configuration.
(sh*-netbsd*): Use SELECT_SH* macros.
(supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu".
Merge sh*-*-netbsd* configurations into sh-elf configurations.
* config/sh/t-netbsd-sh5, config/sh/t-le, config/sh/t-le: Delete.
* config/sh/t-monolib: Likewise.

From-SVN: r83444

20 years agoresolve.c (resolve_symbol): Add comment in function body.
Tobias Schlüter [Mon, 21 Jun 2004 17:23:52 +0000 (19:23 +0200)]
resolve.c (resolve_symbol): Add comment in function body.

* resolve.c (resolve_symbol): Add comment in function body.
(check_data_variable): Change type of mark to ar_type, adapt code
accordingly.

From-SVN: r83443

20 years agoarray.c (gfc_insert_constructor): Avoid redundant call to mpz_comp.
Tobias Schlüter [Mon, 21 Jun 2004 17:16:25 +0000 (19:16 +0200)]
array.c (gfc_insert_constructor): Avoid redundant call to mpz_comp.

* array.c (gfc_insert_constructor): Avoid redundant call to
mpz_comp. Add 2004 to copyright years.

From-SVN: r83442

20 years agojava-gimplify.c (java_gimplify_block): set TREE_USED on the new block.
Andrew Haley [Mon, 21 Jun 2004 16:55:07 +0000 (16:55 +0000)]
java-gimplify.c (java_gimplify_block): set TREE_USED on the new block.

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

* java-gimplify.c (java_gimplify_block): set TREE_USED on the new
block.

From-SVN: r83441

20 years agoObjectOutputStream.java: Add DEBUG statements everywhere.
Andrew Haley [Mon, 21 Jun 2004 16:52:14 +0000 (16:52 +0000)]
ObjectOutputStream.java: Add DEBUG statements everywhere.

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

* java/io/ObjectOutputStream.java: Add DEBUG statements
everywhere.
(dumpElementln): New method.
(depth): New field.
* java/io/ObjectInputStream.java
(currentClassLoader): Make native.
(callersClassLoader): New field.
(depth): New field.
(readObject): ENDBLOCKDATA is generated if the class has a write
method, not if it has a read method.
(readObject): Save and restore this.currentObject and
this.currentObjectStreamClass around calls to callReadMethod().
* java/io/natObjectInputStream.cc (getCallersClassLoader): New
method.

From-SVN: r83440

20 years agoAdding self to MAINTAINERS
Matthew Sachs [Mon, 21 Jun 2004 16:47:49 +0000 (16:47 +0000)]
Adding self to MAINTAINERS

From-SVN: r83439

20 years ago* encoding.c (BITS_PER_UNIT): Define if a definition is not provided.
Nick Clifton [Mon, 21 Jun 2004 16:39:21 +0000 (16:39 +0000)]
* encoding.c (BITS_PER_UNIT): Define if a definition is not provided.

From-SVN: r83438

20 years agoarm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Soft-float need not imply FPA.
Paul Brook [Mon, 21 Jun 2004 13:32:09 +0000 (13:32 +0000)]
arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Soft-float need not imply FPA.

* config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Soft-float need
not imply FPA.

From-SVN: r83434

20 years agofold-const.c (operand_equal_p): Pass flags in recursive calls for binary and relation...
Roger Sayle [Mon, 21 Jun 2004 12:59:58 +0000 (12:59 +0000)]
fold-const.c (operand_equal_p): Pass flags in recursive calls for binary and relational operations.

* fold-const.c (operand_equal_p): Pass flags in recursive calls for
binary and relational operations.  Add support for TRUTH_ANDIF_EXPR,
TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR.
* tree.c (commutative_tree_code): Also list UNORDERED_EXPR,
ORDERED_EXPR, UNEQ_EXPR, LTGT_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR
and TRUTH_XOR_EXPR.

From-SVN: r83433

20 years agortlanal.c (may_trap_p): Mark LTGT as trapping.
Paolo Bonzini [Mon, 21 Jun 2004 12:51:37 +0000 (12:51 +0000)]
rtlanal.c (may_trap_p): Mark LTGT as trapping.

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

* rtlanal.c (may_trap_p): Mark LTGT as trapping.

From-SVN: r83432

20 years agotree-alias-common.h (struct tree_alias_ops): Change ip and ip_partial to unsigned...
Joseph Myers [Mon, 21 Jun 2004 12:37:46 +0000 (13:37 +0100)]
tree-alias-common.h (struct tree_alias_ops): Change ip and ip_partial to unsigned int.

* tree-alias-common.h (struct tree_alias_ops): Change ip and
ip_partial to unsigned int.

fortran:
* trans.h (stmtblock_t): Change has_scope to unsigned int.

java:
* jcf.h (struct JCF): Change java_source, right_zip and finished
to unsigned int.
* lex.h (struct java_lexer): Change hit_eof, read_anything,
byte_swap and use_fallback to unsigned int.
* parse.h (struct _jdep): Change flag0 to unsigned int.

From-SVN: r83430

20 years agoc-common.c (verify_sequence_points): Export.
Richard Henderson [Mon, 21 Jun 2004 09:15:29 +0000 (02:15 -0700)]
c-common.c (verify_sequence_points): Export.

        * c-common.c (verify_sequence_points): Export.
        (c_expand_expr_stmt): Move to c-typeck.c.
        * c-common.h (c_expand_expr_stmt): Remove.
        (verify_sequence_points): Declare.
        * c-mudflap.c (mflang_flush_calls): Use c_finish_expr_stmt.
        * c-parse.in (for_init_stmt, stmt): Likewise.
        * c-tree.h (c_finish_expr_stmt): Declare.
        (c_tree_expr_nonnegative_p): Remove.
        * c-typeck.c (c_tree_expr_nonnegative_p): Remove.
        (build_conditional_expr, build_binary_op): Use tree_expr_nonnegative_p.
        (emit_side_effect_warnings): New.
        (c_finish_expr_stmt): Rename from c_expand_expr_stmt.  Use it.
        (c_finish_stmt_expr): Work without EXPR_STMT.  Handle eh regions.
        Use emit_side_effect_warnings.
        (push_cleanup): Copy STATEMENT_LIST_STMT_EXPR.
        * fold-const.c (tree_expr_nonnegative_p): Handle TARGET_EXPR.
        * gimplify.c (gimplify_modify_expr): Don't discard TARGET_EXPR
        with void initializer.
        (gimplify_target_expr): Handle void BIND_EXPR initializer.
        * tree-inline.c (estimate_num_insns_1): Fix type lookup for
        INIT_EXPR and MODIFY_EXPR.
        * objc/objc-act.c (build_module_descriptor): Use add_stmt
        instead of c_expand_expr_stmt.
cp/
        * semantics.c (finish_expr_stmt): Call verify_sequence_points.
testsuite/
        * gcc.dg/tree-ssa/20030714-1.c: Rename variables to avoid
        merging && to BIT_FIELD_REF.

From-SVN: r83429

20 years agofold-const.c (fold_cond_expr_with_comparison): New function, extracted from fold.
Paolo Bonzini [Mon, 21 Jun 2004 08:34:12 +0000 (08:34 +0000)]
fold-const.c (fold_cond_expr_with_comparison): New function, extracted from fold.

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

* fold-const.c (fold_cond_expr_with_comparison):
New function, extracted from fold.
(fold): Extract code to fold A op B ? A : C, use
it to fold A op B ? C : A.  Really optimize
A & N ? N : 0 where N is a power of two.  Avoid
relying on canonicalization and recursion for
foldings of COND_EXPR to happen.

From-SVN: r83428

20 years ago* g++.dg/opt/placeholder1.C: New test.
Richard Sandiford [Mon, 21 Jun 2004 06:32:29 +0000 (06:32 +0000)]
* g++.dg/opt/placeholder1.C: New test.

From-SVN: r83427

20 years agoobjc-act.h (get_object_reference): Rename to get_protocol_reference.
David Ayers [Mon, 21 Jun 2004 01:50:18 +0000 (03:50 +0200)]
objc-act.h (get_object_reference): Rename to get_protocol_reference.

2004-06-20  David Ayers  <d.ayers@inode.at>

* objc/objc-act.h (get_object_reference): Rename to
get_protocol_reference.
(super_type): Rename to objc_super_type.
(selector_type): Rename to objc_selector_type.
(id_type): Rename to objc_id_type.
(instance_type): Rename to objc_instance_type.
(protocol_type): Rename to objc_protocol_type.
(IS_ID): Update reference to id_type.
* objc/objc-act.c (get_object_reference): Rename to
get_protocol_reference; add documentation; update references to
id_type.
(lookup_method_in_protocol_list): Rename class_meth to
is_class; add documentation.
(finish_message_expr): Rename is_class to class_tree.
(synth_module_prologue, objc_is_object_ptr, objc_build_exc_ptr,
next_sjlj_build_try_catch_finally, objc_begin_catch_clause,
build_next_objc_exception_stuff, get_arg_type_list,
build_objc_method_call): Update references to id_type.
(synth_module_prologue, build_objc_symtab_template,
build_selector_reference_decl, build_selector,
build_selector_translation_table, build_typed_selector_reference,
get_arg_type_list, synth_self_and_ucmd_args, get_arg_type_list,
synth_self_and_ucmd_args): Update references to selector_type.
(build_private_template, build_ivar_reference): Update references
to instance_type.
(synth_module_prologue, build_protocol_reference,
build_protocol_expr, start_protocol): Update references to
protocol_type.
(synth_module_prologue, get_arg_type_list, build_objc_method_call):
Update references to super_type.
* c-parse.in: (typespec_nonreserved_nonattr): Update
references to get_object_reference.
* objc/objc-tree.def: Add C mode identifier sequence.

From-SVN: r83425

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

[[Split portion of a mixed commit.]]

From-SVN: r83423.2

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

[[Split portion of a mixed commit.]]

From-SVN: r83422.2

20 years agoloop-invariant.c: New file.
Zdenek Dvorak [Sun, 20 Jun 2004 21:31:32 +0000 (23:31 +0200)]
loop-invariant.c: New file.

* loop-invariant.c: New file.
* Makefile.in (loop-invariant.o): New.
* cfgloop.h (global_cost_for_size, init_set_costs,
move_loop_invariants): Declare.
* cfgloopanal.c (seq_cost, init_set_costs, global_cost_for_size): New
functions.
(avail_regs, res_regs, small_cost, pres_cost, spill_cost): New
variables.
* common.opt (floop-optimize2, fmove-loop-invariants): New options.
* loop-init.c (loop_optimizer_init): Call init_set_costs.
* passes.c (rest_of_handle_loop2): Call move_loop_invariants.
(rest_of_compilation): Check flag_loop_optimize2.
* toplev.c (process_options): Handle flag_loop_optimize2.
* doc/invoke.texi (-floop-optimize2, -fmove-loop-invariants): Document.
* doc/passes.texi (loop-invariant.c): Document.

From-SVN: r83419

20 years ago* tree-ssa-pre.c (compute_antic): Keep BB_VISITED flag zeroed.
Zdenek Dvorak [Sun, 20 Jun 2004 21:12:55 +0000 (23:12 +0200)]
* tree-ssa-pre.c (compute_antic): Keep BB_VISITED flag zeroed.

From-SVN: r83418

20 years agoarith.c (gfc_range_check): correct complex underflow.
Steven G. Kargl [Sun, 20 Jun 2004 18:34:25 +0000 (18:34 +0000)]
arith.c (gfc_range_check): correct complex underflow.

2004-06-20  Steven G. Kargl  <kargls@comcast.net>

* arith.c (gfc_range_check): correct complex underflow.

From-SVN: r83417

20 years agostmt.c (warn_if_unused_value): Add locus argument.
Richard Henderson [Sun, 20 Jun 2004 17:16:27 +0000 (10:16 -0700)]
stmt.c (warn_if_unused_value): Add locus argument.

        * stmt.c (warn_if_unused_value): Add locus argument.
        * tree.h (warn_if_unused_value): Update decl.
        * c-typeck.c (internal_build_compound_expr): Update call.
        * c-gimplify.c (gimplify_expr_stmt): Likewise.

From-SVN: r83416

20 years agore PR middle-end/16089 (unwind-dw2.c:1311: error: insn outside basic block)
Andrew Pinski [Sun, 20 Jun 2004 17:03:04 +0000 (17:03 +0000)]
re PR middle-end/16089 (unwind-dw2.c:1311: error: insn outside basic block)

2004-06-20  Andrew Pinski  <pinskia@physics.uc.edu>

        PR middle-end/16089
        * builtins.c (entry_of_function): Move to ...
        * cfgrtl.c (entry_of_function): Here and make non-static.
        * integrate.c (emit_initial_value_sets): Use entry_of_function.
        * rtl.h (entry_of_function): Prototype.

From-SVN: r83415

20 years agoi386.c (pentium4_cost): Increase "lea" cost from 1 to 3.
Roger Sayle [Sun, 20 Jun 2004 15:10:34 +0000 (15:10 +0000)]
i386.c (pentium4_cost): Increase "lea" cost from 1 to 3.

* config/i386/i386.c (pentium4_cost): Increase "lea" cost from 1 to 3.
(ix86_rtx_costs) <ASHIFT, PLUS>: Consider ix86_cost->lea even when
TARGET_DECOMPOSE_LEA.

From-SVN: r83413

20 years agostruct-complex-1_x.c: Add dummy symbol.
Eric Botcazou [Sun, 20 Jun 2004 12:46:33 +0000 (14:46 +0200)]
struct-complex-1_x.c: Add dummy symbol.

* gcc.dg/compat/struct-complex-1_x.c: Add dummy symbol.
* gcc.dg/compat/struct-complex-1_y.c: Likewise.
* gcc.dg/compat/union-m128-1_x.c: Likewise.
* gcc.dg/compat/union-m128-1_y.c: Likewise.

From-SVN: r83411

20 years agodecl.c (elaborate_expression, [...]): Arguments now bool instead of int.
Richard Kenner [Sun, 20 Jun 2004 11:19:47 +0000 (11:19 +0000)]
decl.c (elaborate_expression, [...]): Arguments now bool instead of int.

* decl.c (elaborate_expression, elaborate_expression_1): Arguments
now bool instead of int.
(gnat_to_gnu_entity, elaborate_expression_1): New arg to COMPONENT_REF.
* trans.c (gnu_switch_label_stack): New function.
(gnat_to_gnu, N_Object_Renaming_Declaration): Result is what the
elaboration of renamed entity returns.
(gnat_to_gnu, case N_Case_Statement): Add branches to end label.
(add_decl_stmt): Don't add TYPE_DECL for UNCONSTRAINED_ARRAY_TYPE.
(gnat_gimplify_stmt): Use alloc_stmt_list, not build_empty_stmt.
(gnat_gimplify_stmt, case DECL_STMT): gimplify DECL_SIZE and
DECL_SIZE_UNIT and simplify variable-sized case.
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
Callers changes to call gimplify_type_sizes and gimplify_one_sizepos.
(gnat_stabilize_reference): Add arg to COMPONENT_REF.
(build_unit_elab): Disable for now.
* utils.c (mark_visited): New function.
(pushdecl): Walk tree to call it for global decl.
(update_pointer_to): Update all variants of pointer and ref types.
Add arg to COMPONENT_REF.
(convert): Likewise.
Move check for converting between variants lower down.
* utils2.c (build_simple_component_ref): Add arg to COMPONENT_REF.
(build_allocator): Don't force type of MODIFY_EXPR.
(gnat_mark_addressable, case VAR_DECL): Unconditionally call
put_var_into_stack.

From-SVN: r83410

20 years agoc-common.h (add_decl_stmt): Move to cp-tree.h.
Richard Henderson [Sun, 20 Jun 2004 10:10:02 +0000 (03:10 -0700)]
c-common.h (add_decl_stmt): Move to cp-tree.h.

        * c-common.h (add_decl_stmt): Move to cp-tree.h.
        * c-decl.c (finish_decl): Don't use add_decl_stmt.
        * c-parse.in: Likewise.
        * c-gimplify.c (gimplify_expr_stmt): Don't build CLEANUP_POINT_EXPR.
        (gimplify_c_loop, gimplify_return_stmt, gimplify_decl_stmt): Likewise.
        * c-semantics.c (add_decl_stmt): Move to cp/semantics.c.
cp/
        * cp-tree.h (add_decl_stmt): Declare.
        * pt.c (tsubst_copy): Abort for CLEANUP_POINT_EXPR.
        * semantics.c (maybe_cleanup_point_expr): New.
        (add_decl_stmt, finish_expr_stmt, finish_return_stmt,
        finish_for_expr, finish_switch_cond): Use it.
        (finalize_nrv_r): Don't build an EXPR_STMT.  Don't frob TREE_CHAIN.

From-SVN: r83409

20 years ago3.cc: New.
Paolo Carlini [Sun, 20 Jun 2004 09:42:39 +0000 (09:42 +0000)]
3.cc: New.

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

* testsuite/27_io/basic_istream/ignore/char/3.cc: New.

From-SVN: r83408

20 years agoc-common.def (IF_STMT, [...]): Move to cp-tree.def.
Richard Henderson [Sun, 20 Jun 2004 09:18:13 +0000 (02:18 -0700)]
c-common.def (IF_STMT, [...]): Move to cp-tree.def.

        * c-common.def (IF_STMT, CLEANUP_STMT): Move to cp-tree.def.
        * c-common.h (IF_COND, THEN_CLAUSE, ELSE_CLAUSE, CLEANUP_BODY,
        CLEANUP_EXPR, CLEANUP_DECL): Move to cp-tree.h.
        (c_common_stmt_codes): Remove IF_STMT, CLEANUP_STMT.
        * c-dump.c (c_dump_tree): Move IF_STMT, CLEANUP_STMT to cp_dump_tree.
        * c-pretty-print.c (pp_c_statement): Similarly.
        * c-gimplify.c (gimplify_cleanup_stmt, gimplify_cleanup_stmts,
        gimplify_if_stmt): Move to cp-gimplify.c.
        (c_genericize, c_gimplify_expr): Don't call them.
        * c-semantics.c (push_cleanup): Move to cp/semantics.c.
        * c-typeck.c (push_cleanup): New.
        (c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_finish_else,
        c_finish_if_stmt): Use COND_EXPR.
        * tree.h (CLEANUP_EH_ONLY): Update documentation.
cp/
        * cp-tree.def (CLEANUP_STMT, IF_STMT): Move from c-common.def.
        * cp-gimplify.c (gimplify_if_stmt): Move from c-gimplify.c.
        (cp_gimplify_expr): Call it.
        (gimplify_cleanup_stmt): Move from c-gimplify.c.
        (cp_genericize): New.
        * decl.c (finish_function): Call it.
        * cp-tree.h (cp_stmt_codes): Add CLEANUP_STMT, IF_STMT.
        (CLEANUP_BODY, CLEANUP_EXPR, CLEANUP_DECL): Move from c-common.h.
        (IF_COND, THEN_CLAUSE, ELSE_CLAUSE): Likewise.
        (cp_genericize): Declare.
        * cxx-pretty-print.c (pp_cxx_statement): Add CLEANUP_STMT, IF_STMT.
        * dump.c (cp_dump_tree): Likewise.
        * semantics.c (push_cleanup): Move from c-semantics.c.

From-SVN: r83407

20 years agoMakefile.am: Add rule for .S files to fix bootstrap on solaris and alpha.
Andreas Tobler [Sun, 20 Jun 2004 09:14:17 +0000 (11:14 +0200)]
Makefile.am: Add rule for .S files to fix bootstrap on solaris and alpha.

2004-06-20  Andreas Tobler  <a.tobler@schweiz.ch>

* Makefile.am: Add rule for .S files to fix bootstrap on
solaris and alpha.
* Makefile.in: Regenerate.

From-SVN: r83406

20 years agoc-common.h (has_c_linkage): New interface.
Zack Weinberg [Sun, 20 Jun 2004 08:34:54 +0000 (08:34 +0000)]
c-common.h (has_c_linkage): New interface.

* c-common.h (has_c_linkage): New interface.
* c-cppbuiltin.c: Include target.h.
(c_cpp_builtins): Define __PRAGMA_REDEFINE_EXTNAME and
__PRAGMA_EXTERN_PREFIX when appropriate.
* c-pragma.c: Include target.h.
Document clarified semantics of symbol-renaming #pragmas.
(handle_pragma_redefine_extname, handle_pragma_extern_prefix)
(maybe_apply_renaming_pragma): Rewrite according to clarified
semantics.  Always recognize, but do not necessarily execute.
(init_pragma): Unconditionally register symbol-renaming pragmas.
* system.h: Poison HANDLE_PRAGMA_REDEFINE_EXTNAME
and HANDLE_PRAGMA_EXTERN_PREFIX.
* target.h (struct gcc_target): Add handle_pragma_redefine_extname
and handle_pragma_extern_prefix flags.
* target-def.h: Add defaults for TARGET_HANDLE_PRAGMA_REDEFINE_EXTNAME
and TARGET_HANDLE_PRAGMA_EXTERN_PREFIX.
* Makefile.in (c-pragma.o, c-cppbuiltin.o): Update dependencies.
* config/sol2.h: Define TARGET_HANDLE_PRAGMA_REDEFINE_EXTNAME,
not HANDLE_PRAGMA_REDEFINE_EXTNAME.
(TARGET_OS_CPP_BUILTINS): No need to define __PRAGMA_REDEFINE_EXTNAME.
(TRANSFER_FROM_TRAMPOLINE): Prototype mprotect.
* config/alpha/osf.h: Define TARGET_HANDLE_PRAGMA_EXTERN_PREFIX,
not HANDLE_PRAGMA_EXTERN_PREFIX.
(TARGET_OS_CPP_BUILTINS): No need to define __PRAGMA_EXTERN_PREFIX.
* doc/extend.texi (Solaris Pragmas, Tru64 Pragmas): Combine
into one section "Symbol-Renaming Pragmas"; clarify; document
adjusted semantics.

* builtins.c (expand_builtin): Do not issue error for a builtin
with no special case code and no DECL_ASSEMBLER_NAME; just do the
library call.
* c-decl.c (builtin_function): Don't call make_decl_rtl.
* c-objc-common.c (has_c_linkage): Stub implementation.
* cgraphunit.c (cgraph_expand_function)
(cgraph_remove_unreachable_nodes): Don't clear DECL_ARGUMENTS.

cp:
* cp-lang.c (has_c_linkage): Implement.

* cp-tree.h (set_mangled_name_for_decl): Don't prototype.
* decl.c (duplicate_decls): Use COPY_DECL_RTL.
(builtin_function_1): Don't call make_decl_rtl.
(build_cp_library_fn): Don't call set_mangled_name_for_decl.
(grokvardecl): Don't call mangle_decl.
* except.c (nothrow_libfn_p): Look at DECL_NAME, not
DECL_ASSEMBLER_NAME.
* method.c (set_mangled_name_for_decl): Delete.
* name-lookup.c (pushdecl): When a local extern shadows a
file-scope declaration of the same object, give both DECLs the
same DECL_UID.
* typeck.c (cxx_mark_addressable): Don't set TREE_ADDRESSABLE
on DECL_ASSEMBLER_NAME.

testsuite:
* g++.dg/expr/enum1.C, g++.dg/opt/const3.C: Declare abort with
extern "C".
* g++.dg/other/pragma-re-1.C: Add comments.

From-SVN: r83405

20 years agobuiltins.c (fold_builtin_unordered_cmp): Take an EXP argument instead of both an...
Roger Sayle [Sun, 20 Jun 2004 03:56:05 +0000 (03:56 +0000)]
builtins.c (fold_builtin_unordered_cmp): Take an EXP argument instead of both an ARGLIST and a result TYPE.

* builtins.c (fold_builtin_unordered_cmp): Take an EXP argument
instead of both an ARGLIST and a result TYPE.  Handle these C99
comparison functions as "polymorphic" builtins.  Also handle
lowering of BUILT_IN_ISUNORDERED to an UNORDERED_EXPR tree node.
(fold_builtin_1): Update calls to fold_builtin_unordered_cmp.
Move handling of BUILT_IN_ISUNORDERED from here to there.

From-SVN: r83404

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

[[Split portion of a mixed commit.]]

From-SVN: r83402.2

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

[[Split portion of a mixed commit.]]

From-SVN: r83401.2

20 years agoTidied up/fixed compilation of exception.c
Alexander Malmberg [Sat, 19 Jun 2004 23:46:27 +0000 (23:46 +0000)]
Tidied up/fixed compilation of exception.c

From-SVN: r83399

20 years agoc-common.c, c-common.h (lang_gimplify_stmt): Remove.
Richard Henderson [Sat, 19 Jun 2004 19:34:23 +0000 (12:34 -0700)]
c-common.c, c-common.h (lang_gimplify_stmt): Remove.

        * c-common.c, c-common.h (lang_gimplify_stmt): Remove.
        * c-gimplify.c: Remove unnecessary prototypes.
        (c_gimplify_stmt): Merge into ...
        (c_gimplify_expr): ... here.  Don't play with prep_stmt.
        * c-semantics.c (prep_stmt): Remove.
        * gimplify.c (annotate_one_with_locus): Break out from ...
        (annotate_all_with_locus): ... here.
        (gimplify_expr): Add locus to expressions even if pre/post queues
        are not present.
cp/
        * cp-gimplify.c: Remove unnecessary prototypes.
        (cp_gimplify_stmt): Merge into ...
        (cp_gimplify_expr): ... here.  Move to end of file.  Handle
        stmts_are_full_exprs_p frobbing.
        * cp-tree.h (cp_gimplify_stmt): Remove.
        * pt.c (tsubst_expr): Merge prep_stmt and unify.
        * tree.c (init_tree): Don't set lang_gimplify_stmt.

From-SVN: r83397

20 years agore PR target/15941 (new fails gcc.dg/compat/struct-by-value-11 and gcc.dg/compat...
Richard Henderson [Sat, 19 Jun 2004 19:24:56 +0000 (12:24 -0700)]
re PR target/15941 (new fails gcc.dg/compat/struct-by-value-11 and gcc.dg/compat/struct-by-value-1)

PR target/15941
* function.c (assign_parms): If not padding upward or intentionally
forcing upward padding, take offset_rtx into account when determining
the alignment for stack_parm.

From-SVN: r83396

20 years agore PR target/15550 ([i386] ICE in extract_insn, at recog.c:2083)
Richard Henderson [Sat, 19 Jun 2004 19:13:03 +0000 (12:13 -0700)]
re PR target/15550 ([i386] ICE in extract_insn, at recog.c:2083)

        PR target/15550
        * ifcvt.c (noce_try_move): Recognize all generated instructions.

From-SVN: r83395

20 years agofunction.c (free_after_compilation): Do not free computed_goto_common*.
Jan Hubicka [Sat, 19 Jun 2004 18:52:04 +0000 (20:52 +0200)]
function.c (free_after_compilation): Do not free computed_goto_common*.

* function.c (free_after_compilation): Do not free computed_goto_common*.
* function.h (struct function): Kill computed_goto_common*.
* stmt.c (expand_computed_goto): Do not commonize the computed gotos.
* tree-cfg.c (disband_implicit_edges): Do not forward across the
commonized computed goto.

From-SVN: r83393

20 years agoinvoke.texi: Remove obsolete comment regarding PA 2.0 support in binutils.
John David Anglin [Sat, 19 Jun 2004 17:29:00 +0000 (17:29 +0000)]
invoke.texi: Remove obsolete comment regarding PA 2.0 support in binutils.

* doc/invoke.texi: Remove obsolete comment regarding PA 2.0 support
in binutils.

From-SVN: r83391

20 years agore PR libfortran/16080 (segmentation fault when reading empty string)
Bud Davis [Sat, 19 Jun 2004 17:03:16 +0000 (17:03 +0000)]
re PR libfortran/16080 (segmentation fault when reading empty string)

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

        PR gfortran/16080
        * io/list_read.c(set_value): fixed spelling.

From-SVN: r83389

20 years agore PR libfortran/16080 (segmentation fault when reading empty string)
Bud Davis [Sat, 19 Jun 2004 16:42:05 +0000 (16:42 +0000)]
re PR libfortran/16080 (segmentation fault when reading empty string)

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

      PR gfortran/16080
      * gfortran.fortran-torture/execute/read_null_string.f90: New file.
      * io/list_read.c(set_value): don't copy if the string is null.

From-SVN: r83388

20 years agocrash3.C: Use __SIZE_TYPE__ instead of setting the type of size_t by hand.
Andrew Pinski [Sat, 19 Jun 2004 16:33:50 +0000 (16:33 +0000)]
crash3.C: Use __SIZE_TYPE__ instead of setting the type of size_t by hand.

2004-06-19  Andrew Pinski  <pinskia@physics.uc.edu>

        * g++.dg/lookup/crash3.C: Use __SIZE_TYPE__
        instead of setting the type of size_t by
        hand.

From-SVN: r83387

20 years agore PR c++/15721 (template instantation omits static data members)
Andrew Pinski [Sat, 19 Jun 2004 16:16:59 +0000 (16:16 +0000)]
re PR c++/15721 (template instantation omits static data members)

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

        PR c++/15721
        * toplev.c (wrapup_global_declarations): Do not check
        TREE_SYMBOL_REFERENCED of the DECL_ASSEMBLER_NAME but check
        cgraph_varpool_node's needed field.

From-SVN: r83386

20 years agoCFG transparent RTL expansion:
Jan Hubicka [Sat, 19 Jun 2004 15:33:06 +0000 (15:33 +0000)]
CFG transparent RTL expansion:

* Makefile.in (cfgexpand.o): New object file.
(builtins.o): Add dependency on basic-block.h
* builtins.c: Include basic-block.h
(entry_of_function): New function.
(expand_builtin_apply_args, expand_builtin_saveargs): Use it.
* cfgexpand.c: New file.
* expr.c (execute_expand, pass_expand): Kill.
* pass.c (rest_of_compilation): Do not build CFG unless called from
coverage code.
* tree-cfg.c (delete_tree_cfg): Rename to..
(delete_tree_cfg_annotations): ... this one; Do not remove the CFG itself.
* tree-flow.h (delete_tree_cfg_annotations): Declare.
(dleete_tree_cfg): Kill.
* tree-optimize.c (execute_rebuild_bind, pass_rebuild_bind): Kill.
(execute_del_cfg): Rename to...
(execute_free_datastructures): This one...
(pass_del_cfg): Rename to...
(pass_free_datastructures): ... this one; Do not kill PROP_cfg.
(init_tree_optimization_passes): Make cfg build and profiling to happen
unconditionally.

* tree-mudflap.c (mf_decl_cache_locals): Skip labels before
inserting the cache variables.

* tree-mudflap.c: Include headers to make basic_block available.
Move functions around such that related functions are near each
other.  Add prototypes for all static functions.  Add comments
briefly explaining what IR the mudflap1 and mudflap2 work on and
what they do.
(mudflap_function_decls): Rename to execute_mudflap_function_decls.
(mudflap_function_ops): Rename to execute_mudflap_function_ops.
(pass_mudflap_1, pass_mudflap_2): Update.
(mf_decl_cache_locals): Make it work on the CFG instead of the saved
function tree.
(mf_build_check_statement_for): Make it work on the CFG.
(mf_xform_derefs_1): Likewise.  Cleanup code style.
(mf_xform_derefs): Likewise.

* tree-cfg.c (label_to_block): Invent the label destination for
undefined labels.
(cleanup_dead_labels): Update table in the case label_to_block added
new label.

From-SVN: r83385

20 years agore PR c++/16036 (Spurious "may be used uninitialized in this function" warning)
Richard Henderson [Sat, 19 Jun 2004 05:39:14 +0000 (22:39 -0700)]
re PR c++/16036 (Spurious "may be used uninitialized in this function" warning)

        PR c++/16036
        * gimple-low.c (lower_function_body): Generate return statement for
        fall off the end of the function here ...
        * tree-cfg.c (make_edges): ... instead of here.
        * gimplify.c (gimplify_return_expr): Mark return temp TREE_NO_WARNING.

From-SVN: r83382

This page took 0.110789 seconds and 5 git commands to generate.