gcc.git
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

20 years agotree-ssa.c (raise_value): Removed.
Zdenek Dvorak [Sat, 19 Jun 2004 01:52:12 +0000 (03:52 +0200)]
tree-ssa.c (raise_value): Removed.

* tree-ssa.c (raise_value): Removed.
(get_eq_name, check_phi_redundancy): New functions.
(kill_redundant_phi_nodes): Use standard ssa minimalization algorithm.

From-SVN: r83380

20 years agofold-const.c (fold): Add constant folding for unordered comparison tree nodes.
Roger Sayle [Sat, 19 Jun 2004 00:17:33 +0000 (00:17 +0000)]
fold-const.c (fold): Add constant folding for unordered comparison tree nodes.

* fold-const.c (fold) <UNORDERED_EXPR, ORDERED_EXPR, UNLT_EXPR,
UNLE_EXPR, UNGT_EXPR, UNGE_EXPR, UNEQ_EXPR, LTGT_EXPR>: Add
constant folding for unordered comparison tree nodes.  If both
operands are real constants, call fold_relational_const.  If either
operand is a NaN, evaluate the other for side-effects and return a
constant.  Optimize (double)float1 CMP (double)float2 into the
equivalent float1 CMP float2.
(nondestructive_fold_binary_to_constant) <UNORDERED_EXPR,
ORDERED_EXPR, UNLT_EXPR, UNLE_EXPR, UNGT_EXPR, UNGE_EXPR, UNEQ_EXPR,
LTGT_EXPR>: Call fold_relational_const for constant operands.
(fold_relational_const): Add support for unordered comparison tree
nodes.  Don't constant fold "ordered" floating point comparisons
against NaN if when flag_trapping_math is set.

* gcc.dg/unordered-2.c: New test case.
* gcc.dg/unordered-3.c: New test case.

From-SVN: r83379

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

[[Split portion of a mixed commit.]]

From-SVN: r83377.2

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

[[Split portion of a mixed commit.]]

From-SVN: r83376.2

