Commit Graph

57053 Commits

Author SHA1 Message Date
Per Bothner
dd0a905f24 Channels.java (newInputStream, [...]): Optimize when argument is a FileChannelImpl.
* java/nio/channels/Channels.java (newInputStream, newOutputStream):
	Optimize when argument is a FileChannelImpl.
	(newInputStream(FileChannelImpl), newOutputStream(FileChannelImpl)):
	New native methods.
	* java/nio/channels/natChannels.cc:  New file for new native methods.
	* Makefile.am:  Update accordingly.

From-SVN: r78867
2004-03-03 15:50:03 -08:00
Stuart Hastings
d79944f484 config.gcc: Arrange for Darwin/x86 to build libgcc_eh.a.
2004-03-03  Stuart Hastings  <stuart@apple.com>
	* gcc/config.gcc: Arrange for Darwin/x86 to build libgcc_eh.a.

From-SVN: r78866
2004-03-03 23:16:46 +00:00
Bob Wilson
c4909065ce * gcc.dg/const-elim-1.c: xfail for xtensa.
From-SVN: r78864
2004-03-03 22:14:14 +00:00
Paolo Carlini
ced3ad4d7c locale_facets.tcc (money_put<>::_M_insert): Fix warning regression.
2004-03-03  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
	Fix warning regression.

From-SVN: r78861
2004-03-03 20:51:22 +00:00
Eric Botcazou
fc9232c98e sparc.c (noov_compare64_op): Fix typo.
* config/sparc/sparc.c (noov_compare64_op): Fix typo.

	* config/sparc/sparc.h (ASM_FLOAT): Delete.
	(ASM_DOUBLE): Likewise.
	(ASM_LONGDOUBLE): Likewise.
	* config/sparc/pbd.h (ASM_INT_OP): Delete.

From-SVN: r78859
2004-03-03 18:42:26 +00:00
Richard Henderson
b7048ab7b2 re PR rtl-optimization/13862 (ICE while optimizing asm)
PR opt/13862
        * cselib.c (cselib_record_sets): Don't record multiple sets in
        asm insns.

From-SVN: r78845
2004-03-03 10:31:36 -08:00
Paolo Carlini
039e3c5c45 locale_facets.tcc (money_put<>::_M_insert): Deal properly with empty __digits and negative frac_digits, clean-up a bit.
2004-03-03  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (money_put<>::_M_insert):
	Deal properly with empty __digits and negative frac_digits,
	clean-up a bit.

From-SVN: r78844
2004-03-03 18:07:23 +00:00
Mostafa Hagog
f9957958fe common.opt: Add description of the new -fgcse-after-reload flag.
2004-03-03  Mostafa Hagog  <mustafa@il.ibm.com>

        * common.opt: Add description of the new -fgcse-after-reload flag.

        * flags.h (flag_gcse_after_reload): Declaration of global variable.

        * gcse.c (reg_used_on_edge ,reg_set_between_after_reload_p,
        reg_used_between_after_reload_p, rtx get_avail_load_store_reg,
        is_jump_table_basic_block, bb_has_well_behaved_predecessors,
        get_bb_avail_insn, hash_scan_set_after_reload,
        compute_hash_table_after_reload, eliminate_partially_redundant_loads,
        gcse_after_reload, get_bb_avail_insn): New functions to implement
        gcse-after-reload.
        (gcse_after_reload_main): New function, the main entry point to
        gcse-after-reload.

        * rtl.h (gcse_after_reload_main): Declaration of the new function.

        * opts.c (common_handle_option): Handle the -fgcse-after-reload flag.

        * toplev.c (flag_gcse_after_reload): Initialization.

        * passes.c (rest_of_handl_gcse2): Call gcse_after_reload_main.

        * params.def (PARAM_GCSE_AFTER_RELOAD_PARTIAL_FRACTION,
        PARAM_GCSE_AFTER_RELOAD_CRITICAL_FRACTION): New parameters for tuning
        the gcse after reload optimization.

        * params.h (GCSE_AFTER_RELOAD_PARTIAL_FRACTION,
        GCSE_AFTER_RELOAD_CRITICAL_FRACTION): Two macros to access the tuning
        parameters.

        * doc/invoke.texi: Documentation for the new flag gcse-after-reload.

From-SVN: r78842
2004-03-03 11:32:45 -05:00
Nicolas Pitre
6f6dedf5bd ieee754-df.S (muldf3, divdf3): Fix denormalization of small negative values.
* config/arm/ieee754-df.S (muldf3, divdf3): Fix denormalization of
small negative values.

