gcc.git
20 years agotrans-const.c (gfc_conv_mpz_to_tree): Change call to build_int_cst to build_int_cst_w...
Tobias Schlüter [Wed, 25 Aug 2004 14:37:10 +0000 (16:37 +0200)]
trans-const.c (gfc_conv_mpz_to_tree): Change call to build_int_cst to build_int_cst_wide in accordance to Nathan's...

* trans-const.c (gfc_conv_mpz_to_tree): Change call to
build_int_cst to build_int_cst_wide in accordance to Nathan's
previous patch.

From-SVN: r86549

20 years agoMakefile.in: Add back top_builddir.
Paolo Bonzini [Wed, 25 Aug 2004 12:57:05 +0000 (12:57 +0000)]
Makefile.in: Add back top_builddir.

2004-08-25  Paolo Bonzini  <bonzini@gnu.org>

        * Makefile.in: Add back top_builddir.

From-SVN: r86548

20 years agocse.c (cse_around_loop, [...]): Remove.
Steven Bosscher [Wed, 25 Aug 2004 12:31:01 +0000 (12:31 +0000)]
cse.c (cse_around_loop, [...]): Remove.

* cse.c (cse_around_loop, cse_check_loop_start,
cse_set_around_loop): Remove.
(cse_basic_block): Remove the around_loop argument.
(cse_end_of_basic_block): Remove the after_loop argument.
(cse_main): Likewise.
* rtl.h (cse_main): Update prototype.
* passes.c (rest_of_handle_cse, rest_of_handle_cse2,
rest_of_handle_gcse): Update cse_main calls.

From-SVN: r86546

20 years agoada-tree.h (TYPE_RM_SIZE_INT): Use TYPE_LANG_SLOT_1.
Nathan Sidwell [Wed, 25 Aug 2004 11:24:11 +0000 (11:24 +0000)]
ada-tree.h (TYPE_RM_SIZE_INT): Use TYPE_LANG_SLOT_1.

* ada-tree.h (TYPE_RM_SIZE_INT): Use TYPE_LANG_SLOT_1.

Co-Authored-By: Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
From-SVN: r86545

20 years agotree.h (build_int_cst): New, sign extended constant.
Nathan Sidwell [Wed, 25 Aug 2004 09:52:54 +0000 (09:52 +0000)]
tree.h (build_int_cst): New, sign extended constant.

* tree.h  (build_int_cst): New, sign extended constant.
(build_int_cstu): New, zero extended constant.
(build_int_cst_wide): Renamed from build_int_cst.
* tree.c (build_int_cst, build_int_cstu): New.
(build_int_cst_wide): Renamed from build_int_cst.
(make_vector_type, build_common_tree_nodes,
build_common_tree_nodes_2): Adjust build_int_cst calls.
* builtins.c (expand_builtin_prefetch, expand_builtin_strstr,
expand_builtin_strpbrk, expand_builtin_fputs,
build_string_literal, expand_builtin_printf,
expand_builtin_sprintf, fold_builtin_classify_type,
fold_builtin_lround, fold_builtin_bitop, fold_builtin_isascii,
fold_builtin_toascii, fold_builtin_isdigit,
simplify_builtin_strstr, simplify_builtin_strpbrk,
fold_builtin_fputs, simplify_builtin_sprintf): Likewise.
* c-common.c (start_fname_decls, fix_string_type, shorten_compare,
DEF_ATTR_INT): Likewise.
* c-decl.c (complete_array_type, check_bitfield_type_and_width):
Likewise.
* c-lex.c (interpret_integer, lex_charconst): Likewise.
* c-parse.in (primary) <TYPES_COMPATIBLE_P> Likewise.
* c-pretty-print.c (pp_c_integer_constant): Likewise.
* c-typeck.c (really_start_incremental_init, push_init_level,
set_nonincremental_init_from_string): Likewise.
* calls.c (load_register_parameters): Likewise.
convert.c (convert_to_pointer): Likewise.
coverage.c (coverage_counter_alloc, tree_coverage_counter_ref,
build_fn_info_type, build_fn_info_value, build_ctr_info_value,
build_gcov_info): Likewise.
* except.c (init_eh, assign_filter_values): Likewise.
* expmed.c (store_fixed_bit_field, extract_bit_field,
extract_fixed_bit_field, extract_split_bit_field, expand_shift,
expand_mult_const, expand_mult_highpart_adjust, extract_high_half,
expand_sdiv_pow2, expand_divmod, make_tree): Likewise.
* expr.c (convert_move, emit_group_load, emit_group_store,
expand_assignment, store_constructor, store_field,
expand_expr_real_1, reduce_to_bit_field_precision): Likewise.
fold-const.c (force_fit_type, int_const_binop, fold_convert_const,
invert_truthvalue, optimize_bit_field_compare,
decode_field_reference, all_ones_mask_p, constant_boolean_node,
fold_div_compare, fold, fold_read_from_constant_string,
fold_negate_const, fold_abs_const, fold_not_const, round_up,
round_down): Likewise.
* function.c (assign_parm_setup_block): Likewise.
* stmt.c (shift_return_value, expand_case, estimate_case_costs):
Likewise.
* stor-layout.c (layout_type, initialize_sizetypes,
set_min_and_max_values_for_integral_type): Likewise.
* tree-chrec.c (chrec_fold_multiply_poly_poly,
reset_evolution_in_loop): Likewise.
* tree-chrec.h (build_polynomial_chrec): Likewise.
* tree-complex.c (build_replicated_const): Likewise.
* tree-eh.c (honor_protect_cleanup_actions,
lower_try_finally_onedest, lower_try_finally_copy,
lower_try_finally_switch): Likewise.
* tree-mudflap.c (mf_build_string, mx_register_decls,
mudflap_register_call, mudflap_enqueue_constant): Likewise.
* tree-nested.c (get_trampoline_type, get_nl_goto_field): Likewise.
* tree-pretty-print.c (dump_generic_node): Likewise.
* tree-ssa-ccp.c (widen_bitfield, maybe_fold_offset_to_array_ref):
Likewise.
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Likewise.
* tree-ssa-loop-niter.c (number_of_iterations_cond,
loop_niter_by_eval, upper_bound_in_type, lower_bound_in_type):
Likewise.
* tree-ssa-loop-ivcanon.c (create_canonical_iv,
canonicalize_loop_induction_variables): Likewise.
* tree-vectorizer.c (vect_create_index_for_array_ref,
vect_transform_loop_bound, vect_compute_data_ref_alignment):
Likewise.

* config/alpha/alpha.c (alpha_initialize_trampoline, alpha_va_start,
alpha_gimplify_va_arg_1): Likewise.
* config/arm/arm.c (arm_get_cookie_size): Likewise.
* config/c4x/c4x.c (c4x_gimplify_va_arg_expr): Likewise.
* config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
* config/ia64/ia64.c (ia64_gimplify_va_arg): Likewise.
* config/mips/mips.c (mips_build_builtin_va_list, mips_va_start,
mips_gimplify_va_arg_expr): Likewise.
* config/pa/pa.c (hppa_gimplify_va_arg_expr): Likewise.
* config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg,
add_compiler_branch_island): Likewise.
* config/s390/s390.c (s390_va_start): Likewise.
* config/sh/sh.c (sh_va_start): Likewise.
* config/stormy16/stormy16.c (xstormy16_expand_builtin_va_start):
Likewise.
* config/xtensa/xtensa.c (xtensa_va_start,
xtensa_gimplify_va_arg_expr): Likewise.

* objc/objc-act.c (build_objc_string_object,
build_objc_symtab_template, init_def_list, init_objc_symtab,
init_module_descriptor, generate_static_references,
build_selector_translation_table, get_proto_encoding,
build_typed_selector_reference, build_selector_reference,
build_next_objc_exception_stuff,
build_method_prototype_list_template, generate_descriptor_table,
generate_protocols, build_protocol_initializer,
build_ivar_list_template, build_method_list_template,
build_ivar_list_initializer, generate_ivars_list,
generate_dispatch_table, generate_protocol_list,
build_category_initializer, build_shared_structure_initializer,
generate_shared_structures, handle_impent,
generate_objc_image_info): Likewise.

2004-04-25  Paolo Bonzini  <bonzini@gnu.org>

* cfglayout.c (duplicate_insn_chain): Remove references to
NOTE_INSN_LOOP_VTOP and NOTE_INSN_LOOP_CONT.
* cfgloop.h (struct loop): Remove fields vtop, cont and cont_dominator.
* cfgrtl.c (rtl_delete_block): Remove handling of NOTE_INSN_LOOP_CONT.
* final.c (final_scan_insn): Remove references to NOTE_INSN_LOOP_VTOP
and NOTE_INSN_LOOP_CONT.
* insn-notes.def (NOTE_INSN_LOOP_VTOP, NOTE_INSN_LOOP_CONT): Remove.
* jump.c (squeeze_notes): Remove references to NOTE_INSN_LOOP_VTOP
and NOTE_INSN_LOOP_CONT.
* loop.c (scan_loops, find_and_verify_loops, for_each_insn_in_loop,
check_dbra_loop, loop_dump_aux): Remove references to removed notes
and fields.
* reorg.c (mostly_true_jump): Do not rely on NOTE_INSN_LOOP_VTOPs.
* unroll.c (unroll_loop, copy_loop_body, loop_iterations): Remove
references to removed notes and fields.
(subtract_reg_term, ujump_to_loop_cont): Remove.

From-SVN: r86544

20 years ago* gcc_update (libcpp/Makefile.in): Remove libcpp/Makefile.am.
Ben Elliston [Wed, 25 Aug 2004 09:07:43 +0000 (09:07 +0000)]
* gcc_update (libcpp/Makefile.in): Remove libcpp/Makefile.am.

