OSDN Git Service

18 years ago* include/bits/istream.tcc (getline): Make sure arguments passed
aoliva [Tue, 22 Jun 2004 22:22:14 +0000 (22:22 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83522 138bc75d-0d04-0410-961f-82ee72b054a4

18 years agofix
jason [Tue, 22 Jun 2004 21:45:54 +0000 (21:45 +0000)]

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83517 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR target/15869
rsandifo [Tue, 22 Jun 2004 21:28:05 +0000 (21:28 +0000)]
PR target/15869
* config/mips/mips.c (mips_avoid_hazards): Call split_all_insns_noflow.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83516 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-22 Kelley Cook <kcook@gcc.gnu.org>
kcook [Tue, 22 Jun 2004 21:17:16 +0000 (21:17 +0000)]
2004-06-22 Kelley Cook <kcook@gcc.gnu.org>

* g++.dg/opt/pr15551.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83515 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR c++/16112
jason [Tue, 22 Jun 2004 21:15:29 +0000 (21:15 +0000)]
    PR c++/16112
        * cp-gimplify.c (cp_gimplify_init_expr): Look through

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83514 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-22 H.J. Lu <hongjiu.lu@intel.com>
hjl [Tue, 22 Jun 2004 19:52:33 +0000 (19:52 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83513 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * gnu/gcj/convert/BytesToUnicode.java (getDecoder): Pass original
bryce [Tue, 22 Jun 2004 19:24:32 +0000 (19:24 +0000)]
* gnu/gcj/convert/BytesToUnicode.java (getDecoder): Pass original
encoding name to iconv.
* gnu/gcj/convert/UnicodeToBytes.java (getEncoder): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83512 138bc75d-0d04-0410-961f-82ee72b054a4

18 years agoTestcases for my rs6000-specific change of this date.
dalej [Tue, 22 Jun 2004 19:11:43 +0000 (19:11 +0000)]
Testcases for my rs6000-specific change of this date.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83511 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago* config/mn10300/mn10300.md (movdi, movdf): Use high/low for movu
aoliva [Tue, 22 Jun 2004 18:38:00 +0000 (18:38 +0000)]
* config/mn10300/mn10300.md (movdi, movdf): Use high/low for movu

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83510 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago Fixes PR java/16113.
rmathew [Tue, 22 Jun 2004 18:22:43 +0000 (18:22 +0000)]
Fixes PR java/16113.
* decl.c (force_poplevels): Remove call to expand_end_bindings.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83509 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * parse.y (create_class): Correct diagnostic message about
rmathew [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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83507 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-22 Dale Johannesen <dalej@apple.com>
dalej [Tue, 22 Jun 2004 18:12:37 +0000 (18:12 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83504 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83502 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR libgcj/16134:
bryce [Tue, 22 Jun 2004 17:21:23 +0000 (17:21 +0000)]
PR libgcj/16134:
* gnu/gcj/convert/BytesToUnicode.java: Canonicalize encoding name
before cache lookup. Thanks to Hannes Wallnoefer.
* gnu/gcj/convert/UnicodeToBytes.java: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83501 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-22 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Tue, 22 Jun 2004 16:01:02 +0000 (16:01 +0000)]
2004-06-22  Benjamin Kosnik  <bkoz@redhat.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83498 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-22 Paolo Carlini <pcarlini@suse.de>
paolo [Tue, 22 Jun 2004 10:52:14 +0000 (10:52 +0000)]
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).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83489 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-22 Paolo Bonzini <bonzini@gnu.org>
bonzini [Tue, 22 Jun 2004 10:06:49 +0000 (10:06 +0000)]
2004-06-22  Paolo Bonzini  <bonzini@gnu.org>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83487 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-22 Paolo Carlini <pcarlini@suse.de>
paolo [Tue, 22 Jun 2004 10:06:39 +0000 (10:06 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83486 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * doc/invoke.texi (Machine Dependent Options): Alphabetize.
nathan [Tue, 22 Jun 2004 08:32:31 +0000 (08:32 +0000)]
* doc/invoke.texi (Machine Dependent Options): Alphabetize.
(Submodel Options): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83485 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Andrew Pinski <apinski@apple.com>
pinskia [Tue, 22 Jun 2004 07:23:25 +0000 (07:23 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83483 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * cp-tree.def (NEW_EXPR): Add a fourth slot.
mmitchel [Tue, 22 Jun 2004 07:18:38 +0000 (07:18 +0000)]
* cp-tree.def (NEW_EXPR): Add a fourth slot.
* cp-tree.h (PARMLIST_ELLIPSIS_P): Remove.
(TREE_PARMLIST): 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
(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_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
(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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83482 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Geoffrey Keating <geoffk@apple.com>
geoffk [Tue, 22 Jun 2004 06:51:56 +0000 (06:51 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83478 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83477 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83476 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83475 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * alias.c (adjust_offset_for_component_ref): Use
kenner [Tue, 22 Jun 2004 03:07:05 +0000 (03:07 +0000)]
* alias.c (adjust_offset_for_component_ref): Use
* 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
* 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
* coverage.c (tree_coverage_counter_ref): Add new operands
* emit-rtl.c (component_ref_for_mem_expr): Add new operand
(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
* 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
(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
(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
(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
(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
(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
* tree-pretty-print.c (dump_generic_node, case QUAL_UNION_TYPE): Handle
(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
(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,
(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):
* 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):
(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
(cp_parser_direct_declarator): Likewise.
* cp/pt.c (tsubst): Likewise.
(tsubst_copy, tsubst_copy_and_build): Likewise; also add new operand
* cp/semantics.c (finish_non_static_data_member): Add new operand
* cp/typeck.c (build_class_member_access_expr): Likewise.
(build_class_member_access_expr, finish_class_member_access_expr):
(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
(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

* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83474 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago* configure.in: Check for srcdir/winsup rather than build directory winsup.
cgf [Tue, 22 Jun 2004 01:37:04 +0000 (01:37 +0000)]
* configure.in: Check for srcdir/winsup rather than build directory winsup.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83473 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR fortran/15750
pbrook [Tue, 22 Jun 2004 00:43:55 +0000 (00:43 +0000)]
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.
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.
* gfortran.fortran-torture/execute/iolength_1.f90: New test.
* gfortran.fortran-torture/execute/iolength_3.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83472 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * config/linker-map.gnu: Use wildcards for
ljrittle [Tue, 22 Jun 2004 00:24:52 +0000 (00:24 +0000)]
* config/linker-map.gnu: Use wildcards for
__basic_file::sys_open(FILE*, _Ios_Openmode).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83470 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83467 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83466 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR rtl-optimization/14782
danglin [Mon, 21 Jun 2004 23:49:04 +0000 (23:49 +0000)]
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): Require constant offsets to be
correctly aligned for DImode loads and stores.  Don't allow long
SFmode displacements on ELF32.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83464 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR rtl-opt/16114
rth [Mon, 21 Jun 2004 23:39:26 +0000 (23:39 +0000)]
    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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83463 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * c-common.def (RETURN_STMT): Remove.
rth [Mon, 21 Jun 2004 23:30:30 +0000 (23:30 +0000)]
    * 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.
        * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83461 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * c-decl.c (start_function): Don't call make_decl_rtl. Don't
zack [Mon, 21 Jun 2004 23:04:49 +0000 (23:04 +0000)]
* c-decl.c (start_function): Don't call make_decl_rtl.  Don't
look at TREE_ADDRESSABLE of symbol name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83460 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago* gfortran.fortran-torture/execute/select_1.f90: Rename function
tobi [Mon, 21 Jun 2004 22:56:34 +0000 (22:56 +0000)]
* gfortran.fortran-torture/execute/select_1.f90: Rename function
to fix type error.
* gfortran.fortran-torture/execute/intrinsic_associated.f90:
Remove trailing spaces.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83459 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Kelley Cook <kcook@gcc.gnu.org>
kcook [Mon, 21 Jun 2004 22:52:04 +0000 (22:52 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83458 138bc75d-0d04-0410-961f-82ee72b054a4

18 years agoFix whitespace from previous checking
kcook [Mon, 21 Jun 2004 22:48:39 +0000 (22:48 +0000)]
Fix whitespace from previous checking

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83457 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * etime.c (etime_sub): Remove array rank check;
pbrook [Mon, 21 Jun 2004 22:25:12 +0000 (22:25 +0000)]
* etime.c (etime_sub): Remove array rank check;
Add check for sufficient space.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83456 138bc75d-0d04-0410-961f-82ee72b054a4

18 years agoPR fortran/15511
tobi [Mon, 21 Jun 2004 22:22:32 +0000 (22:22 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83455 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83454 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Daniel Berlin <dberlin@dberlin.org>
dberlin [Mon, 21 Jun 2004 21:57:33 +0000 (21:57 +0000)]
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
    (create_expression_by_pieces): Ditto, plus additional
    machinery to handle complex values.
    (compute_avail): Remove dead RETURN_EXPR handling.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83453 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * config/i386/i386.c: Include insn-codes.h
steven [Mon, 21 Jun 2004 20:41:39 +0000 (20:41 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83451 138bc75d-0d04-0410-961f-82ee72b054a4

18 years agoTypo fix.
amylaar [Mon, 21 Jun 2004 19:11:23 +0000 (19:11 +0000)]
Typo fix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83445 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org>
amylaar [Mon, 21 Jun 2004 18:18:40 +0000 (18:18 +0000)]
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.
(TARGET_SWITCHES): Break out switches for cpu subtargets:
(SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to:
(SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to:
* sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine.
* 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_MATCHES): Use some shell code to calculate it.
(MULTILIB_EXCEPTIONS): Change to ml/m1.
* config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU.
(LINK_DEFAULT_CPU_EMUL): Don't redefine.
* config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to.
* config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine.
* config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine.
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83444 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago* resolve.c (resolve_symbol): Add comment in function body.
tobi [Mon, 21 Jun 2004 17:23:52 +0000 (17:23 +0000)]
* resolve.c (resolve_symbol): Add comment in function body.
(check_data_variable): Change type of mark to ar_type, adapt code

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83443 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago* array.c (gfc_insert_constructor): Avoid redundant call to
tobi [Mon, 21 Jun 2004 17:16:25 +0000 (17:16 +0000)]
* array.c (gfc_insert_constructor): Avoid redundant call to
mpz_comp. Add 2004 to copyright years.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83442 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Andrew Haley <aph@redhat.com>
aph [Mon, 21 Jun 2004 16:55:07 +0000 (16:55 +0000)]
2004-06-21  Andrew Haley  <aph@redhat.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83441 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Andrew Haley <aph@redhat.com>
aph [Mon, 21 Jun 2004 16:52:14 +0000 (16:52 +0000)]
2004-06-21  Andrew Haley  <aph@redhat.com>

* java/io/ObjectOutputStream.java: Add DEBUG statements
(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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83440 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83439 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83438 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Soft-float need
pbrook [Mon, 21 Jun 2004 13:32:09 +0000 (13:32 +0000)]
* config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Soft-float need
not imply FPA.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83434 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * fold-const.c (operand_equal_p): Pass flags in recursive calls for
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.  Add support for TRUTH_ANDIF_EXPR,
* tree.c (commutative_tree_code): Also list UNORDERED_EXPR,

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83433 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Paolo Bonzini <bonzini@gnu.org>
bonzini [Mon, 21 Jun 2004 12:51:37 +0000 (12:51 +0000)]
2004-06-21  Paolo Bonzini  <bonzini@gnu.org>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83432 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * tree-alias-common.h (struct tree_alias_ops): Change ip and
jsm28 [Mon, 21 Jun 2004 12:37:46 +0000 (12:37 +0000)]
* tree-alias-common.h (struct tree_alias_ops): Change ip and
ip_partial to unsigned int.

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

* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83430 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * c-common.c (verify_sequence_points): Export.
rth [Mon, 21 Jun 2004 09:15:29 +0000 (09:15 +0000)]
    * 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
        * objc/objc-act.c (build_module_descriptor): Use add_stmt
        instead of c_expand_expr_stmt.
        * semantics.c (finish_expr_stmt): Call verify_sequence_points.
        * gcc.dg/tree-ssa/20030714-1.c: Rename variables to avoid
        merging && to BIT_FIELD_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83429 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-21 Paolo Bonzini <bonzini@gnu.org>
bonzini [Mon, 21 Jun 2004 08:34:12 +0000 (08:34 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83428 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83427 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-20 David Ayers <d.ayers@inode.at>
zlaski [Mon, 21 Jun 2004 01:50:18 +0000 (01:50 +0000)]
2004-06-20  David Ayers  <d.ayers@inode.at>

* objc/objc-act.h (get_object_reference): Rename to
(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
(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
(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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83425 138bc75d-0d04-0410-961f-82ee72b054a4

18 years agoDaily bump.
gccadmin [Mon, 21 Jun 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83423 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83422 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * loop-invariant.c: New file.
rakdver [Sun, 20 Jun 2004 21:31:32 +0000 (21:31 +0000)]
* 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
(avail_regs, res_regs, small_cost, pres_cost, spill_cost): New
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83419 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83418 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-20 Steven G. Kargl <kargls@comcast.net>
tobi [Sun, 20 Jun 2004 18:34:25 +0000 (18:34 +0000)]
2004-06-20  Steven G. Kargl  <kargls@comcast.net>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83417 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * stmt.c (warn_if_unused_value): Add locus argument.
rth [Sun, 20 Jun 2004 17:16:27 +0000 (17:16 +0000)]
    * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83416 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-20 Andrew Pinski <pinskia@physics.uc.edu>
pinskia [Sun, 20 Jun 2004 17:03:04 +0000 (17:03 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83415 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * config/i386/i386.c (pentium4_cost): Increase "lea" cost from 1 to 3.
sayle [Sun, 20 Jun 2004 15:10:34 +0000 (15:10 +0000)]
* config/i386/i386.c (pentium4_cost): Increase "lea" cost from 1 to 3.
(ix86_rtx_costs) <ASHIFT, PLUS>: Consider ix86_cost->lea even when

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83413 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * gcc.dg/compat/struct-complex-1_x.c: Add dummy symbol.
ebotcazou [Sun, 20 Jun 2004 12:46:33 +0000 (12:46 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83411 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * decl.c (elaborate_expression, elaborate_expression_1): Arguments
kenner [Sun, 20 Jun 2004 11:19:47 +0000 (11:19 +0000)]
* 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.
(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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83410 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * c-common.h (add_decl_stmt): Move to cp-tree.h.
rth [Sun, 20 Jun 2004 10:10:02 +0000 (10:10 +0000)]
    * 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-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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83409 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-20 Paolo Carlini <pcarlini@suse.de>
paolo [Sun, 20 Jun 2004 09:42:39 +0000 (09:42 +0000)]
2004-06-20  Paolo Carlini  <pcarlini@suse.de>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83408 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * c-common.def (IF_STMT, CLEANUP_STMT): Move to cp-tree.def.
rth [Sun, 20 Jun 2004 09:18:13 +0000 (09:18 +0000)]
    * c-common.def (IF_STMT, CLEANUP_STMT): Move to cp-tree.def.
        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-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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83407 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-20 Andreas Tobler <a.tobler@schweiz.ch>
andreast [Sun, 20 Jun 2004 09:14:17 +0000 (09:14 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83406 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * c-common.h (has_c_linkage): New interface.
zack [Sun, 20 Jun 2004 08:34:54 +0000 (08:34 +0000)]
* 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.
* 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
* Makefile.in (c-pragma.o, c-cppbuiltin.o): Update dependencies.
(TRANSFER_FROM_TRAMPOLINE): Prototype mprotect.
* config/alpha/osf.h: Define TARGET_HANDLE_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-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
* 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

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83405 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * builtins.c (fold_builtin_unordered_cmp): Take an EXP argument
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.  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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83404 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83402 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83401 138bc75d-0d04-0410-961f-82ee72b054a4

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83399 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * c-common.c, c-common.h (lang_gimplify_stmt): Remove.
rth [Sat, 19 Jun 2004 19:34:23 +0000 (19:34 +0000)]
    * 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-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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83397 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR target/15941
danglin [Sat, 19 Jun 2004 19:24:56 +0000 (19:24 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83396 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR target/15550
rth [Sat, 19 Jun 2004 19:13:03 +0000 (19:13 +0000)]
    PR target/15550
        * ifcvt.c (noce_try_move): Recognize all generated instructions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83395 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * function.c (free_after_compilation): Do not free computed_goto_common*.
hubicka [Sat, 19 Jun 2004 18:52:04 +0000 (18:52 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83393 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * doc/invoke.texi: Remove obsolete comment regarding PA 2.0 support
danglin [Sat, 19 Jun 2004 17:29:00 +0000 (17:29 +0000)]
* doc/invoke.texi: Remove obsolete comment regarding PA 2.0 support
in binutils.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83391 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-19 Bud Davis <bdavis9659@comcast.net>
bdavis [Sat, 19 Jun 2004 17:03:16 +0000 (17:03 +0000)]
2004-06-19  Bud Davis  <bdavis9659@comcast.net>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83389 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-19 Bud Davis <bdavis9659@comcast.net>
bdavis [Sat, 19 Jun 2004 16:42:05 +0000 (16:42 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83388 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-19 Andrew Pinski <pinskia@physics.uc.edu>
pinskia [Sat, 19 Jun 2004 16:33:50 +0000 (16:33 +0000)]
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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83387 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-19 Andrew Pinski <apinski@apple.com>
pinskia [Sat, 19 Jun 2004 16:16:59 +0000 (16:16 +0000)]
2004-06-19  Andrew Pinski  <apinski@apple.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83386 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago CFG transparent RTL expansion:
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

* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83385 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR c++/16036
rth [Sat, 19 Jun 2004 05:39:14 +0000 (05:39 +0000)]
    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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83382 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * tree-ssa.c (raise_value): Removed.
rakdver [Sat, 19 Jun 2004 01:52:12 +0000 (01:52 +0000)]
* tree-ssa.c (raise_value): Removed.
(get_eq_name, check_phi_redundancy): New functions.
(kill_redundant_phi_nodes): Use standard ssa minimalization algorithm.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83380 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * fold-const.c (fold) <UNORDERED_EXPR, ORDERED_EXPR, UNLT_EXPR,
sayle [Sat, 19 Jun 2004 00:17:33 +0000 (00:17 +0000)]
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,
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83379 138bc75d-0d04-0410-961f-82ee72b054a4

18 years agoDaily bump.
gccadmin [Sat, 19 Jun 2004 00:16:19 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83377 138bc75d-0d04-0410-961f-82ee72b054a4

18 years agoDaily bump.
gccadmin [Sat, 19 Jun 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83376 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-19 David Billinghurst (David.Billinghurst@riotinto.com)
billingd [Fri, 18 Jun 2004 23:48:45 +0000 (23:48 +0000)]
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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83374 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago2004-06-18 Paolo Carlini <pcarlini@suse.de>
paolo [Fri, 18 Jun 2004 23:27:30 +0000 (23:27 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83372 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * gcc.dg/compat/struct-align-2_x.c: Include <limits.h>.
jakub [Fri, 18 Jun 2004 23:20:34 +0000 (23:20 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83371 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * gcc.dg/compat/compat-common.h (CINT, CDBL): Define.
jakub [Fri, 18 Jun 2004 23:18:04 +0000 (23:18 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83370 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * fold-const.c (build_range_check): If !in_p and recursive call
jakub [Fri, 18 Jun 2004 23:15:59 +0000 (23:15 +0000)]
* 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

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83369 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago PR c++/16034
rth [Fri, 18 Jun 2004 22:51:57 +0000 (22:51 +0000)]
    PR c++/16034
        * c-gimplify.c (gimplify_condition): Remove.
        (gimplify_c_loop, gimplify_if_stmt, gimplify_switch_stmt): Don't
        call it.
        * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83368 138bc75d-0d04-0410-961f-82ee72b054a4

18 years ago * tree-eh.c (decide_copy_try_finally): Fix scaling of copy and
rth [Fri, 18 Jun 2004 22:32:49 +0000 (22:32 +0000)]
    * tree-eh.c (decide_copy_try_finally): Fix scaling of copy and
        switch estimates.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83367 138bc75d-0d04-0410-961f-82ee72b054a4