From-SVN: r78841
2004-03-03 16:09:28 +00:00
Jonathan Wakely
0d957d2614 documentation.html: Regenerate.
2004-03-03  Jonathan Wakely  <redi@gcc.gnu.org>

	* docs/html/documentation.html: Regenerate.

From-SVN: r78838
2004-03-03 15:52:54 +00:00
Jan Hubicka
6790d1abcc cselib.c (hash_table): Remove GTY marker.
* cselib.c (hash_table):  Remove GTY marker.
	(reg_values): Turn into array.
	(used_regs): Likewise.
	(n_used_regs): New static variable.
	(reg_values_old): Kill.
	(clear_table): Update uses of arrays.
	(cselib_lookup): Likewise.
	(cselib_record_set): Likewise.
	(cselib_init): Likewise.
	(cselib_finish): Likewise.
	(cselib_udpate_varray_sizes): Kill.
	* cselib.h (cselib_update_varray_sizes): Kill.

From-SVN: r78830
2004-03-03 14:02:43 +00:00
Paul Brook
33e6a97ae7 * flow.c (ior_reg_cond, and_reg_cond): Remove stray ")".
From-SVN: r78827
2004-03-03 11:41:47 +00:00
Jan Hubicka
b9dcdee46e ggc-common.c (ggc_alloc_cleared_stat, [...]): Rename from ...; make statistics transparent.
* ggc-common.c (ggc_alloc_cleared_stat, ggc_realloc_stat):
	Rename from ...; make statistics transparent.
	(ggc_alloc_cleared, ggc_realloc_stat): ... these.
	(loc_descriptor): New structure.
	(hash_descriptor, eq_descriptor, loc_descriptor, cmp_statistics,
	add_statistics):
	New static function.
	(ggc_record_overhead, dump_statistics): New global function.
	* ggc-none.c (ggc_alloc_types_stat, ggc_alloc_stat, ggc_alloc_zone_stat,
	ggc_alloc_cleared_stat, ggc_realloc_stat, ggc_alloc_typed_stat): Rename
	from ...; accept locations
	(ggc_alloc_types, ggc_alloc, ggc_alloc_zone, ggc_alloc_cleared,
	ggc_realloc, ggc_alloc_typed):  ... this one.
	from ...; accept locations
	* ggc-page.c (ggc_alloc_typed_stat, ggc_alloc_zone_stat,
	ggc_alloc_stat): Rename from ... ; pass locations
	* ggc-page.c (ggc_alloc_typed, ggc_alloc_zone, ggc_alloc):
	... this one.
	(ggc_alloc_stat): Record overehead.
	* ggc.h (ggc_alloc_types, ggc_alloc, ggc_alloc_zone, ggc_alloc_cleared,
	ggc_realloc, ggc_alloc_typed):  Turn to macros
	(ggc_alloc_types_stat, ggc_alloc_stat, ggc_alloc_zone_stat,
	ggc_alloc_cleared_stat, ggc_realloc_stat, ggc_alloc_typed_stat): Declare.
	(dump_ggc_loc_satistics, ggc_record_overehead): Declare.
	* langhooks.h (lhd_make_node): Declare.
	(LANG_HOOKS_MAKE_TYPE): Default to new function,
	* langhooks.c (lhd_make_node): New.
	* rtl.c (rtx_alloc_stat, swallow_copy_rtx_stat): Rename from ... ; pass
	locations.
	(rtx_alloc, swallow_copy_rtx): ... this one.
	* rtl.h (rtx_alloc, swallow_copy_rtx): Turn to macros.
	* rtl.c (rtx_alloc_stat, swallow_copy_rtx_stat): Declare.
	* toplpev.c (finalize): Dump stats.
	* tree.c (make_node_stat, copy_node_stat, make_tree_vec_stat,
	build_tree_list_stat, tree_cons_stat, build?_stat,  build_decl_stat):
	Rename from ... ; pass locators.
	(make_node, copy_node, make_tree_vec, build_tree_list, tree_cons,
	build?,  build_decl): Declare.
	* tree.h (make_node_stat, copy_node_stat, make_tree_vec_stat,
	build_tree_list_stat, tree_cons_stat, build?_stat,  build_decl_stat):
	Declare.
	(make_node, copy_node, make_tree_vec, build_tree_list, tree_cons,
	build?,  build_decl): New macros.
	* Makefile.in (RTL_H, TREE_H): Add statistics.h dependency.
	* statistics.h: New file.