From-SVN: r86543

20 years agocfglayout.c (duplicate_insn_chain): Remove references to NOTE_INSN_LOOP_VTOP and...
Paolo Bonzini [Wed, 25 Aug 2004 08:20:11 +0000 (08:20 +0000)]
cfglayout.c (duplicate_insn_chain): Remove references to NOTE_INSN_LOOP_VTOP and NOTE_INSN_LOOP_CONT.

2004-04-25  Paolo Bonzini  <bonzini@gnu.org>

* cfglayout.c (duplicate_insn_chain): Remove references to
NOTE_INSN_LOOP_VTOP and NOTE_INSN_LOOP_CONT.
* cfgloop.h (struct loop): Remove fields vtop, cont and cont_dominator.
* cfgrtl.c (rtl_delete_block): Remove handling of NOTE_INSN_LOOP_CONT.
* final.c (final_scan_insn): Remove references to NOTE_INSN_LOOP_VTOP
and NOTE_INSN_LOOP_CONT.
* insn-notes.def (NOTE_INSN_LOOP_VTOP, NOTE_INSN_LOOP_CONT): Remove.
* jump.c (squeeze_notes): Remove references to NOTE_INSN_LOOP_VTOP
and NOTE_INSN_LOOP_CONT.
* loop.c (scan_loops, find_and_verify_loops, for_each_insn_in_loop,
check_dbra_loop, loop_dump_aux): Remove references to removed notes
and fields.
* reorg.c (mostly_true_jump): Do not rely on NOTE_INSN_LOOP_VTOPs.
* unroll.c (unroll_loop, copy_loop_body, loop_iterations): Remove
references to removed notes and fields.
(subtract_reg_term, ujump_to_loop_cont): Remove.

From-SVN: r86542

20 years agoconfigure.ac: Replace Automake macro invocations with manual Autoconf checks and...
Paolo Bonzini [Wed, 25 Aug 2004 08:10:02 +0000 (08:10 +0000)]
configure.ac: Replace Automake macro invocations with manual Autoconf checks and substitutions.

libcpp/ChangeLog:
2004-08-25  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac: Replace Automake macro invocations
with manual Autoconf checks and substitutions.
* Makefile.am: Removed.
* Makefile.in: Heavy simplification and reorganization.

gcc/ChangeLog:
2004-08-25  Paolo Bonzini  <bonzini@gnu.org>

* doc/invoke.texi: Document that libcpp does not require
Automake any longer.  Document that Automake 1.9.1 should
work everywhere.

From-SVN: r86541

20 years agoflags.h (enum debug_info_type): Remove DWARF_DEBUG.
Zack Weinberg [Wed, 25 Aug 2004 07:34:54 +0000 (07:34 +0000)]
flags.h (enum debug_info_type): Remove DWARF_DEBUG.