20 years agore PR other/16043 ([3.4 only] gcc version not reported with "enable-version-specific...
David Billinghurst [Fri, 18 Jun 2004 23:48:45 +0000 (23:48 +0000)]
re PR other/16043 ([3.4 only] gcc version not reported with "enable-version-specific-runtime-libs" to gcc-testresults)

2004-06-19  David Billinghurst (David.Billinghurst@riotinto.com)

PR other/16043
* lib/g++.exp (g++_version): Tweak regexp for version
* lib/g77.exp (g77_version): Likewise
* lib/gfortran.exp (gfortran_version): Likewise
* lib/objc.exp (objc_version): Likewise
* lib/treelang.exp (treelang_version): Likewise

From-SVN: r83374

20 years agomt_allocator (__mt_alloc<>::_Tune): Add _M_align, the alignment requested.
Paolo Carlini [Fri, 18 Jun 2004 23:27:30 +0000 (23:27 +0000)]
mt_allocator (__mt_alloc<>::_Tune): Add _M_align, the alignment requested.

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

* include/ext/mt_allocator (__mt_alloc<>::_Tune): Add _M_align,
the alignment requested.
(__mt_alloc<>::_Tune::_Tune): Tweak consistently.
(__mt_alloc<>::allocate): Use it instead of sizeof(_Block_record).
(__mt_alloc<>::deallocate): Likewise.

From-SVN: r83372

20 years agostruct-align-2_x.c: Include <limits.h>.
Jakub Jelinek [Fri, 18 Jun 2004 23:20:34 +0000 (01:20 +0200)]
struct-align-2_x.c: Include <limits.h>.

* gcc.dg/compat/struct-align-2_x.c: Include <limits.h>.
Use INT_MAX instead of __INT_MAX__.
* gcc.dg/compat/struct-align-2_y.c: Likewise.

From-SVN: r83371

20 years agocompat-common.h (CINT, CDBL): Define.
Jakub Jelinek [Fri, 18 Jun 2004 23:18:04 +0000 (01:18 +0200)]
compat-common.h (CINT, CDBL): Define.

* gcc.dg/compat/compat-common.h (CINT, CDBL): Define.
* gcc.dg/compat/scalar-return-3_x.c: Use it.
* gcc.dg/compat/scalar-return-3_y.c: Use it.
* gcc.dg/compat/scalar-return-4_x.c: Use it.
* gcc.dg/compat/scalar-return-4_y.c: Use it.
* gcc.dg/compat/scalar-by-value-3_x.c: Use it.
* gcc.dg/compat/scalar-by-value-3_y.c: Use it.
* gcc.dg/compat/scalar-by-value-4_x.c: Use it.
* gcc.dg/compat/scalar-by-value-4_y.c: Use it.

From-SVN: r83370

20 years agofold-const.c (build_range_check): If !in_p and recursive call fails, exit immediately.
Jakub Jelinek [Fri, 18 Jun 2004 23:15:59 +0000 (01:15 +0200)]
fold-const.c (build_range_check): If !in_p and recursive call fails, exit immediately.

* fold-const.c (build_range_check): If !in_p and recursive call
fails, exit immediately.  If high - low overflows and etype is
a signed type, retry with unsigned etype.
(merge_ranges): If !in0_p and !in1_p, handle even range2 adjacent
to range1 at TYPE_MAX_VALUE and TYPE_MIN_VALUE.

* gcc.dg/range-test-1.c: New test.
* g++.dg/opt/range-test-1.C: New test.

From-SVN: r83369

20 years agore PR c++/16034 (dtor called prematurely for while-loop scoped variable)
Richard Henderson [Fri, 18 Jun 2004 22:51:57 +0000 (15:51 -0700)]
re PR c++/16034 (dtor called prematurely for while-loop scoped variable)

        PR c++/16034
        * c-gimplify.c (gimplify_condition): Remove.
        (gimplify_c_loop, gimplify_if_stmt, gimplify_switch_stmt): Don't
        call it.
cp/
        * semantics.c (begin_cond): New.
        (finish_cond): Rewrite to handle template DECL_STMTs specially.
        Assume that non-template decls go land before the conditional.
        (simplify_loop_decl_cond): Likewise.
        (begin_if_stmt, finish_if_stmt_cond, begin_while_stmt,
        finish_while_stmt_cond, finish_for_init_stmt, finish_for_cond,
        begin_switch_stmt, finish_switch_cond): Update to match.

From-SVN: r83368

20 years agotree-eh.c (decide_copy_try_finally): Fix scaling of copy and switch estimates.
Richard Henderson [Fri, 18 Jun 2004 22:32:49 +0000 (15:32 -0700)]
tree-eh.c (decide_copy_try_finally): Fix scaling of copy and switch estimates.

        * tree-eh.c (decide_copy_try_finally): Fix scaling of copy and
        switch estimates.

From-SVN: r83367

20 years agodarwin.h (HOT_TEXT_SECTION_NAME): Define.
Andrew Pinski [Fri, 18 Jun 2004 21:12:22 +0000 (21:12 +0000)]
darwin.h (HOT_TEXT_SECTION_NAME): Define.

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

        * config/i386/darwin.h (HOT_TEXT_SECTION_NAME): Define.
        (NORMAL_TEXT_SECTION_NAME): Define.
        (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Define.
        (SECTION_FORMAT_STRING): Define.

From-SVN: r83363

20 years agojni.exp (gcj_jni_test_one): Add lgcc_s for darwin.
Andreas Tobler [Fri, 18 Jun 2004 20:56:56 +0000 (22:56 +0200)]
jni.exp (gcj_jni_test_one): Add lgcc_s for darwin.

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

* testsuite/libjava.jni/jni.exp (gcj_jni_test_one): Add lgcc_s for
darwin.

From-SVN: r83360

20 years ago* config/xtensa/xtensa.c
Steven Bosscher [Fri, 18 Jun 2004 19:38:27 +0000 (19:38 +0000)]
* config/xtensa/xtensa.c
(TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define.
* xtensa.md: Replace the old pipeline description with a DFA model.

From-SVN: r83358

20 years agore PR libstdc++/16020 (cannot copy __gnu_debug::bitset)
Paolo Carlini [Fri, 18 Jun 2004 17:13:35 +0000 (17:13 +0000)]
re PR libstdc++/16020 (cannot copy __gnu_debug::bitset)

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

PR libstdc++/16020
* include/debug/safe_base.h
(_Safe_sequence_base::_Safe_sequence_base(const _Safe_sequence_base&),
_Safe_sequence_base::operator=): Provide definitions.
* testsuite/23_containers/bitset/cons/16020.cc: New.

From-SVN: r83357

20 years agopool_allocator.h: Qualify __throw_bad_alloc.
Benjamin Kosnik [Fri, 18 Jun 2004 16:52:42 +0000 (16:52 +0000)]
pool_allocator.h: Qualify __throw_bad_alloc.

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

* include/ext/pool_allocator.h: Qualify __throw_bad_alloc.
(__pool_base): Remove unused template parameter.  Add
protected. Move lock data into __pool_base::_Lock. Remove static
on member functions.
(__pool_base::_M_get_free_list): New.
(__pool_alloc): Move _S_force new here.
* src/allocator.cc: Move out of line __pool_base definitions here.
* config/linker-map.gnu: Export bits from __pool_base.

From-SVN: r83355

20 years agos390.md: Remove the generic pipeline description.
Steven Bosscher [Fri, 18 Jun 2004 14:27:25 +0000 (14:27 +0000)]
s390.md: Remove the generic pipeline description.

* config/s390/s390.md: Remove the generic pipeline description.
* config/s390/2064.md: Make all insn reservations apply to
the z900, g5 and g6.
* config/s390/s390.c (s390_use_dfa_pipeline_interface): Remove.
(TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE):
Define to hook_int_void_1.
(s390_adjust_cost): Cleanup.  Don't check address dependency here.
(s390_first_cycle_multipass_dfa_lookahead):

Co-Authored-By: Ulrich Weigand <uweigand@de.ibm.com>
From-SVN: r83350

20 years agotree-dfa.c (create_var_ann): tree_ann -> tree_ann_t.
Daniel Berlin [Fri, 18 Jun 2004 14:05:20 +0000 (14:05 +0000)]
tree-dfa.c (create_var_ann): tree_ann -> tree_ann_t.

2004-06-18  Daniel Berlin  <dberlin@dberlin.org>
Diego Novillo  <dnovillo@redhat.com>

* tree-dfa.c (create_var_ann): tree_ann -> tree_ann_t.
(create_stmt_ann): Ditto.
(create_tree_ann): New function.
(create_cst_ann): Remove.
(create_expr_ann): Ditto.

* tree-flow-inline.h (cst_ann): Remove.
(get_cst_ann): Ditto.
(get_expr_ann): Ditto.
(expr_ann): Ditto.
(get_tree_ann): New function.
(tree_ann): Ditto.
(ann_type): tree_ann -> tree_ann_t.
* tree-flow.h (tree_ann_type): CST_ANN, EXPR_ANN removed.
(struct cst_ann_d): Removed.
(struct expr_ann_d): Ditto.
(union tree_ann_d): Removed cst and expr.
(tree_ann): Renamed to tree_ann_t.
* tree-ssa-ccp.c (set_rhs): tree_ann -> tree_ann_t.
* tree-ssa-pre.c (get_value_handle): Rewrite for single common
annotation.
(set_value_handle): Ditto.
(phi_translate): Ditto.
* tree-tailcall.c (adjust_return_value): tree_ann -> tree_ann_t.

Co-Authored-By: Diego Novillo <dnovillo@redhat.com>
From-SVN: r83349

20 years agoprims.cc (_Jv_CreateJavaVM): Install SEGV and FPE handlers...
Ranjit Mathew [Fri, 18 Jun 2004 13:59:04 +0000 (13:59 +0000)]
prims.cc (_Jv_CreateJavaVM): Install SEGV and FPE handlers...

* prims.cc (_Jv_CreateJavaVM): Install SEGV and FPE handlers,
if desired, before the default class loader is initialised.
Call INIT_SEGV only if HANDLE_SEGV is defined.

From-SVN: r83348

20 years agoVMClassLoader.java (init): Add extensions directory only if it actually exists.
Ranjit Mathew [Fri, 18 Jun 2004 13:53:19 +0000 (13:53 +0000)]
VMClassLoader.java (init): Add extensions directory only if it actually exists.

        * gnu/gcj/runtime/VMClassLoader.java (init): Add extensions
        directory only if it actually exists.

From-SVN: r83347

20 years ago2004-06-18 Paolo Carlini <pcarlini@suse.de>
Paolo Carlini [Fri, 18 Jun 2004 10:54:44 +0000 (10:54 +0000)]
2004-06-18  Paolo Carlini  <pcarlini@suse.de>

* config/locale/gnu/numeric_members.cc
(numpunct<wchar_t>::_M_initialize_numpunct): Clean up
assignments of _M_decimal_point and _M_thousands_sep.
* config/locale/gnu/time_members.cc
(__timepunct<wchar_t>::_M_initialize_timepunct): Clean up
and reformat assignments of date and time fields.

From-SVN: r83346

20 years agot-linux64: New file.
Kaz Kojima [Fri, 18 Jun 2004 09:40:34 +0000 (09:40 +0000)]
t-linux64: New file.

* config/sh/t-linux64: New file.
* config.gcc: Add it to tmake_file for sh64*-*-linux*.

From-SVN: r83343

20 years ago[multiple changes]
Graydon Hoare [Fri, 18 Jun 2004 08:30:38 +0000 (08:30 +0000)]
[multiple changes]

2004-06-18  Graydon Hoare  <graydon@redhat.com>

* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c:
Fix up non-ansi comments.

2004-06-18  Ranjit Mathew  <rmathew@hotmail.com>

* javax/swing/text/AbstractDocument.java: Adding missing import
for javax.swing.event.EventListenerList.
* javax/swing/text/DefaultCaret.java: Likewise.

From-SVN: r83342

20 years agoemit-rtl.c (unshare_all_rtl_1): New name of unshare_all_rtl.
Paolo Bonzini [Fri, 18 Jun 2004 07:33:08 +0000 (07:33 +0000)]
emit-rtl.c (unshare_all_rtl_1): New name of unshare_all_rtl.

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

* emit-rtl.c (unshare_all_rtl_1): New name of unshare_all_rtl.
(unshare_all_rtl_again): Call unshare_all_rtl_1.
(unshare_all_rtl): New.
* function.c (instantiate_virtual_regs): Remove parameters.
* function.h (instantiate_virtual_regs): Add prototype.
* rtl.h (unshare_all_rtl): Add prototype.
* tree.h (instantiate_virtual_regs, unshare_all_rtl): Remove
prototype.
* passes.c: Remove assertions on the parameters to
rest_of_handle_* functions.  Remove the parameters to
the functions, replacing decl with current_function_decl
and insns with get_insns ().

From-SVN: r83341

20 years agofix bootstrap build breakage
Graydon Hoare [Fri, 18 Jun 2004 06:53:23 +0000 (06:53 +0000)]
fix bootstrap build breakage

From-SVN: r83340

20 years agofix bootstrap breakage
Graydon Hoare [Fri, 18 Jun 2004 05:50:58 +0000 (05:50 +0000)]
fix bootstrap breakage

From-SVN: r83339