From-SVN: r78826
2004-03-03 11:25:51 +00:00
Maciej W. Rozycki
6ba7b54780 mips.h (MASK_FIX_SB1): Bump.
* config/mips/mips.h (MASK_FIX_SB1): Bump.
	(MASK_FIX_R4400, TARGET_FIX_R4400): New macros.
	(TARGET_SWITCHES): Add -mfix-r4400 and -mno-fix-r4400.
	* config/mips/mips.c (mips_output_division): Fill the branch delay
	slot with a nop if TARGET_FIX_R4000.  Extend R4000 workarounds to
	TARGET_FIX_R4400.
	(mips_output_division): Adjust accordingly.
	(override_options): Make -march=r4400 imply -mfix-r4400 by default.
	* doc/invoke.texi: Document -mfix-r4400 and new errata workarounds.

Co-Authored-By: Richard Sandiford <rsandifo@redhat.com>

From-SVN: r78825
2004-03-03 08:59:31 +00:00
Paolo Bonzini
ec8e098d3d alias.c (rtx_equal_for_memref_p): Use predicates to test rtx classes and new rtx class codes...
2004-02-07  Paolo Bonzini  <bonzini@gnu.org>

	* alias.c (rtx_equal_for_memref_p): Use predicates
	to test rtx classes and new rtx class codes, possibly
	splitting conditionals that tested against '<' and 'o'.
	* caller-save.c (save_call_clobbered_regs): Likewise.
	* combine.c (contains_muldiv, find_split_point, subst,
	combine_simplify_rtx, simplify_if_then_else,
	simplify_set, simplify_logical, expand_compound_operation,
	make_compound_operation, if_then_else_cond, known_cond,
	apply_distributive_law, cached_nonzero_bits,
	cached_num_sign_bit_copies, simplify_shift_const,
	gen_binary, simplify_comparison, update_table_tick,
	record_value_for_reg, get_lsat_value_validate): Likewise.
	* cse.c (mention_regs, find_best_addr, find_comparison_args,
	fold_rtx, cse_insn, invalidate_memory, cse_basic_block):
	Likewise.
	* emit-rtl.c (copy_insn_1): Likewise.
	* expr.c (force_operand): Likewise.
	* final.c (final_scan_insn, get_mem_expr_from_op): Likewise.
	* flow.c (notice_stack_pointer_modification_1,
	invalidate_mems_from_autoinc, ior_reg_cond, not_reg_cond,
	and_reg_cond, elim_reg_cond): Likewise.
	* function.c (update_epilogue_consts): Likewise.
	* genattrtab.c (attr_rtx_1): Likewise.
	* genopinit.c (gen_insn): Likewise.
	* integrate.c (subst_constants): Likewise.
	* jump.c (reversed_comparison_code_parts,
	reversed_comparison_code, delete_related_insns,
	rtx_renumbered_equal_p): Likewise.
	* local-alloc.c (block_alloc): Likewise.
	* loop.c (rtx_equal_for_prefetch_p, maybe_eliminate_biv,
	canonicalize_condition): Likewise.
	* loop-iv.c (simplify_using_conditions, iv_number_of_iterations):
	Likewise.
	* optabs.c (add_equal_node, expand_binop): Likewise.
	* predict.c (estimate_probability): Likewise.
	* ra-debug.c (ra_print_rtx_2op, ra_print_rtx): Likewise.
	* recog.c (validate_replace_rtx_1, comparison_operator,
	offsettable_address_p, constrain_operands): Likewise.
	* reg-stack.c (swap_rtx_condition_1, subst_stack_regs_pat):
	Likewise.
	* regclass.c (scan_one_insn): Likewise.
	* regmove.c (stable_and_no_regs_but_for_p): Likewise.
	* regrename.c (kill_autoinc_value): Likewise.
	* reload.c (find_reusable_reload, find_reloads,
	reg_overlap_mentioned_for_reload_p): Likewise.
	* reload1.c (gen_reload, delete_address_reloads_1): Likewise.
	* rtl.c (copy_rtx): Likewise.
	* rtl.h (CONSTANT_P, INSN_P): Likewise.
	* rtlanal.c (commutative_operand_precedence): Likewise.
	* sched-deps.c (conditions_mutex_p): Likewise.
	* sched-rgn.c (is_cfg_nonregular): Likewise.
	* simplify-rtx.c (simplify_gen_binary,
	simplify_gen_relational, simplify_replace_rtx,
	simplify_unary_operation, simplify_binary_operation,
	simplify_ternary_operation, simplify_rtx): Likewise.
	* unroll.c (reg_dead_after_loop): Likewise.
	* config/alpha/alpha.c (alpha_swapped_comparison_operator,
	print_operand): Likewise.
	* config/arc/arc.c (proper_comparison_operator): Likewise.
	* config/arm/arm.c (arm_arm_address_cost, arm_select_cc_mode):
	Likewise.
	* config/avr/avr.c (_reg_unused_after): Likewise.
	* config/frv/frv.c (frv_ifcvt_modify_tests,
	frv_ifcvt_modify_insn, frv_pack_insn): Likewise.
	* config/i386/i386.c (ix86_comparison_operator,
	ix86_carry_flag_operator, fcmov_comparison_operator,
	arith_or_logical_operator, print_operand,
	ix86_expand_binary_operator, ix86_binary_operator_ok):
	Likewise.
	* config/i386/i386.md: Likewise.
	* config/ia64/ia64.c (not_postinc_memory_operand,
	ia64_print_operand, update_set_flags, errata_emit_nops):
	Likewise.
	* config/ia64/ia64.h (PREFERRED_RELOAD_CLASS,
	CONSTRAINT_OK_FOR_S): Likewise.
	* config/ip2k/ip2k.c (mdr_resequence_xy_yx,
	mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
	ip2k_xexp_not_uses_reg_for_mem, ip2k_xexp_not_uses_reg_p,
	ip2k_composite_xexp_not_uses_reg_p, ip2k_unary_operator):
	Likewise.
	* config/iq2000/iq2000.c (cmp_op, symbolic_expression_p,
	eqne_comparison_operator, signed_comparison_operator):
	Likewise.
	* config/mips/mips.c (cmp_op, symbolic_expression_p):
	Likewise.
	* config/mmix/mmix (mmix_foldable_comparison_operator,
	mmix_comparison_operator): Likewise.
	* config/pa/pa.c (hppa_legitimize_address): Likewise.
	* config/rs6000/rs6000.c (stmw_operation,
	branch_comparison_operator, trap_comparison_operator,
	ccr_bit): Likewise.
	* config/rs6000/rs6000.h (SELECT_CC_MODE): Likewise.
	* config/s390/s390.c (s390_alc_comparison,
	s390_slb_comparison):L Likewise.
	* config/sh/sh.c (gen_block_redirect, reg_unused_after):
	Likewise.
	* config/sparc/sparc.c (eq_or_neq, normal_comp_operator,
	noov_compare_op, noov_compare64_op, v9_regcmp_op,
	emit_hard_tfmode_operation, reg_unused_after)
	* doc/md.texi, doc/rtl.texi: Likewise.

	* ra-debug.c: Add 2004 to list of copyright years.
	* unroll.c: Likewise.

	* combine.c (simplify_logical): Remove dummy test,
	(apply_distributive_law): Fix typo in comment.
	GET_CODE (x) == AND so x is a commutative binary op.
	* jump.c (delete_related_insns): simplify loop
	condition, move testing of RTX codes inside the loop.
	(rtx_renumbered_equal_p): do not use RTX_CODE.
	* rtl.c (rtx_class): Declare as enum rtx_class.
	* rtl.def (EQ, NE, UNEQ, LTGT, UNORDERED, ORDERED):
	Move to RTX_COMM_COMPARE class.
	(HIGH, SYMBOL_REF, LABEL_REF, CONST, CONST_INT, CONST_DOUBLE):
	Move to RTX_CONST_OBJ class.
	* rtl.h (enum rtx_class): New declaration,
	(RTX_OBJ_MASK, RTX_OBJ_RESULT, RTX_COMPARE_MASK,
	RTX_COMPARE_RESULT, RTX_ARITHMETIC_MASK, RTX_ARITHMETIC_RESULT,
	RTX_BINARY_MASK, RTX_BINARY_RESULT, RTX_COMMUTATIVE_MASK,
	RTX_COMMUTATIVE_RESULT, RTX_NON_COMMUTATIVE_RESULT,
	RTX_EXPR_FIRST, RTX_EXPR_LAST, UNARY_P, BINARY_P,
	ARITHMETIC_P, COMMUTATIVE_ARITHMETIC_P, COMPARISON_P,
	SWAPPABLE_OPERANDS_P, NON_COMMUTATIVE_P, COMMUTATIVE_P,
	OBJECT_P): New macros.
	* config/sparc/sparc.c (noov_compare_op): Remove register
	from parameter.