* flags.h (enum debug_info_type): Remove DWARF_DEBUG.
* defaults.h (PREFERRED_DEBUGGING_TYPE): Remove check for
DWARF_DEBUGGING_INFO from choice-of-definition chain;
restructure using C89 features (#elif, #error).
* c-lex.c, final.c, opts.c, config/cris/cris.c, config/frv/frv.c
* config/sh/sh.h: Remove references to DWARF_DEBUG.
* doc/invoke.texi: Remove references to DWARF version 1;
clarify why -gdwarf-2<n> doesn't work.
cp:
* class.c, search.c: Remove references to DWARF_DEBUG.

From-SVN: r86540

20 years ago* ifcvt.c (find_if_case_1): Remove ??? comment.
Zack Weinberg [Wed, 25 Aug 2004 07:32:52 +0000 (07:32 +0000)]
* ifcvt.c (find_if_case_1): Remove ??? comment.

From-SVN: r86539

20 years agorepo.c (extract_string): Reset backquote after one character.
Adam Nemet [Wed, 25 Aug 2004 07:25:36 +0000 (07:25 +0000)]
repo.c (extract_string): Reset backquote after one character.

* repo.c (extract_string): Reset backquote after one character.
(get_base_filename): Fix indentation.

From-SVN: r86538

20 years agobasic-block.h (BB_SET_PARTITION): Clear old value first.
Zack Weinberg [Wed, 25 Aug 2004 07:25:06 +0000 (07:25 +0000)]
basic-block.h (BB_SET_PARTITION): Clear old value first.

* basic-block.h (BB_SET_PARTITION): Clear old value first.
* cfg.c (clear_bb_flags): Don't clear partition setting.

From-SVN: r86537

20 years agoclosure_fn0.c: Xfail mips64* instead of mips*.
David Daney [Wed, 25 Aug 2004 05:06:55 +0000 (05:06 +0000)]
closure_fn0.c: Xfail mips64* instead of mips*.

2004-08-24  David Daney  <daney@avtrex.com>

* testsuite/libffi.call/closure_fn0.c: Xfail mips64* instead of mips*.
* testsuite/libffi.call/closure_fn1.c: Likewise.
* testsuite/libffi.call/closure_fn2.c  Likewise.
* testsuite/libffi.call/closure_fn3.c: Likewise.
* testsuite/libffi.call/closure_fn4.c: Likewise.
* testsuite/libffi.call/closure_fn5.c: Likewise.
* testsuite/libffi.call/cls_18byte.c: Likewise.
* testsuite/libffi.call/cls_19byte.c: Likewise.
* testsuite/libffi.call/cls_1_1byte.c: Likewise.
* testsuite/libffi.call/cls_20byte.c: Likewise.
* testsuite/libffi.call/cls_20byte1.c: Likewise.
* testsuite/libffi.call/cls_24byte.c: Likewise.
* testsuite/libffi.call/cls_2byte.c: Likewise.
* testsuite/libffi.call/cls_3_1byte.c: Likewise.
* testsuite/libffi.call/cls_3byte1.c: Likewise.
* testsuite/libffi.call/cls_3byte2.c: Likewise.
* testsuite/libffi.call/cls_4_1byte.c: Likewise.
* testsuite/libffi.call/cls_4byte.c: Likewise.
* testsuite/libffi.call/cls_64byte.c: Likewise.
* testsuite/libffi.call/cls_6byte.c: Likewise.
* testsuite/libffi.call/cls_7byte.c: Likewise.
* testsuite/libffi.call/cls_8byte.c: Likewise.
* testsuite/libffi.call/cls_9byte1.c: Likewise.
* testsuite/libffi.call/cls_9byte2.c: Likewise.
* testsuite/libffi.call/cls_align_double.c: Likewise.
* testsuite/libffi.call/cls_align_float.c: Likewise.
* testsuite/libffi.call/cls_align_longdouble.c: Likewise.
* testsuite/libffi.call/cls_align_pointer.c: Likewise.
* testsuite/libffi.call/cls_align_sint16.c: Likewise.
* testsuite/libffi.call/cls_align_sint32.c: Likewise.
* testsuite/libffi.call/cls_align_sint64.c: Likewise.
* testsuite/libffi.call/cls_align_uint16.c: Likewise.
* testsuite/libffi.call/cls_align_uint32.c: Likewise.
* testsuite/libffi.call/cls_align_uint64.c: Likewise.
* testsuite/libffi.call/cls_double.c: Likewise.
* testsuite/libffi.call/cls_float.c: Likewise.
* testsuite/libffi.call/cls_multi_schar.c: Likewise.
* testsuite/libffi.call/cls_multi_sshort.c: Likewise.
* testsuite/libffi.call/cls_multi_sshortchar.c: Likewise.
* testsuite/libffi.call/cls_multi_uchar.c: Likewise.
* testsuite/libffi.call/cls_multi_ushort.c: Likewise.
* testsuite/libffi.call/cls_multi_ushortchar.c: Likewise.
* testsuite/libffi.call/cls_schar.c: Likewise.
* testsuite/libffi.call/cls_sint.c: Likewise.
* testsuite/libffi.call/cls_sshort.c: Likewise.
* testsuite/libffi.call/cls_uchar.c: Likewise.
* testsuite/libffi.call/cls_uint.c: Likewise.
* testsuite/libffi.call/cls_ulonglong.c: Likewise.
* testsuite/libffi.call/cls_ushort.c: Likewise.
* testsuite/libffi.call/nested_struct.c: Likewise.
* testsuite/libffi.call/nested_struct1.c: Likewise.
* testsuite/libffi.call/nested_struct2.c: Likewise.
* testsuite/libffi.call/nested_struct3.c: Likewise.
* testsuite/libffi.call/problem1.c: Likewise.
* testsuite/libffi.special/unwindtest.cc: Likewise.
* testsuite/libffi.call/cls_12byte.c: Likewise and set return value
to zero.
* testsuite/libffi.call/cls_16byte.c: Likewise.
* testsuite/libffi.call/cls_5byte.c: Likewise.

From-SVN: r86534

20 years agore PR target/17052 (altivec varargs failure if no optimization)
Alan Modra [Wed, 25 Aug 2004 03:40:27 +0000 (03:40 +0000)]
re PR target/17052 (altivec varargs failure if no optimization)

PR target/17052
* config/rs6000/rs6000.h (machine_function): Remove sysv_varargs_p.
* config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Use
current_function_stdarg in place of sysv_varargs_p.
* config/rs6000/rs6000.c (setup_incoming_varargs): Don't set
sysv_varargs_p.

From-SVN: r86533

20 years agore PR libfortran/17143 (2**63 prints garbage)
Bud Davis [Wed, 25 Aug 2004 00:31:33 +0000 (00:31 +0000)]
re PR libfortran/17143 (2**63 prints garbage)

2004-08-24  Bud Davis  <bdavis9659@comcast.net>

        PR fortran/17143
        * runtime/error.c (itoa): keep from overflowing during
        mod operation by using unsigned variable.

        * gfortran.dg/pr17143.f90: New test.

From-SVN: r86532

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

From-SVN: r86530

20 years agore PR libfortran/17164 (index function not working properly)
Bud Davis [Wed, 25 Aug 2004 00:14:07 +0000 (00:14 +0000)]
re PR libfortran/17164 (index function not working properly)

2004-08-24  Bud Davis  <bdavis9659@comcast.net>

        PR fortran/17164
        * runtime/string_intrinsics.c (string_index):check for
        substring longer than string.
        * gfortran.dg/pr17164.f90: New test.

From-SVN: r86527

20 years agore PR target/16298 (ICE in output_operand)
Richard Henderson [Tue, 24 Aug 2004 21:45:59 +0000 (14:45 -0700)]
re PR target/16298 (ICE in output_operand)

        PR target/16298
        * config/i386/i386.c (legitimate_constant_p): Rework to not accept
        random codes within CONST.

From-SVN: r86522

20 years agoFix linux make profiledbootstrap.
James E Wilson [Tue, 24 Aug 2004 21:38:35 +0000 (21:38 +0000)]
Fix linux make profiledbootstrap.

* Makefile.in (STAGEFEEDBACK_FLAGS_TO_PASS): Remove
-freorder-blocks-and-partition.

From-SVN: r86521

20 years agore PR middle-end/17044 (libgcc2.c:169: internal compiler error: Segmentation fault)
John David Anglin [Tue, 24 Aug 2004 20:59:34 +0000 (20:59 +0000)]
re PR middle-end/17044 (libgcc2.c:169: internal compiler error: Segmentation fault)

PR middle-end/17044
* tree-ssa-threadupdate.c (redirection_data): Make static.
(thread_block): Use ggc_alloc_cleared to allocate struct
redirection_data.  Don't free elements in redirection_data.

From-SVN: r86519

20 years ago* config/mips/predicates.md (small_data_pattern): Match prefetches.
Richard Sandiford [Tue, 24 Aug 2004 20:53:32 +0000 (20:53 +0000)]
* config/mips/predicates.md (small_data_pattern): Match prefetches.

From-SVN: r86518

20 years agore PR tree-optimization/17016 (ICE with struct passed as reference)
Zdenek Dvorak [Tue, 24 Aug 2004 20:50:42 +0000 (22:50 +0200)]
re PR tree-optimization/17016 (ICE with struct passed as reference)

PR tree-optimization/17016
* tree-ssa-loop-niter.c (number_of_iterations_cond,
number_of_iterations_exit): Use POINTER_TYPE_P instead
of testing for POINTER_TYPE.

From-SVN: r86517

20 years agotree-ssa-loop-ivcanon.c: New file.
Zdenek Dvorak [Tue, 24 Aug 2004 20:48:23 +0000 (22:48 +0200)]
tree-ssa-loop-ivcanon.c: New file.

* tree-ssa-loop-ivcanon.c: New file.
* tree-ssa-loop-manip.c (create_iv): New function.
* Makefile.in (tree-ssa-loop-ivcanon.o): Add.
(tree-ssa-loop.o, tree-ssa-loop-manip.o): Add SCEV_H dependency.
* cfgloop.c (mark_single_exit_loops): New function.
(verify_loop_structure): Verify single-exit loops.
* cfgloop.h (struct loop): Add single_exit field.
(LOOPS_HAVE_MARKED_SINGLE_EXITS): New constant.
(mark_single_exit_loops): Declare.
(tree_num_loop_insns): Declare.
* cfgloopmanip.c (update_single_exits_after_duplication): New function.
(duplicate_loop_to_header_edge): Use it.
* common.opt (fivcanon): New flag.
* timevar.def (TV_TREE_LOOP_IVCANON, TV_COMPLETE_UNROLL): New timevars.
* tree-cfg.c (tree_find_edge_insert_loc): Return newly created block.
(bsi_commit_edge_inserts_1): Pass null to tree_find_edge_insert_loc.
(bsi_insert_on_edge_immediate): New function.
* tree-flow.h (bsi_insert_on_edge_immediate,
canonicalize_induction_variables, tree_unroll_loops_completely,
create_iv): Declare.
* tree-optimize.c (init_tree_optimization_passes): Add
pass_iv_canon and pass_complete_unroll.
* tree-pass.h (pass_iv_canon, pass_complete_unroll): Declare.
* tree-scalar-evolution.c (get_loop_exit_condition,
get_exit_conditions_rec, number_of_iterations_in_loop,
scev_initialize): Use single_exit information.
* tree-ssa-loop-niter.c (number_of_iterations_cond): Record
missing assumptions.
(loop_niter_by_eval):  Return number of iterations as unsigned
int.
* tree-ssa-loop.c (tree_ssa_loop_init): Mark single exit loops.
(tree_ssa_loop_ivcanon, gate_tree_ssa_loop_ivcanon, pass_iv_canon,
tree_complete_unroll, gate_tree_complete_unroll, pass_complete_unroll):
New passes.
(tree_ssa_loop_done): Call free_numbers_of_iterations_estimates.
* tree-ssanames.c (make_ssa_name): Allow creating ssa name before
the defining statement is ready.
* tree-vectorizer.c (vect_create_iv_simple): Removed.
(vect_create_index_for_array_ref, vect_transform_loop_bound):
Use create_iv.
(vect_transform_loop_bound): Use single_exit information.
(vect_analyze_loop_form): Cleanup bogus tests.
(vectorize_loops): Do not call flow_loop_scan.
* tree.h (may_negate_without_overflow_p): Declare.
* fold-const.c (may_negate_without_overflow_p): Split out from ...
(negate_expr_p): ... this function.
(tree_expr_nonzero_p): Handle overflowed constants correctly.
* doc/invoke.texi (-fivcanon): Document.
* doc/passes.texi: Document canonical induction variable creation.

* gcc.dg/tree-ssa/loop-1.c: New test.

From-SVN: r86516

20 years agomips.h (ISA_HAS_INT_CONDMOVE): Delete.
Richard Sandiford [Tue, 24 Aug 2004 20:43:57 +0000 (20:43 +0000)]
mips.h (ISA_HAS_INT_CONDMOVE): Delete.

* config/mips/mips.h (ISA_HAS_INT_CONDMOVE): Delete.
* config/mips/mips.c (print_operand): Fold %B/%b handling into %T/%t,
using the mode of the operand to decide between them.
* config/mips/mips.md (MOVECC): New mode macro.
(ccreg): New mode attribute.
(*mov{si,di,sf,df}_on_{cc,si,di}): Name formerly unnamed patterns.
Redefine using :GPR and :MOVECC.  Use %T and %t for the condition.
(mov[sd]icc): Redefine using :GPR.

From-SVN: r86515

20 years agoFix logs for last delta. Sorry for the screw-up.
Richard Sandiford [Tue, 24 Aug 2004 20:41:20 +0000 (20:41 +0000)]
Fix logs for last delta.  Sorry for the screw-up.

From-SVN: r86514

20 years ago* gcc.c-torture/compile/20040824-1.c: New test.
Richard Sandiford [Tue, 24 Aug 2004 20:24:00 +0000 (20:24 +0000)]
* gcc.c-torture/compile/20040824-1.c: New test.

From-SVN: r86513

20 years agoarm.md: Include predicates.md.
Richard Earnshaw [Tue, 24 Aug 2004 20:16:41 +0000 (20:16 +0000)]
arm.md: Include predicates.md.

* arm.md: Include predicates.md.
* predicates.md: New file.
* arm.c (s_register_operand, arm_hard_register_operand)
(arm_general_register_operand, f_register_operand, reg_or_int_operand)
(arm_immediate_operand, arm_neg_immediate_operand)
(arm_not_immediate_operand, arm_rhs_operand, arm_rhsm_operand)
(arm_add_operand, arm_addimm_operand, arm_not_operand)
(offsettable_memory_operand, alignable_memory_operand)
(arm_reload_memory_operand, arm_float_rhs_operand)
(arm_float_add_operand, vfp_compare_operand, arm_float_compare_operand)
(index_operand, shiftable_operator, logical_binary_operator)
(shift_operator, equality_operator, arm_comparison_operator)
(minmax_operator, cc_register, dominant_cc_register)
(arm_extendqisi_mem_op, power_of_two_operand, nonimmediate_di_operand)
(di_operand, nonimmediate_soft_df_operand, soft_df_operand)
(const_shift_operand, load_multiple_operation)
(store_multiple_operation, multi_register_push, thumb_cmp_operand)
(thumb_cmpneg_operand, thumb_cbrch_target_operand)
(cirrus_register_operand, cirrus_fp_register)
(cirrus_shift_const): Delete, replaced with equivalents in
predicates.md.
(shift_op): Handle ROTATE.
* arm-protos.h: Delete declarations for above.
* arm.h (PREDICATE_CODES, SPECIAL_MODE_PREDICATES): Delete.
* t-arm (MD_INCLUDES): Add predicates.md.
(s-preds): Depends on MD_INCLUDES.

From-SVN: r86512

20 years agomips.c (mips_gen_conditional_trap): Fix mode.
Richard Sandiford [Tue, 24 Aug 2004 20:04:57 +0000 (20:04 +0000)]
mips.c (mips_gen_conditional_trap): Fix mode.

* config/mips/mips.c (mips_gen_conditional_trap): Fix mode.
* config/mips/mips.md (*conditional_trap[sd]i): Name previously unnamed
patterns.  Redefine using :GPR.  Give the match_operator a mode.
Use '%2' rather than '%z2' for operand 2.

From-SVN: r86511

20 years agomips.md (load_call[sd]i): Redefine using :P.
Richard Sandiford [Tue, 24 Aug 2004 19:53:32 +0000 (19:53 +0000)]
mips.md (load_call[sd]i): Redefine using :P.

* config/mips/mips.md (load_call[sd]i): Redefine using :P.  Add mode
attribute.

From-SVN: r86510

20 years agomips.md (indirect_jump): Use force_reg.
Richard Sandiford [Tue, 24 Aug 2004 19:50:22 +0000 (19:50 +0000)]
mips.md (indirect_jump): Use force_reg.

* config/mips/mips.md (indirect_jump): Use force_reg.  Adjust names
of internal patterns.
(indirect_jump[sd]i): Renamed from indirect_jump_internal[12].
Redefine using :P.
(tablejump): Use expand_binop to calculate address.  Adjust names
of internal patterns.
(tablejump[sd]i): Renamed from tablejump_internal[12].
Redefine using :P.
(tablejump_mips16[12]): Delete.

From-SVN: r86509

20 years ago* config/mips/mips.md (*seq_[sd]i, *seq_[sd]i_mips16, *sne_[sd]i)
Richard Sandiford [Tue, 24 Aug 2004 19:39:00 +0000 (19:39 +0000)]
* config/mips/mips.md (*seq_[sd]i, *seq_[sd]i_mips16, *sne_[sd]i)
(*sgt_[sd]i, *sgt_[sd]i_mips16, *sge_[sd]i, *slt_[sd]i)
(*slt_[sd]i_mips16, *sle_[sd]i, *sle_[sd]i_mips16, *sgtu_[sd]i)
(*sgtu_[sd]i_mips16, *sge_[sd]i, *sltu_[sd]i, *sltu_[sd]i_mips16)
(*sleu_[sd]i, *sleu_[sd]i_mips16): Redefine using :GPR.

From-SVN: r86508

20 years agomips.md (cmpsi, cmpdi): Redefine using :GPR.
Richard Sandiford [Tue, 24 Aug 2004 19:35:07 +0000 (19:35 +0000)]
mips.md (cmpsi, cmpdi): Redefine using :GPR.

* config/mips/mips.md (cmpsi, cmpdi): Redefine using :GPR.
(*branch_zero[sd]i): Renamed from branch_zero{,_di}.  Redefine
using :GPR.
(*branch_zero[sd]i_inverted): Likewise branch_zero{,_di}_inverted.
(*branch_equality[sd]i): Likewise branch_equality{,_di}.
(*branch_equality[sd]i_inverted): Likewise
branch_equality{,_di}_inverted.
(*branch_equality[sd]i_mips16): Name formerly unnamed patterns.
Redefine using :GPR.

From-SVN: r86507

20 years agotrans-decl.c, [...]: Add and remove blank lines as required.
Tobias Schlüter [Tue, 24 Aug 2004 18:40:32 +0000 (20:40 +0200)]
trans-decl.c, [...]: Add and remove blank lines as required.

* trans-decl.c, trans-types.c: Add and remove blank lines as
required.

From-SVN: r86505

20 years ago* trans-const.c (gfc_conv_mpz_to_tree): Fix 64-bit shift warning.
Richard Henderson [Tue, 24 Aug 2004 18:23:11 +0000 (11:23 -0700)]
* trans-const.c (gfc_conv_mpz_to_tree): Fix 64-bit shift warning.

From-SVN: r86504

20 years agortl.def: Wrap MD-only codes in #ifdef GENERATOR_FILE.
Zack Weinberg [Tue, 24 Aug 2004 17:00:54 +0000 (17:00 +0000)]
rtl.def: Wrap MD-only codes in #ifdef GENERATOR_FILE.

* rtl.def: Wrap MD-only codes in #ifdef GENERATOR_FILE.
* gengtype.c: Don't include rtl.h.  Define enum rtx_code and
rtx_name, rtx_format arrays by direct reference to rtl.def,
first undefining GENERATOR_FILE.  Define enum insn_note and
note_insn_name array by direct reference to insn-notes.def.
(adjust_field_rtx_def): Remove local definition of rtx_name.
Use symbolic names for insn notes.
* Makefile.in (gengtype.o): Update dependencies.

From-SVN: r86499

20 years agoresolve.c (merge_argument_lists): Revert unintentionally committed change.
Tobias Schlüter [Tue, 24 Aug 2004 16:58:33 +0000 (18:58 +0200)]
resolve.c (merge_argument_lists): Revert unintentionally committed change.

* resolve.c (merge_argument_lists): Revert unintentionally
committed change.

From-SVN: r86498

20 years ago* resolve.c (resolve_entries): Fix a bunch of comment typos.
Tobias Schlüter [Tue, 24 Aug 2004 16:54:52 +0000 (18:54 +0200)]
* resolve.c (resolve_entries): Fix a bunch of comment typos.

From-SVN: r86497

20 years agortl.def: Reorganize, placing all codes used only in machine descriptions at the end.
Zack Weinberg [Tue, 24 Aug 2004 16:49:54 +0000 (16:49 +0000)]
rtl.def: Reorganize, placing all codes used only in machine descriptions at the end.

* rtl.def: Reorganize, placing all codes used only in machine
descriptions at the end.

From-SVN: r86496

20 years agobasic-block.h (struct basic_block_def): Reorder fields to eliminate interior padding.
Zack Weinberg [Tue, 24 Aug 2004 16:46:32 +0000 (16:46 +0000)]
basic-block.h (struct basic_block_def): Reorder fields to eliminate interior padding.

* basic-block.h (struct basic_block_def): Reorder fields to
eliminate interior padding.  Remove 'partition' field.
(BB_DISABLE_SCHEDULE, BB_HOT_PARTITION, BB_COLD_PARTITION)
(BB_UNPARTITIONED, BB_PARTITION, BB_SET_PARTITION)
(BB_COPY_PARTITION): New macros.
* bb-reorder.c, cfgcleanup.c, cfglayout.c, cfgrtl.c, ifcvt.c
Replace all references to the 'partition' field of a basic
block with new macros.

* insn-notes.def: Delete NOTE_INSN_DISABLE_SCHED_OF_BLOCK.
* final.c (final_scan_insn): Don't handle it.
* modulo-sched.c: Set BB_DISABLE_SCHEDULE flag on g->bb
instead of emitting a NOTE_INSN_DISABLE_SCHED_OF_BLOCK note.
* sched-rgn.c (sched_is_disabled_for_current_region_p):
Look for a BB_DISABLE_SCHEDULE flag on the block instead of a note.

From-SVN: r86495

20 years agotrans-decl.c (build_function_decl): Fix spelling in comment.
Tobias Schlüter [Tue, 24 Aug 2004 16:43:26 +0000 (18:43 +0200)]
trans-decl.c (build_function_decl): Fix spelling in comment.

* trans-decl.c (build_function_decl): Fix spelling in comment.
(build_entry_thunks): Remove code with no function.
(gfc_build_intrinsic_function_decls): Remove empty line.

From-SVN: r86494

20 years agoc-decl.c (c_init_decl_processing): Adjust build_common_tree_nodes call.
Nathan Sidwell [Tue, 24 Aug 2004 16:39:43 +0000 (16:39 +0000)]
c-decl.c (c_init_decl_processing): Adjust build_common_tree_nodes call.

* c-decl.c (c_init_decl_processing): Adjust
build_common_tree_nodes call.
* expmed.c (const_mult_add_overflow_p): Use
build_distinct_type_copy.
* stor-layout.c (early_type_list): Remove.
(layout_type): Don't append to early_type_list.
(initialize_sizetypes): Add signed_p argument.
(set_sizetype): Overwrite the stub type nodes directly.
* tree.c (copy_node_stat): Clear a type's value cache here ...
(build_distinct_type): ... not here.
(build_common_tree_nodes): Add signed_sizetype argument. Adjust.
* tree.h (initialize_sizetypes): Add signed_p argument.
(build_common_tree_nodes): Likewise.

* ada/utils.c (gnat_init_decl_processing): Adjust
build_common_tree_nodes call.

* cp/decl.c (cxx_init_decl_processing): Adjust
build_common_tree_nodes call.

* fortran/f95-lang.c (gfc_init_decl_processing): Adjust
build_common_tree_nodes call.

* java/decl.c (java_init_decl_processing): Adjust
initialize_sizetypes call.

* objc/objc-act.c (get_static_reference): Use
build_variant_type_copy.
(get_protocol_reference): Likewise.
* objc/objc-act.h (TREE_STATIC_TEMPLATE): Use TREE_PRIVATE.

* treelang/treetree.c (treelang_init_decl_processing): Adjust
build_common_tree_nodes call.

From-SVN: r86493

20 years ago* trans-types.c: Spelling and formatting fixes.
Tobias Schlüter [Tue, 24 Aug 2004 16:25:16 +0000 (18:25 +0200)]
* trans-types.c: Spelling and formatting fixes.

From-SVN: r86490

20 years ago* gfortran.dg/entry_2.f90: New test.
Paul Brook [Tue, 24 Aug 2004 16:20:45 +0000 (16:20 +0000)]
* gfortran.dg/entry_2.f90: New test.

From-SVN: r86489

20 years agore PR c++/16889 (ambiguity is not detected)
Nathan Sidwell [Tue, 24 Aug 2004 16:06:22 +0000 (16:06 +0000)]
re PR c++/16889 (ambiguity is not detected)

cp:
PR c++/16889
* (is_subobject_of_p): Resurrect & optimize.
(lookup_field_r): Use it.
testsuite:
PR c++/16889
* g++.dg/lookup/ambig[12].C: New.

From-SVN: r86488

20 years agogimplify.c (gimplify_array_ref_to_plus): Delete.
Richard Henderson [Tue, 24 Aug 2004 15:46:38 +0000 (08:46 -0700)]
gimplify.c (gimplify_array_ref_to_plus): Delete.

2004-08-24  Richard Henderson  <rth@redhat.com>
            Andrew Pinski  <apinski@apple.com>

        * gimplify.c (gimplify_array_ref_to_plus): Delete.
        (gimplify_addr_expr): Do not call gimplify_array_ref_to_plus
        for ARRAY_REF.

        * config/rs6000/rs6000.c (altivec_expand_builtin): Go passed
        ARRAY_REF also to get to the STRING_CST.

Co-Authored-By: Andrew Pinski <apinski@apple.com>
From-SVN: r86487

20 years agoMakefile.am (libgfortran_la_LDFLAGS): Add -lm.
David Edelsohn [Tue, 24 Aug 2004 15:20:52 +0000 (15:20 +0000)]
Makefile.am (libgfortran_la_LDFLAGS): Add -lm.

* Makefile.am (libgfortran_la_LDFLAGS): Add -lm.
* Makefile.in: Rebuilt.

From-SVN: r86486

20 years agore PR c++/16706 (ICE in finish_member_declaration, at cp/semantics.c:2126)
Kriang Lerdsuwanakij [Tue, 24 Aug 2004 14:13:50 +0000 (14:13 +0000)]
re PR c++/16706 (ICE in finish_member_declaration, at cp/semantics.c:2126)

PR c++/16706
* search.c (friend_accessible_p): Increment processing_template_decl
when deal with TEMPLATE_DECL of SCOPE.

* g++.dg/template/crash21.C: New test.
* g++.dg/template/crash22.C: Likewise.

From-SVN: r86482

20 years ago2832.cc: New.
Paolo Carlini [Tue, 24 Aug 2004 13:55:44 +0000 (13:55 +0000)]
2832.cc: New.

2004-08-24  Paolo Carlini  <pcarlini@suse.de>

* testsuite/27_io/basic_istringstream/rdbuf/wchar_t/2832.cc: New.
* testsuite/27_io/basic_istringstream/str/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_ostringstream/cons/wchar_t/3.cc: Likewise.
* testsuite/27_io/basic_ostringstream/rdbuf/wchar_t/2832.cc: Likewise.
* testsuite/27_io/basic_ostringstream/str/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_ostringstream/str/wchar_t/2.cc: Likewise.

* testsuite/27_io/basic_istringstream/rdbuf/char/2832.cc: Trim excess
newlines.
* testsuite/27_io/basic_istringstream/str/char/1.cc: Likewise.

From-SVN: r86481

20 years agoarm.c (arm_override_options): Update error message.
Paul Brook [Tue, 24 Aug 2004 11:32:53 +0000 (11:32 +0000)]
arm.c (arm_override_options): Update error message.

* config/arm/arm.c (arm_override_options): Update error message.
* config/arm/arm.h (TARGET_HARD_FLOAT): Rename to
TARGET_HARD_FLOAT_ABI.
(TARGET_SOFT_FLOAT_ABI): Rename to TARGET_HARD_FLOAT.
(LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Use TARGET_HARD_FLOAT_ABI.

From-SVN: r86479

20 years agore PR target/17093 ([m32r-*-gcc] ICE with -msdata=use -O0)
Nick Clifton [Tue, 24 Aug 2004 09:33:59 +0000 (09:33 +0000)]
re PR target/17093 ([m32r-*-gcc] ICE with -msdata=use -O0)

PR target/17093
* config/m32r.md (movsi_sda): Add SI mode specification to UNSPEC.

From-SVN: r86474

20 years agore PR c++/17149 (ICE: tree check: expected record_type or union_type or qual_union_ty...
Nathan Sidwell [Tue, 24 Aug 2004 09:04:06 +0000 (09:04 +0000)]
re PR c++/17149 (ICE: tree check: expected record_type or union_type or qual_union_type, have template_type_parm in check_accessibility_of_qualified_id, at cp/semantics.c:1388)

cp:
        PR c++/17149
        * semantics.c (check_accessibility_of_qualified_id): Defer check
        if qualifying_type is a template parameter.
testsuite:
        PR c++/17149
        * g++.dg/template/access15.C: New.

From-SVN: r86472

20 years agoMakefile.in (PROTO_OBJS): Add errors.o.
Nathan Sidwell [Tue, 24 Aug 2004 08:52:38 +0000 (08:52 +0000)]
Makefile.in (PROTO_OBJS): Add errors.o.

* Makefile.in (PROTO_OBJS): Add errors.o.
* protoize.c (fancy_abort): Remove.
* mips-tfile.c (fancy_abort): Add parameters.

From-SVN: r86471

20 years agotrouble.texi (C++ misunderstandings): Fix example code.
Jonathan Wakely [Tue, 24 Aug 2004 08:46:15 +0000 (09:46 +0100)]
trouble.texi (C++ misunderstandings): Fix example code.

2004-08-24  Jonathan Wakely  <redi@gcc.gnu.org>

* doc/trouble.texi (C++ misunderstandings): Fix example code.

From-SVN: r86470

20 years ago(PREDICATE_CODES): Remove duplicate defintion of seth_add3_operand.
Nick Clifton [Tue, 24 Aug 2004 08:07:31 +0000 (08:07 +0000)]
(PREDICATE_CODES): Remove duplicate defintion of seth_add3_operand.

From-SVN: r86469

20 years agoMakefile.in (HOOKS_H): Add dependency on MACHMODE_H.
Andreas Tobler [Tue, 24 Aug 2004 07:31:33 +0000 (09:31 +0200)]
Makefile.in (HOOKS_H): Add dependency on MACHMODE_H.

2004-08-24  Andreas Tobler  <a.tobler@schweiz.ch>

* Makefile.in (HOOKS_H): Add dependency on MACHMODE_H.
(host-default.o): Add dependency on HOOKS_H.
* config/x-linux: Likewise.
* config/x-solaris: Likewise.
* config/i386/x-mingw32: Likewise.
* config/rs6000/x-darwin: Likewise.

From-SVN: r86468

20 years agore PR c++/17163 (ICE with -frepo and static class variables)
Mark Mitchell [Tue, 24 Aug 2004 06:37:58 +0000 (06:37 +0000)]
re PR c++/17163 (ICE with -frepo and static class variables)

PR c++/17163
* pt.c (instantiate_decl): Do not try to apply
DECL_DECLARED_INLINED_P to a VAR_DECL.

PR c++/17163
* g++.dg/template/repo2.C: New test.

From-SVN: r86467

20 years agoFix typo reported by Kai Henningsen.
James E Wilson [Tue, 24 Aug 2004 05:14:07 +0000 (05:14 +0000)]
Fix typo reported by Kai Henningsen.

* reg-notes.def (REG_NOTE): In comment, change DEF_INSN_NOTE to
DEF_REG_NOTE.

From-SVN: r86465

20 years agotrans-const.c (gfc_conv_mpz_to_tree): Use mpz_getlimbn instead of going through an...
Richard Henderson [Tue, 24 Aug 2004 04:32:10 +0000 (21:32 -0700)]
trans-const.c (gfc_conv_mpz_to_tree): Use mpz_getlimbn instead of going through an intermediate string.

        * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_getlimbn instead
        of going through an intermediate string.  Fix 32/64 int/long bug.

From-SVN: r86464

20 years agore PR rtl-optimization/17078 (Jump into if(0)-substatement fails)
Roger Sayle [Tue, 24 Aug 2004 04:23:31 +0000 (04:23 +0000)]
re PR rtl-optimization/17078 (Jump into if(0)-substatement fails)

PR rtl-optimization/17078
* gcc.c-torture/execute/pr17078-1.c: New test case.

From-SVN: r86463

20 years agore PR debug/14492 (loc_descriptor_from_tree, in dwarf2out.c:9031)
Mark Mitchell [Tue, 24 Aug 2004 02:10:12 +0000 (02:10 +0000)]
re PR debug/14492 (loc_descriptor_from_tree, in dwarf2out.c:9031)

PR c/14492
* dwarf2out.c (loc_descriptor_from_tree): Robustify.

PR c/14492
* gcc.dg/debug/crash1.c: New test.

From-SVN: r86461

20 years agore PR rtl-optimization/16180 (gcc crashes when optimization is turned on)
Mark Mitchell [Tue, 24 Aug 2004 01:45:23 +0000 (01:45 +0000)]
re PR rtl-optimization/16180 (gcc crashes when optimization is turned on)

PR c/16180
* jump.c (duplicate_loop_exit_test): If the location reached by
the unconditional jump at the top of the loop is outside the loop,
then do not treat it as the exit test.

PR c/16180
* gcc.dg/loop-5.c: New test.

From-SVN: r86459

20 years agocfg.c (check_bb_profile): Fix typos.
Diego Novillo [Tue, 24 Aug 2004 01:13:01 +0000 (01:13 +0000)]
cfg.c (check_bb_profile): Fix typos.

* cfg.c (check_bb_profile): Fix typos.
* function.c (assign_parm_is_stack_parm): Likewise.
* tree-nested.c: Likewise.

From-SVN: r86457

20 years agoggc-zone.c (struc alloc_chunk): Rearrange flag bits and SIZE.
Daniel Jacobowitz [Tue, 24 Aug 2004 00:46:11 +0000 (00:46 +0000)]
ggc-zone.c (struc alloc_chunk): Rearrange flag bits and SIZE.

* ggc-zone.c (struc alloc_chunk): Rearrange flag bits and SIZE.
Remove TYPECODE.
(ggc_alloc_zone_1): Mark TYPE as unused.  Don't save it in the chunk.

From-SVN: r86456

20 years agodefaults.h (VECTOR_MODE_SUPPORTED_P): Remove macro.
Eric Christopher [Tue, 24 Aug 2004 00:30:52 +0000 (00:30 +0000)]
defaults.h (VECTOR_MODE_SUPPORTED_P): Remove macro.

2004-08-23  Eric Christopher  <echristo@redhat.com>

* defaults.h (VECTOR_MODE_SUPPORTED_P): Remove macro.
* system.h (VECTOR_MODE_SUPPORTED_P): Poison.
* target-def.h (TARGET_VECTOR_MODE_SUPPORTED_P): Define.
* target.h: Ditto.
* hooks.h: Include machmode.h.
(hook_bool_mode_false): Declare.
* hooks.c (hook_bool_mode_false): Define.
* expr.c (vector_mode_valid_p): Use targetm.vector_mode_supported_p.
* stor-layout.c (layout_type): Ditto.
* config/alpha/alpha.c (alpha_vector_mode_supported_p): New function.
Define to target macro.
* config/alpha/alpha.h (VECTOR_MODE_SUPPORTED_P): Delete.
* config/arm/arm.c: Ditto. Use.
* config/arm/arm.h: Ditto.
* config/arm/arm-protos.h: Ditto.
* config/i386/i386.c: Ditto.
* config/i386/i386.h: Ditto.
* config/rs6000/rs6000.c: Ditto.
* config/rs6000/rs6000.h: Ditto.
* config/sh/sh.c: Ditto.
* config/sh/sh.h: Ditto.
* config/sh/sh-protos.h: Ditto.
* config/sh/sh.md: Use.
* doc/tm.texi: Move documentation for VECTOR_MODE_SUPPORTED_P
to TARGET_VECTOR_MODE_SUPPORTED_P.

2004-08-23  Eric Christopher  <echristo@redhat.com>

* trans-types.c (gfc_type_for_mode): Remove VECTOR_TYPE_SUPPORTED_P
usage. Use build_vector_type_for_mode for vector types.

From-SVN: r86453

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

From-SVN: r86449

20 years agoignore autom4te.cache
R. Kelley Cook [Mon, 23 Aug 2004 23:51:56 +0000 (23:51 +0000)]
ignore autom4te.cache

From-SVN: r86446

20 years agore PR fortran/13465 (Data statement for large arrays compiles verrrry slllowwwly...
Richard Henderson [Mon, 23 Aug 2004 21:53:14 +0000 (14:53 -0700)]
re PR fortran/13465 (Data statement for large arrays compiles verrrry slllowwwly and shows quadratic behaviour.)

        PR 13465
        * data.c (find_con_by_offset): Search ordered list; handle
        elements with repeat counts.
        (gfc_assign_data_value_range): New.
        * gfortran.h (struct gfc_data_value): Make repeat unsigned.
        (gfc_assign_data_value_range): Declare.
        * match.c (top_val_list): Extract repeat count into a temporary.
        * resolve.c (values): Make left unsigned.
        (next_data_value): Don't decrement left.
        (check_data_variable): Use gfc_assign_data_value_range.

From-SVN: r86443

20 years agoaix_irix_threads.c: Move _THREADS checks after gc_priv.h include.
Hans Boehm [Mon, 23 Aug 2004 21:40:17 +0000 (21:40 +0000)]
aix_irix_threads.c: Move _THREADS checks after gc_priv.h include.

* aix_irix_threads.c: Move _THREADS checks after gc_priv.h include.
* backgraph.c, include/private/gc_pmark.h: Always include gc.h.

From-SVN: r86442

20 years agoprims.cc (JVMPI_NOTIFY_ALLOC): New macro.
Bryce McKinlay [Mon, 23 Aug 2004 21:31:53 +0000 (21:31 +0000)]
prims.cc (JVMPI_NOTIFY_ALLOC): New macro.

2004-08-23  Bryce McKinlay  <mckinlay@redhat.com>

* prims.cc (JVMPI_NOTIFY_ALLOC): New macro. Call jvmpi_notify_alloc
only if jvmpi is enabled.
(jvmpi_notify_alloc): Don't check if jvmpi is enabled here.
(_Jv_AllocObjectNoFinalizer): Use JVMPI_NOTIFY_ALLOC.
(_Jv_AllocString): Likewise.
(_Jv_AllocPtrFreeObject): Likewise.

From-SVN: r86441

20 years agodefineclass.cc: Include <stdio.h>.
Hans Boehm [Mon, 23 Aug 2004 19:21:19 +0000 (19:21 +0000)]
defineclass.cc: Include <stdio.h>.

* defineclass.cc: Include <stdio.h>.
* java/lang/natClassLoader.cc: Include <stdio.h>.

From-SVN: r86434

20 years agoRevert earlier fix for PR 14029
Andrew Pinski [Mon, 23 Aug 2004 18:28:11 +0000 (18:28 +0000)]
Revert earlier fix for PR 14029

2004-08-22 Andrew Pinski  <apinski@apple.com>

        Revert:
        2004-08-22  Andrew Pinski  <apinski@apple.com>
        PR c++/14029
        * typeck.c (build_unary_op): Use &a.b if the foldded lowered
        expression is not constant.

[[Split portion of a mixed commit.]]

From-SVN: r86431.2

20 years agore PR libffi/13141 (FAIL: InvokeReturn output - source compiled test <libffi problem>)
David Daney [Mon, 23 Aug 2004 16:49:17 +0000 (16:49 +0000)]
re PR libffi/13141 (FAIL: InvokeReturn output - source compiled test <libffi problem>)

2004-08-23  David Daney <daney@avtrex.com>

PR libgcj/13141
* src/mips/ffitarget.h (FFI_O32_SOFT_FLOAT): New ABI.
* src/mips/ffi.c (ffi_prep_args): Fix alignment calculation.
(ffi_prep_cif_machdep): Handle FFI_O32_SOFT_FLOAT floating point
parameters and return types.
(ffi_call): Handle FFI_O32_SOFT_FLOAT ABI.
(ffi_prep_closure): Ditto.
(ffi_closure_mips_inner_O32): Handle FFI_O32_SOFT_FLOAT ABI, fix
alignment calculations.
* src/mips/o32.S (ffi_closure_O32): Don't use floating point
instructions if FFI_O32_SOFT_FLOAT, make stack frame ABI compliant.

From-SVN: r86429

20 years agobaseline_symbols.txt: New.
Matthias Klose [Mon, 23 Aug 2004 15:07:53 +0000 (15:07 +0000)]
baseline_symbols.txt: New.

2004-08-22  Matthias Klose  <doko@debian.org>

        * config/abi/m68k-linux-gnu/baseline_symbols.txt: New.
        * config/abi/sparc-linux-gnu/baseline_symbols.txt: Update to 3.4.0.

From-SVN: r86428

20 years agowin32_threads.c: Move GC_WIN32_THREADS check after gc_priv.h include.
Bryce McKinlay [Mon, 23 Aug 2004 15:07:00 +0000 (16:07 +0100)]
win32_threads.c: Move GC_WIN32_THREADS check after gc_priv.h include.

2004-08-23  Bryce McKinlay  <mckinlay@redhat.com>

* win32_threads.c: Move GC_WIN32_THREADS check after gc_priv.h
include. Reported by Danny Smith.

From-SVN: r86427

20 years agoio.h, [...]: Fix formatting issues, update copyright years.
Tobias Schlüter [Mon, 23 Aug 2004 14:28:31 +0000 (16:28 +0200)]
io.h, [...]: Fix formatting issues, update copyright years.

* io/io.h, io/list_read.c, io/open.c, io/transfer.c, io/write.c:
Fix formatting issues, update copyright years.

From-SVN: r86425

20 years agoMakefile.in (BUILD_ERRORS): Set to build-errors.
Nathan Sidwell [Mon, 23 Aug 2004 11:57:02 +0000 (11:57 +0000)]
Makefile.in (BUILD_ERRORS): Set to build-errors.

* Makefile.in (BUILD_ERRORS): Set to build-errors.
(errors.o): New target for host.
(build-errors.o): New target for build.
(genobjs): Replace errors.o with build-errors.
(gengenrtl$(buildexeext)): Add $(BUILD_ERRORS).
(GCOV_OBJS, GCOV_DUMP_OBJS): Add errors.o.
(fix-headers$(build_exeext)): Add $(BUILD_ERRORS).
(fix-header.o): Add errors.h
* collect2.c (fancy_abort): Add parameters.
* collect2.h (fancy_abort): Don't declare.
* errors.h (fancy_abort): Don't declare.
* errors.c: Include either bconfig.h or config.h.
(fancy_abort): Trim filename.
* fix-header.c (v_fatal, fatal): Remove.
(progname): Remove definition.
(main): Set progname here.
* gcc.c (fancy_abort): Add parameters.
* gcc.h (fancy_abort): Remove declaration.
* gcov.c (fancy_abort): Remove.
* rtl.h (fancy_abort): Don't declare.
(abort): Don't define.
* tree.h (fancy_abort): Don't declare.
(abort): Don't define.
* system.h (fancy_abort): Declare.
(abort): Define to fancy_abort.
* fixinc/Makefile.in (ALLOBJ): Add ../build-errors.o
* java/jv-scan.c (fancy_abort): Add.

From-SVN: r86424

20 years agoconfigure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
Paolo Carlini [Mon, 23 Aug 2004 10:18:31 +0000 (10:18 +0000)]
configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.

2004-08-23  Paolo Carlini  <pcarlini@suse.de>

* configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
* aclocal.m4: Regenerate with automake-1.9.1.
* configure: Regenerate.
* Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.

From-SVN: r86423

20 years agotree.h (enum size_type_kind): Remove USIZETYPE, UBITSIZETYPE.
Nathan Sidwell [Mon, 23 Aug 2004 08:47:08 +0000 (08:47 +0000)]
tree.h (enum size_type_kind): Remove USIZETYPE, UBITSIZETYPE.

* tree.h (enum size_type_kind): Remove USIZETYPE, UBITSIZETYPE.
(usize_type, ubitsizetype): Remove.
* stor-layout.c (set_sizetype): Don't initialize usizetype,
ubitsizetype.
* fold-const.c (size_diffop): TYPE can never be ubitsizetype.

From-SVN: r86422

20 years agotree.h (build_distinct_type_copy): New.
Nathan Sidwell [Mon, 23 Aug 2004 08:41:57 +0000 (08:41 +0000)]
tree.h (build_distinct_type_copy): New.

* tree.h (build_distinct_type_copy): New.
(build_type_copy): ... here.  Rename to ...
(build_variant_type_copy): ... here.
* tree.c (build_qualified_type): Rename build_type_copy call.
(build_distinct_type_copy): New, broken out of ...
(build_type_copy): ... here.  Rename to ...
(build_variant_type_copy): ... here.  Use
build_distinct_type_copy.
(build_common_tree_nodes_2): Rename build_type_copy call.
* c-common.c (c_common_nodes_and_builtins): Rename build_type_copy
call.
(handle_packed_attribute, handle_unused_attribute,
handle_transparanet_union_attribute, handle_aligned_attribute,
handle_deprecated_attribute): Likewise.
* c-decl.c (clone_underlying_type, store_parm_decls_oldstyle):
Likewise.
* config/arm/arm.c (arm_handle_isr_attribyte): Likewise.
* config/rs6000/rs6000.c (rs6000_init_builtins): Use
build_distinct_type_copy.

* cp/name-lookup.c (pushdecl): Rename build_type_copy call.
* cp/tree.c (cp_build_qualified_type_real,
build_exception_variant, handle_java_interface_attribute): Likewise.

From-SVN: r86421

20 years agomips.md (mfhilo_[sd]i): Redefine using :GPR.
Richard Sandiford [Mon, 23 Aug 2004 08:25:56 +0000 (08:25 +0000)]
mips.md (mfhilo_[sd]i): Redefine using :GPR.

* config/mips/mips.md (mfhilo_[sd]i): Redefine using :GPR.  Add mode
attribute.

From-SVN: r86420

20 years agomips.md (length): Don't use mips_fetch_insns for indexed loads and stores.
Richard Sandiford [Mon, 23 Aug 2004 08:20:53 +0000 (08:20 +0000)]
mips.md (length): Don't use mips_fetch_insns for indexed loads and stores.

* config/mips/mips.md (length): Don't use mips_fetch_insns for indexed
loads and stores.
(*lwxc1_<mode>, *ldxc1_<mode>, *swxc1_<mode>, *sdxc1_<mode>): Name
formerly unnamed patterns.  Redefine using :P for the address.  Remove
explicit length attributes.

From-SVN: r86419

20 years agotree-ssa-loop-im.c (fem_single_reachable_address, [...]): New functions.
Zdenek Dvorak [Mon, 23 Aug 2004 08:17:20 +0000 (10:17 +0200)]
tree-ssa-loop-im.c (fem_single_reachable_address, [...]): New functions.

* tree-ssa-loop-im.c (fem_single_reachable_address, for_each_memref):
New functions.
(single_reachable_address): Use them.
(schedule_sm): Add dump.
(is_call_clobbered_ref): New function.
(determine_lsm_reg): Check whether the reference is call clobbered.
Only work for gimple_reg_type values.

From-SVN: r86418

20 years agomips.md (*mov<mode>_ra): Name previously unnamed MIPS16 $31 store insns.
Richard Sandiford [Mon, 23 Aug 2004 08:11:40 +0000 (08:11 +0000)]
mips.md (*mov<mode>_ra): Name previously unnamed MIPS16 $31 store insns.

* config/mips/mips.md (*mov<mode>_ra): Name previously unnamed MIPS16
$31 store insns.  Redefine using :GPR.

From-SVN: r86417

20 years agomips.md (P): New mode macro.
Richard Sandiford [Mon, 23 Aug 2004 08:09:04 +0000 (08:09 +0000)]
mips.md (P): New mode macro.

* config/mips/mips.md (P): New mode macro.
(*xgot_hi[sd]i, *xgot_lo[sd]i, *got_disp[sd]i, *got_page[sd]i)
(*load_got[sd]i, *low[sd]i, *low[sd]i_mips16): Redefine using :P.
Add mode attributes.

From-SVN: r86416

20 years ago* gcc.c-torture/execute/20040823-1.c: New test.
Zdenek Dvorak [Mon, 23 Aug 2004 08:03:39 +0000 (10:03 +0200)]
* gcc.c-torture/execute/20040823-1.c: New test.

From-SVN: r86415

20 years agomips.md (UNSPEC_[LS][WD][LR]): Delete in favor of...
Richard Sandiford [Mon, 23 Aug 2004 08:03:15 +0000 (08:03 +0000)]
mips.md (UNSPEC_[LS][WD][LR]): Delete in favor of...

* config/mips/mips.md (UNSPEC_[LS][WD][LR]): Delete in favor of...
(UNSPEC_{LOAD,STORE}_{LEFT,RIGHT}): ...these new constants.  Shuffle
later constants to cover the gap.
(load, store): New mode attributes.
(mov_l[wd]l, mov_l[wd]r, mov_s[wd]l, mov_s[wd]r): Redefine using :GPR.
Use new unspec constants.

From-SVN: r86414

20 years agomips.md (one_cmpl[sd]i2): Redefine using :GPR.
Richard Sandiford [Mon, 23 Aug 2004 07:59:27 +0000 (07:59 +0000)]
mips.md (one_cmpl[sd]i2): Redefine using :GPR.

* config/mips/mips.md (one_cmpl[sd]i2): Redefine using :GPR.
(and[sd]3, ior[sd]i3, xor[sd]i3): Likewise.  Change 32-bit patterns
to use register_operand rather than uns_arith_operand as the predicate
for operand 1.  Remove redundant MIPS16 force_reg() for operand 1.
(*and[sd]i3, *ior[sd]i3, *xor[sd]i3): Name formerly unnamed patterns.
Redefine using :GPR.  Make same predicate change here.  Extend the
commutativity of operands 1 and 2 from the SImode version to the
DImode one.
(*and[sd]i3_mips16, *ior[sd]i3_mips16, *xor[sd]i3_mips16): Likewise,
but with no predicate changes.
(*nor[sd]i3): Redefine using :GPR.

From-SVN: r86413

20 years agotree-ssa-operands.c (get_call_expr_operands): Add VUSE operands for noreturn functions.
Zdenek Dvorak [Mon, 23 Aug 2004 07:47:31 +0000 (09:47 +0200)]
tree-ssa-operands.c (get_call_expr_operands): Add VUSE operands for noreturn functions.

* tree-ssa-operands.c (get_call_expr_operands): Add VUSE operands for
noreturn functions.

From-SVN: r86411

20 years agomips.h (ISA_HAS_DCLZ_DCLO): Delete.
Richard Sandiford [Mon, 23 Aug 2004 07:23:00 +0000 (07:23 +0000)]
mips.h (ISA_HAS_DCLZ_DCLO): Delete.

* config/mips/mips.h (ISA_HAS_DCLZ_DCLO): Delete.
* config/mips/mips.md (abs[sd]i2): Redefine using :GPR.  Only use
branch-likely insns for absdi2 if GENERATE_BRANCHLIKELY.  Use "%."
rather than "%z2" (with a fake const0_rtx for operand 2).
(ffs[sd]i2): Redefine using :GPR.
(clz[sd]i2): Likewise.  Use ISA_HAS_CLO_CLZ for the 64-bit case.

From-SVN: r86409

20 years ago* config/mips/mips.md ({,u}divmod[sd]i4): Redefine using :GPR.
Richard Sandiford [Mon, 23 Aug 2004 07:13:13 +0000 (07:13 +0000)]
* config/mips/mips.md ({,u}divmod[sd]i4): Redefine using :GPR.

From-SVN: r86408

20 years agomips.md (any_extend): New code macro.
Richard Sandiford [Mon, 23 Aug 2004 07:09:47 +0000 (07:09 +0000)]
mips.md (any_extend): New code macro.

* config/mips/mips.md (any_extend): New code macro.
(u, su): New code attributes.
({,u}mulsidi3, {,u}mulsidi3_32bit_internal, {,u}mulsidi3_32bit_r4000)
({u,s}mulsi3_highpart, {u,s}mulsi3_highpart_internal)
({u,s}mulsi3_highpart_mulhi_internal, {s,u}muldi3_highpart)
(*{s,u}mul_acc_di): Redefine using any_extend.
(*{,u}muls_di, *{s,u}msac_di): Likewise.  Change names of patterns
to reflect real insn names.
(*mulsidi3_64bit, *mulsidi3_64bit_parts): Replace use of match_operator
with an any_extend template.
({u,s}mulsi3_highpart_neg_mulhi_internal): Redefine using any_extend.
Add '*' to name.

From-SVN: r86407

20 years agomips.h (GENERATE_MULT3_SI): Check TARGET_MAD.
Richard Sandiford [Mon, 23 Aug 2004 07:00:22 +0000 (07:00 +0000)]
mips.h (GENERATE_MULT3_SI): Check TARGET_MAD.

* config/mips/mips.h (GENERATE_MULT3_SI): Check TARGET_MAD.
* config/mips/mips.md (mul[sd]i3, mul[sd]i3_internal)
(mul[sd]i3_r4000): Redefine using :GPR.
(mulsi3_mult3): Don't check TARGET_MAD separately.
(muldi3_mult3): Moved after mulsi_mult3.

From-SVN: r86406

20 years agoconfig.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF.
Richard Sandiford [Mon, 23 Aug 2004 06:53:46 +0000 (06:53 +0000)]
config.gcc (mips-*-*): Remove definitions of MASK_GAS and OBJECT_FORMAT_ELF.

* config.gcc (mips-*-*): Remove definitions of MASK_GAS and
OBJECT_FORMAT_ELF.  Set MASK_SPLIT_ADDR by default if using GNU ld.
* config/mips/mips.h (MASK_GAS): Delete.  Shuffle later masks down.
(TARGET_GAS, TARGET_MIPS_AS): Delete.
(TARGET_GPWORD): Define to true for n32 on IRIX.
(TARGET_SWITCHES): Remove -mmips-as.  Turn -mgas into a no-op.
(MIPS_AS_ASM_SPEC, SUBTARGET_MIPS_AS_ASM_SPEC): Delete.
(GAS_ASM_SPEC): Delete, folding into ASM_SPEC.
(ASM_ABI_DEFAULT_SPEC, TARGET_ASM_SPEC): Delete.
(MDEBUG_ASM_SPEC): Delete, folding into...
(SUBTARGET_ASM_DEBUGGING_SPEC): ...here.
(ASM_SPEC): Inline old GAS_ASM_SPEC.  Use GNU names for ABI switches.
(EXTRA_SPECS): Remove mips_as_asm_spec, gas_asm_spec, target_asm_spec,
subtarget_mips_as_asm_spec, mdebug_asm_spec.  Use MULTILIB_ABI_DEFAULT
to define asm_abi_default_spec.
(ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): Delete.
(TARGET_ASM_SELECT_SECTION): Delete.
* config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): Define to 0x7ff0
for non-mips16 code, removing previous workaround for SGI assemblers.
(TARGET_ASM_INTEGER, mips_assemble_integer): Delete.
(TARGET_ASM_ALIGNED_DI_OP): Define this instead.
(override_options): Remove !TARGET_GAS and !have_named_sections code.
(print_operand): Fold TARGET_GAS conditionals into asm strings.
(mips_output_filename): Remove !TARGET_GAS code.  Replace use of
ASM_STABS_OP and ASM_STABN_OP.
(mips_file_start): Remove TARGET_MIPS_AS/TARGET_GAS checks.
(mips_output_aligned_decl_common): Remove mention of SGI o32 assembler.
(mips_output_function_prologue): Remove !TARGET_GAS code.
(mips_select_rtx_section): Remove !have_named_sections code.
(mips_select_section): Delete.
* config/mips/mips.md (trap): Remove !TARGET_GAS check.
* config/mips/linux.h (TARGET_DEFAULT): Remove use of MASK_GAS.
* config/mips/sdb.h (PUT_SDB_DEF, PUT_SDB_PLAIN_DEF): Delete.
(PUT_SDB_BLOCK_START, PUT_SDB_BLOCK_END): Fold TARGET_GAS conditional.
* config/mips/vxworks.h (ASM_SPEC): As for mips.h.
* config/mips/windiss.h (ASM_SPEC): Likewise.

testsuite/
* gcc.dg/special/mips-abi.exp: Expect gcc to pass the GNU ABI flags
to the assembler.  Simplify test accordingly.
(asm_abi_flags): Use GNU names.
(check_mips_abi, default_abi): Use string matches against "-mabi=*"
to check for ABI flags.

From-SVN: r86405

20 years agoread-rtl.c (map_value, [...]): New structures.
Richard Sandiford [Mon, 23 Aug 2004 05:55:50 +0000 (05:55 +0000)]
read-rtl.c (map_value, [...]): New structures.

* read-rtl.c (map_value, mapping, macro_group): New structures.
(BELLWETHER_CODE): New macro.
(modes, codes, bellwether_codes): New variables.
(find_mode, uses_mode_macro_p, apply_mode_macro, find_code)
(uses_code_macro_p, apply_code_macro, apply_macro_to_string)
(apply_macro_to_rtx, uses_macro_p, add_condition_to_string)
(add_condition_to_rtx, apply_macro_traverse, add_mapping)
(add_map_value, initialize_macros): New functions.
(def_hash, def_hash_eq_p): Generalize to anything that points to,
or starts with, a char * field.
(find_macro, read_mapping, check_code_macro): New functions.
(read_rtx_1): New, split out from read_rtx.  Handle the new
define_{mode,code}_{macro,attr} constructs.  Use find_macro
to parse the name of a code or mode.  Use BELLWETHER_CODE to
extract the format and to choose a suitable code for rtx_alloc.
Modify recursive invocations to use read_rtx_1.
(read_rtx): Call initialize_macros.  Apply code and mode macros
to the rtx returned by read_rtx_1.  Cache everything after the
first macro expansion for subsequent read_rtx calls.
* doc/md.texi: Document new .md constructs.
* config/mips/mips.md (GPR): New mode macro.
(d, si8_di5): New mode attributes.
(any_cond): New code macro.
(add[sd]i3): Redefine using :GPR.
(*add[sd]i3): Likewise, renaming from add[sd]i3_internal.
(*add[sd]i3_sp[12], *add<mode>3_mips16): Redefine using :GPR, naming
previously unnamed MIPS16 patterns.
(*addsi3_extended): Renamed from addsi3_internal_2.  Fix overly long
lines.  Don't match (plus (const_int 0) ...).
(*addsi3_extended_mips16): Name previously unnamed MIPS16 pattern.
Use a define_split to generate the addition.
(sub[sd]i3): Redefine using :GPR.  Turn subsi3 into a define_insn.
(subsi3_internal): Delete.
(*subsi3_extended): Renamed from subsi3_internal_2.
(bunordered, bordered, bunlt, bunge, buneq, bltgt, bunle, bungt)
(beq, bne, bgt, bge, blt, ble, bgtu, bgeu, bltu, bleu): Redefine
using an any_cond template.

From-SVN: r86404

20 years ago* read-rtl.c (read_rtx): Tidy use of format_ptr.
Richard Sandiford [Mon, 23 Aug 2004 05:52:37 +0000 (05:52 +0000)]
* read-rtl.c (read_rtx): Tidy use of format_ptr.

From-SVN: r86403

20 years agoread-rtl.c (string_obstack): New file-scope variable.
Richard Sandiford [Mon, 23 Aug 2004 05:51:25 +0000 (05:51 +0000)]
read-rtl.c (string_obstack): New file-scope variable.

* read-rtl.c (string_obstack): New file-scope variable.
(read_string, read_quoted_string, read_braced_string)
(read_escape): Remove obstack parameter and use string_obstack instead.
(read_rtx): Remove function-local rtl_obstack and initialize
string_obstack instead.  Update call to read_string.

From-SVN: r86402

20 years agore PR tree-optimization/15262 ([tree-ssa] Alias analyzer cannot handle addressable...
Andrew Pinski [Mon, 23 Aug 2004 03:12:38 +0000 (03:12 +0000)]
re PR tree-optimization/15262 ([tree-ssa] Alias analyzer cannot handle addressable fields)

2004-08-22  Andrew Pinski  <apinski@apple.com>

       PR c/15262
       * c-typeck.c (build_unary_op): Use &a.b if the foldded lowered
       expression is not constant.
       (c_finish_return): Do not go through INDIRECT_REF when looking
       for the inner expression of an ADDR_EXPR for warning about.

2004-08-22  Andrew Pinski  <apinski@apple.com>

       * g++.dg/opt/pr14029.C: New test.
       * gcc.c-torture/execute/pr15262.c: New test.
2004-08-22  Andrew Pinski  <apinski@apple.com>

       PR c++/14029
       * typeck.c (build_unary_op): Use &a.b if the foldded lowered
       expression is not constant.

From-SVN: r86396

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

From-SVN: r86392

20 years agore PR middle-end/17075 (miscompilation with tail calls in cfgexpand)
Richard Henderson [Mon, 23 Aug 2004 00:02:55 +0000 (17:02 -0700)]
re PR middle-end/17075 (miscompilation with tail calls in cfgexpand)

        PR 17075
        * cfgexpand.c (expand_gimple_tailcall): Detect when we can both
        create new blocks and fall through.
        (expand_gimple_basic_block): Update to match.

From-SVN: r86389

20 years agoreload.c (find_reloads_address): Make return value tri-state.
Ulrich Weigand [Sun, 22 Aug 2004 22:09:12 +0000 (22:09 +0000)]
reload.c (find_reloads_address): Make return value tri-state.

* reload.c (find_reloads_address): Make return value tri-state.
Return -1 if LEGITIMIZE_RELOAD_ADDRESS succeeded.
(find_reloads): Assume that reloaded addresses match 'o' or
EXTRA_MEMORY_CONSTRAINT constraints only if find_reloads_address
returned 1 (not -1).  Omit optional reloads for address operands
only if find_reloads_address returned 1 (not -1).

* config/s390/s390.c (legitimize_reload_address): New function.
* config/s390/s390-protos.h (legitimize_reload_address): Declare.
* config/s390/s390.h (LEGITIMIZE_RELOAD_ADDRESS): Define.  Call
legitimize_reload_address.

From-SVN: r86388