From-SVN: r78824
2004-03-03 08:35:33 +00:00
Kazu Hirata
a841ab8b3e * target.h: Remove texi jargons in comments.
From-SVN: r78822
2004-03-03 06:31:00 +00:00
Kazu Hirata
cb36ddbac1 lib1funcs.asm (___fixunssfsi): Change the threshold to 0x4f.
* config/h8300/lib1funcs.asm (___fixunssfsi): Change the
	threshold to 0x4f.

	Revert:
	2004-02-27  Kazu Hirata  <kazu@cs.umass.edu>
	* config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
	as well.
	* config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
	* config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.

From-SVN: r78818
2004-03-03 04:53:16 +00:00
Kazu Hirata
66c87bae65 * doc/md.texi (cbranchmode4): New.
From-SVN: r78813
2004-03-03 04:22:08 +00:00
Eric Christopher
91e0123195 mips16.S: Change fixsfsi and fixdfsi to fix_trunc.
2004-03-02  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips16.S: Change fixsfsi and fixdfsi to
	fix_trunc.
	* config/mips/mips.c (mips_init_libfuncs): Change accordingly.
	* config/mips/t-elf (LIB1ASMFUNCS): Ditto.
	* config/mips/t-isa3264 (LIB1ASMFUNCS): Ditto.
	* config/mips/t-r3900 (LIB1ASMFUNCS): Ditto.

From-SVN: r78811
2004-03-03 01:11:57 +00:00
Richard Henderson
465e1d4c41 coverage.c (coverage_counter_ref): Set MEM_NOTRAP_P.
* coverage.c (coverage_counter_ref): Set MEM_NOTRAP_P.
        * optabs.c (prepare_cmp_insn): Force trapping memories to registers
        before the compare, if flag_non_call_exceptions.
        * g++.dg/other/profile1.C: New.

From-SVN: r78806
2004-03-02 16:46:31 -08:00
Richard Henderson
27ab3e9128 re PR middle-end/11767 (different code behaviour with -fnon-call-exceptions -fprofile-arcs)
PR middle-end/11767
        * coverage.c (coverage_counter_ref): Set MEM_NOTRAP_P.
        * optabs.c (prepare_cmp_insn): Force trapping memories to registers
        before the compare, if flag_non_call_exceptions.
        * g++.dg/other/profile1.C: New.

From-SVN: r78805
2004-03-02 16:46:06 -08:00
Paolo Carlini
0b1d67d23b re PR libstdc++/14320 (istreambuf_iterator::difference_type is not a signed integral type)
2004-03-02  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/14320
	* include/bits/postypes.h (class streamoff): Remove, now
	streamoff is just typedef a 64 bit signed integer type.
	(class fpos): Tweak consistently.
	* testsuite/27_io/fpos/14320-1.cc: New.
	* testsuite/27_io/fpos/14320-2.cc: New.
	* testsuite/27_io/fpos/14320-3.cc: New.
	* testsuite/27_io/fpos/14320-4.cc: New.
	* testsuite/27_io/fpos/14320-5.cc: New.
	* testsuite/27_io/fpos/mbstate_t/4_neg.cc: xfail for now.

From-SVN: r78799
2004-03-03 00:22:05 +00:00
Richard Henderson
0eadce5226 re PR middle-end/14327 (-O0 -fdefer-pop generates wrong code)
PR middle-end/14327
        * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before
        emitting the label, not after.
	* gcc.c-torture/execute/20040302-1.c: New.

From-SVN: r78798
2004-03-02 16:18:12 -08:00
GCC Administrator
3a75069d35 Daily bump.
From-SVN: r78795
2004-03-03 00:17:23 +00:00
Stephane Carrez
de70723b1d m68hc11.c (m68hc11_addr_mode): New variable.
* config/m68hc11/m68hc11.c (m68hc11_addr_mode): New variable.
	(m68hc11_mov_addr_mode): Likewise.
	(m68hc11_override_options): Initialize them based on target.
	(register_indirect_p): Allow a MEM for indirect addressing modes and
	use flags to control what is allowed.
	(m68hc11_small_indexed_indirect_p): Use m68hc11_mov_addr_mode for
	supported addressing modes.
	(m68hc11_register_indirect_p): Use m68hc11_addr_mode.
	(go_if_legitimate_address_internal): Likewise.
	(m68hc11_indirect_p): Likewise and check the mode.
	(print_operand): Allow a (MEM (MEM)) and generate indirect addressing.

From-SVN: r78792
2004-03-02 23:40:57 +01:00
Kazu Hirata
d6da68b9d4 builtins.c (BUILTIN_SETJMP_FRAME_VALUE): Remove.
* builtins.c (BUILTIN_SETJMP_FRAME_VALUE): Remove.
	(expand_builtin_setjmp_setup): Use
	targetm.builtin_setjmp_frame_value instead of
	BUILTIN_SETJMP_FRAME_VALUE.
	* system.h (BUILTIN_SETJMP_FRAME_VALUE): Poison.
	* target-def.h (TARGET_BUILTIN_SETJMP_FRAME_VALUE): New.
	(TARGET_INITIALIZER): Add TARGET_BUILTIN_SETJMP_FRAME_VALUE.
	* target.h (gcc_target): Add builtin_setjmp_frame_value.
	* targhooks.c (default_builtin_setjmp_frame_value): New.
	* targhooks.h: Add a prototype for
	default_builtin_setjmp_frame_value.
	* doc/tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Change to
	TARGET_BUILTIN_SETJMP_FRAME_VALUE.

From-SVN: r78789
2004-03-02 22:32:27 +00:00
Paolo Carlini
59564c5e9a locale_facets.tcc (money_get<>::_M_extract): Reorganize a bit the main parsing loop...
2004-03-02  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/locale_facets.tcc (money_get<>::_M_extract):
	Reorganize a bit the main parsing loop, thus early detecting
	an empty value component.
	* testsuite/22_locale/money_get/get/char/16.cc: New.
	* testsuite/22_locale/money_get/get/wchar_t/16.cc: New.

From-SVN: r78788
2004-03-02 22:25:51 +00:00
Stephane Carrez
d87e83b9b6 m68hc11.md (move peephole2): New peepholes to optimize sequences of moves.
* config/m68hc11/m68hc11.md (move peephole2): New peepholes to optimize
	sequences of moves.
	(add peepholes): New peepholes to optimize sequences adding small
	constants.
	(bset peepholes): New peepholes to transform an OR in a bset form
	(bclr peepholes): Likewise for bclr form.
	(cmp peepholes): New peepholes to avoid register copies when comparing.

From-SVN: r78787
2004-03-02 23:16:15 +01:00
Stephane Carrez
d5111c9c20 m68hc11.md ("*pushdi_internal"): New insn and split to separate push from moves.
* config/m68hc11/m68hc11.md ("*pushdi_internal"): New insn and split
	to separate push from moves.
	("*pushdf_internal"): Likewise.
	("*pushsf_internal"): Likewise.
	("*pushsi_internal"): Likewise.
	("movdi_internal"): Use define_insn_and_split; non push operand.
	("movdf_internal"): Likewise.
	("movsf_internal"): Likewise.
	("movsi_internal"): Likewise.
	("*movhi_68hc12", "*addhi3_68hc12"): Fix and tune constraints
	("*addhi3", "*subhi3", "*andhi3_mem", "*iorhi3_mem"): Likewise.
	("*ashlsi3_const1", "*lshrsi3_const1"): Likewise.

From-SVN: r78785
2004-03-02 22:55:35 +01:00
Stephane Carrez
9449502d01 m68hc11.md ("tstqi_z_used"): Use define_insn_and_split.
* config/m68hc11/m68hc11.md ("tstqi_z_used"): Use define_insn_and_split.
	("cmphi_z_used", "cmpqi_z_used"): Likewise.
	("movstrictsi", "movstricthi", "movstrictqi"): Likewise.
	("anddi3", "andsi3", "iordi3", "iorsi3"): Likewise.
	("xordi3", "xorsi3", "*logicalsi3_zexthi"): Likewise.
	("*logicalsi3_zextqi", "*logicalhi3_zexthi_ashift8"): Likewise.
	("logicalhi3_zexthi", "*logicalsi3_silshr16"): Likewise.
	("*logicalsi3_silshl16", "*logicalsi3_silshl16_zext"): Likewise.
	("*ashldi3_const32", "*ashldi3_const1", "addsi_silshr16"): Likewise.
	("addsi_andshr16", "*ashlsi3_const16_zexthi"): Likewise.
	("*lshrdi3_const32", "*lshrdi_const1"): Likewise.

From-SVN: r78783
2004-03-02 22:33:23 +01:00
Stephane Carrez
b90f32990e m68hc11.md (SOFT_TMP_REGNUM): Define.
* config/m68hc11/m68hc11.md (SOFT_TMP_REGNUM): Define.
	(SOFT_XY_REGNUM): Define.
	(cmp split): Use the above instead of hard coded numbers.
	(8-bit op split): No need to check the mode; allow Q_REG.
	(ashift split): Adjust the first operand if it uses the SP and we
	are pushing the shifted value.
	(plus shift split): Fix when a source is in register D+X.
	("doloop_end"): Pass dummy arguments to gen_rtx_NE.

From-SVN: r78781
2004-03-02 22:06:24 +01:00
Stephane Carrez
77d2a36d1d m68hc11.c (m68hc11_check_z_replacement): Fix when comparing with Z register.
* config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix when
	comparing with Z register.

From-SVN: r78779
2004-03-02 21:44:38 +01:00
Zdenek Dvorak
f2dca5108e cfgloop.h (struct loop_desc): Removed.
* cfgloop.h (struct loop_desc): Removed.
	(struct loop): Fields simple, desc and has_desc removed.
	(simple_loop_p, count_loop_iterations): Declaration removed.
	* cfgloopanal.c (struct unmark_altered_insn_data): Removed.
	(unmark_altered, blocks_invariant_registers, unmark_altered_insn
	blocks_single_set_registers, invariant_rtx_wrto_regs_p_helper,
	invariant_rtx_wrto_regs_p, test_for_iteration, constant_iterations,
	simple_loop_exit_p, variable_initial_value, variable_initial_values,
	simple_condition_p, simple_increment, count_strange_loop_iterations,
	inverse, fits_in_mode_p, simple_loop_p, count_loop_iterations):
	Removed.
	* loop-iv.c (check_simple_exit, find_simple_exit): Update comments.

From-SVN: r78777
2004-03-02 20:21:14 +00:00
Benjamin Kosnik
ec2075e962 Support automake 1.8.2
2004-03-02  Benjamin Kosnik  <bkoz@redhat.com>

	Support automake 1.8.2
	* configure.ac (AM_INIT_AUTOMAKE): Add -Wno-override.
	* po/Makefile.am (EXTRA_DIST): New.
	* po/Makefile.in: Regenerate.
	* Makefile.in: Same.
	* include/Makefile.in: Same.
	* libmath/Makefile.in: Same.
	* libsupc++/Makefile.in: Same.
	* src/Makefile.in: Same.
	* testsuite/Makefile.in: Same.

	* include/Makefile.am (${host_builddir}/gthr-posix.h): Use
	__GXX_WEAK__ instead of SUPPORTS_WEAK.
	(${host_builddir}/gthr-default.h): Same.
	(${host_builddir}/gthr.h): Same.
	* acinclude.m4 (GLIBCXX_ENABLE_THREAD): Remove
	_GLIBCXX_SUPPORTS_WEAK, as this behavior can be modified via
	-fno-weak.
	* aclocal.m4: Regenerate.
	* acconfig.h: Remove _GLIBCXX_SUPPORTS_WEAK.
	* config.h.in: Regenerate.
	* configure: Same.

From-SVN: r78770
2004-03-02 18:30:08 +00:00
Kazu Hirata
87ca8b8cab genattrtab.c: Don't handle MATCH_INSN.
* genattrtab.c: Don't handle MATCH_INSN.
	* genrecog.c: Likewise.
	* gensupport.c: Likewise.
	* rtl.def (match_insn): Remove.
	* doc/md.texi (match_insn, match_insn2): Remove.

From-SVN: r78768
2004-03-02 17:16:53 +00:00
Mark Mitchell
bdc2893ce8 c-tree.texi (DECL_ASSEMBLER_NAME): Mention that using this macro results in memory allocation.
* doc/c-tree.texi (DECL_ASSEMBLER_NAME): Mention that using this
	macro results in memory allocation.

From-SVN: r78767
2004-03-02 17:02:13 +00:00
David O'Brien
2de2f846a2 freebsd-spec.h (FBSD_DYNAMIC_LINKER): Add.
2004-03-02  David O'Brien  <obrien@FreeBSD.org>
	* config/freebsd-spec.h (FBSD_DYNAMIC_LINKER): Add.
	* config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Define
	%(fbsd_dynamic_linker),
	(LINK_SPEC): Use %(fbsd_dynamic_linker), and sync style with
	config/i386/freebsd.h
	* config/arm/freebsd.h: Ditto.
	* config/i386/freebsd.h: Ditto.
	* config/i386/freebsd64.h: Ditto.
	* config/ia64/freebsd.h: Ditto.
	* config/rs6000/sysv4.h: Ditto.
	* config/sparc/freebsd.h: Ditto.

From-SVN: r78766
2004-03-02 16:50:05 +00:00
Jan Hubicka
21a32e0819 * configure: Regenerate.
From-SVN: r78765
2004-03-02 16:08:34 +00:00
Jan Hubicka
2ac87ccba9 configure.host: Pass -fno-omit-frame-pointer for i386.
* configure.host: Pass -fno-omit-frame-pointer for i386.
	* configure.in: Likewise.

From-SVN: r78764
2004-03-02 15:55:38 +00:00
Loren J. Rittle
f08dc6c194 * gcc/doc/install.texi (*-*-freebsd*): Update target information.
From-SVN: r78762
2004-03-02 15:16:47 +00:00
Arnaud Charlet
215cae7b52 Complete previous change.
From-SVN: r78761
2004-03-02 15:35:09 +01:00
Arnaud Charlet
f0d3c336d5 re PR ada/14350 (libada/configure.in should not hardcode GCC version)
PR ada/14350
        * configure.in: Remove hardcoded gcc version.

        * configure: Regenerated.

From-SVN: r78760
2004-03-02 15:21:10 +01:00
Arnaud Charlet
a5c40cfbfa Fix typo.
From-SVN: r78759
2004-03-02 15:19:08 +01:00
Arnaud Charlet
555360a506 [multiple changes]
2004-03-02  Emmanuel Briot  <briot@act-europe.fr>

	* ali.adb (Read_Instantiation_Instance): Do not modify the
	current_file_num when reading information about instantiations, since
	this corrupts files in later references.

2004-03-02  Vincent Celier  <celier@gnat.com>

	* bcheck.adb (Check_Consistency): Get the full path of an ALI file
	before checking if it is read-only.

	* bld.adb (Recursive_Process): Concatenate <PROJECT>.src_dirs in front
	of SRC_DIRS and eliminate duplicates.

	* gprcmd.adb: Replace command "path" with command "path_sep" to return
	the path separator.
	(Usage): Document path_sep

	* Makefile.generic: For Ada and GNU C++ cases, link directly with the
	C++ compiler. No need for a script.
	Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
	Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
	subst.

	* prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
	where there are Ada sources.
	(Set_Ada_Paths): Only add to the include path the source dirs of project
	with Ada sources.
	(Add_To_Path): Add the Display_Values of the directories, not their
	Values.

	* prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
	data.

	* prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
	is not No_Name.
	(Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
	Value is canonicalized.
	(Language_Independent_Check): Do not copy Value to Display_Value when
	canonicalizing Value.

	* prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
	path to find limited with cycles.
	(Parse_Single_Project): Use canonical cased path to find the end of a
	with cycle.

2004-03-02  Ed Schonberg  <schonberg@gnat.com>

	* sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
	and not a child unit.

	* sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
	appear in a with_clause.

	* decl.c (gnat_to_gnu_type): If entity is a generic type, which can
	only happen in type_annotate mode, do not try to elaborate it.

	* exp_util.adb (Force_Evaluation): If expression is a selected
	component on the left of an assignment, use a renaming rather than a
	temporary to remove side effects.

	* freeze.adb (Freeze_Entity): Do not freeze a global entity within an
	inlined instance body, which is analyzed before the end of the
	enclosing scope.

2004-03-02  Robert Dewar  <dewar@gnat.com>

	* par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
	sem_ch4.adb: Use new feature for substitution of keywords in VMS

	* errout.ads, errout.adb: Implement new circuit for substitution of
	keywords in VMS.

	* sem_case.adb (Analyze_Choices): Place message properly when case is
	a subtype reference rather than an explicit range.

	* sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting

2004-03-02  Doug Rupp  <rupp@gnat.com>

	* init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.

2004-03-02  Thomas Quinot  <quinot@act-europe.fr>

	* s-tporft.adb: Add missing locking around call to Initialize_ATCB.

2004-03-02  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
	BLKmode bitfield.

From-SVN: r78758
2004-03-02 14:50:15 +01:00
Kazu Hirata
c24938d49f * rtl.def (define_combine): Remove.
From-SVN: r78755
2004-03-02 07:01:39 +00:00
Kazu Hirata
ba29f5de04 * config/h8300/h8300.md: Tweak formatting.
From-SVN: r78753
2004-03-02 06:05:59 +00:00
Kazu Hirata
a5a0ab452a h8300.md (*cmphi_h8300): Rename to *cmphi_h8300_znvc.
* config/h8300/h8300.md (*cmphi_h8300): Rename to
	*cmphi_h8300_znvc.
	(*cmphi_h8300hs): Rename to *cmphi_h8300hs_znvc.

From-SVN: r78752
2004-03-02 06:01:52 +00:00
Mark Mitchell
e451301f78 re PR bootstrap/14356 (gcc.c:3661: error: assignment of read-only location)
PR bootstrap/14356
	* gcc.c (process_command): Remove const-qualification from argv.
	(main): Likewise.

From-SVN: r78751
2004-03-02 05:59:29 +00:00
Kazu Hirata
b698e58b8c h8300.md (pushqi1_h8300hs): Rename to pushqi1_h8300hs_advanced.
* config/h8300/h8300.md (pushqi1_h8300hs): Rename to
	pushqi1_h8300hs_advanced.  Adjust its caller.
	(pushhi1_h8300hs): Rename to pushhi1_h8300hs_advanced.
	Adjust its caller.

From-SVN: r78749
2004-03-02 05:56:27 +00:00
Nicolas Roche
3a41db81c7 Makefile.in (install-libgcc, [...]): Pass mkinstalldirs var to libgcc.mk.
2004-03-02  Roche Nicolas <roche@act-europe.fr>

	* Makefile.in (install-libgcc, install-multilib): Pass
	mkinstalldirs var to libgcc.mk.

From-SVN: r78747
2004-03-02 06:51:36 +01:00