Commit Graph

74408 Commits

Author SHA1 Message Date
Maxim Kuvyrkov
c96a7cc568 haifa-sched.c (Copyright): Update date.
2006-03-27  Maxim Kuvyrkov  <mkuvyrkov@ispras.ru>

	* haifa-sched.c (Copyright): Update date.
	(try_ready): Change condition to restore non-speculative pattern
	of the instruction.
	(process_insn_depend_be_in_spec): Code to keep probability of the
	speculative dependence non-decreasing.

From-SVN: r112427
2006-03-27 22:38:06 +00:00
David Edelsohn
25b773bef1 * objc.dg/objc-nofilename-1.m: Limit to Darwin.
From-SVN: r112424
2006-03-27 12:03:56 -05:00
Bernd Schmidt
b256fbaf6e regrename.c (replace_oldest_value_addr): Initialize a variable to shut up the compiler.
* regrename.c (replace_oldest_value_addr): Initialize a variable to
	shut up the compiler.

From-SVN: r112423
2006-03-27 16:25:16 +00:00
J"orn Rennecke
575066d2f2 t-sh ($(T)libic_invalidate_array_4-100.a): Fix rule to use lib prefix for target.
* config/sh/t-sh ($(T)libic_invalidate_array_4-100.a): Fix rule
	to use lib prefix for target.
	($(T)libic_invalidate_array_4-200.a): Likewise.
	($(T)libic_invalidate_array_4a.a): Likewise.

From-SVN: r112422
2006-03-27 16:59:27 +01:00
Andrew Stubbs
25e651ca8e superh.opt: New file.
2006-03-27  Andrew Stubbs <andrew.stubbs@st.com>
	    J"orn Rennecke <joern.rennecke@st.com>

	* superh.opt: New file.
	* sh.c (boardtype, osruntime): Remove.
	* superh.h (SUBTARGET_OPTIONS): Remove.
	* config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options.

	* config.gcc (sh*-*-*): Don't use c-c ranges for tr.  Quote sed
	arguments with ^ and/or [].

	* config.gcc (sh-*-*): Add quoting to account for quirk of
	Solaris /bin/sh.
	Replace == with = in enable_incomplete_targets test.

	* config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT
	with MASK_LITTLE_ENDIAN.

	* config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file.
	* config/sh/sh.opt: Added to some comments.
	* config/sh/superh.h: Removed some chaff.

	* config/sh/sh.opt: Add m4-[1234]00* options.
	* config/sh/sh.c (sh_handle_option): Likewise.
	* config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define.
	(ic_invalidate_array_4-100.o): New rule.
	($(T)libic_invalidate_array_4-100.a): Likewise.
	(ic_invalidate_array_4-200.o): Likewise.
	($(T)libic_invalidate_array_4-200.a): Likewise.
	(ic_invalidate_array_4a.o): Likewise.
	($(T)libic_invalidate_array_4a.a): Likewise.
	* config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS.
	* config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*,
	m4-200*, and m4a*.
	* config/sh/crt1.asm: Merged in profiling code.
	* config/sh/superh.h (STARTFILE_SPEC): Override.
	* config/sh/t-superh: Override EXTRA_MULTILIB_PARTS.
	Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o.
	* config.gcc (sh*-superh-elf): Add t-superh to tmake_file.

	* t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants.
	* config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS /
	MULTILIB_DIRNAMES / MULTILIB_MATCHES settings.

	* sh.opt (mpretend-cmove): New option.
	* sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1.
	* sh.md (movsicc_t_false, movsicc_t_tru): New patterns.
	(movsicc): Add TARGET_PRETEND_CMOVE code.

Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com>

From-SVN: r112421
2006-03-27 15:11:14 +01:00
Andreas Krebbel
74aa8b4b45 s390-protos.h (s390_hard_regno_mode_ok, [...]): New function prototypes.
2006-03-27  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390-protos.h (s390_hard_regno_mode_ok, 
	s390_class_max_nregs): New function prototypes.
	* config/s390/s390.c (REGNO_PAIR_OK): New macro.
	(s390_hard_regno_mode_ok, s390_class_max_nregs): New functions.
	* config/s390/s390.h (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK,
	CLASS_MAX_NREGS): Macro bodies replaced by function calls.

From-SVN: r112418
2006-03-27 13:15:46 +00:00
Jakub Jelinek
8370d5bcb1 io.c (check_io_constraints): Don't look at dt->advance->value.charater.string, unless it is a CHARACTER constant.
* io.c (check_io_constraints): Don't look at
	dt->advance->value.charater.string, unless it is a CHARACTER
	constant.

	* gfortran.dg/advance_2.f90: New test.
	* gfortran.dg/advance_3.f90: New test.

From-SVN: r112417
2006-03-27 14:32:51 +02:00
Jakub Jelinek
7b9c708f15 f95-lang.c (gfc_get_alias_set): New function.
* f95-lang.c (gfc_get_alias_set): New function.
	(LANG_HOOKS_GET_ALIAS_SET): Define.

	* gfortran.fortran-torture/execute/equiv_5.f: New test.

From-SVN: r112416
2006-03-27 14:27:40 +02:00
Jerry DeLisle
b78c0542ab re PR libfortran/26661 (Sequential formatted read goes too far)
2006-03-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/26661
	PR libgfortran/26880
	* gfortran.dg/read_x_past.f: New test.

From-SVN: r112410
2006-03-27 06:55:20 +00:00
Geoffrey Keating
626d9e3e34 darwin-20040809-2.c: Don't expect default debugging to be STABS.
* gcc.dg/darwin-20040809-2.c: Don't expect default debugging
	to be STABS.

From-SVN: r112409
2006-03-27 06:14:55 +00:00
Geoffrey Keating
0d06ead596 dwarf2out.c (add_location_or_const_value_attribute): Call tree_add_const_value_attribute if nothing else works.
* dwarf2out.c (add_location_or_const_value_attribute): Call
	tree_add_const_value_attribute if nothing else works.
	(reference_to_unused): New.
	(rtl_for_decl_init): Use reference_to_unused to decide whether
	to output an initializer.

From-SVN: r112408
2006-03-27 06:09:48 +00:00
Jerry DeLisle
ef6fa01d3a re PR libfortran/26880 (Can't read after non-advancing write with rewind)
2006-03-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/26880
	* io/file_pos.c (st_rewind): Clear read_bad flag.

From-SVN: r112407
2006-03-27 05:59:37 +00:00
GCC Administrator
462ea7a505 Daily bump.
From-SVN: r112405
2006-03-27 00:17:37 +00:00
Alan Modra
036aadfc77 re PR target/26459 (gcc fails to build on powerpc e500-double targets)
PR target/26459
	* config/rs6000/rs6000.md (DF reg move peephole): Prevent
	peephole removing spe frob_di_df_2.

From-SVN: r112400
2006-03-27 09:18:22 +10:30
Sebastian Pop
ba42e045f7 tree-data-ref.c: Rename DDR_SIZE_VECT to DDR_NB_LOOPS.
* tree-data-ref.c: Rename DDR_SIZE_VECT to DDR_NB_LOOPS.
	(subscript_dependence_tester_1): Declared.
	(print_dir_vectors, print_dist_vectors): New.
	(debug_data_dependence_relation): New.
	(dump_data_dependence_relation): Print more details.
	(initialize_data_dependence_relation): Initialize DDR_LOOP_NEST.
	(analyze_subscript_affine_affine): Don't ICE when gcd_alpha_beta is 0.
	(save_dist_v, save_dir_v, add_outer_distances,
	build_classic_dist_vector_1): New.
	(build_classic_dist_vector): Rewrite to work on DDR_LOOP_NEST.
	Don't test for lambda_vector_lexico_pos.
	(same_access_functions, add_multivariate_self_dist,
	add_other_self_distances, dir_from_dist): New.
	(build_classic_dir_vector): Replace implementation almost identical to 
	build_classic_dist_vector with a walk of DDR_DIST_VECTS with a call to
	dir_from_dist.
	(subscript_dependence_tester_1): New.
	(subscript_dependence_tester): Handle the lexicographically negative
	distance vectors by recomputing the dependence relation.
	(compute_affine_dependence): Remove parameter loop_nest_depth.
	(compute_self_dependence): Don't call compute_subscript_distance.
	(compute_all_dependences): Remove parameters nb_loops, loop_nest_depth.
	Add a parameter for the loop_nest.
	(find_loop_nest_1, find_loop_nest): New.
	(compute_data_dependences_for_loop): Compute the loop nest, and give
	up if the nest is not well formed.
	* tree-data-ref.h (loop_p): New.
	(struct data_dependence_relation): Replace size_vect field with 
	loop_nest, a vec of loops.
	(DDR_SIZE_VECT): Renamed DDR_NB_LOOPS.
	(DDR_LOOP_NEST): New.
	(print_dir_vectors, print_dist_vectors,
	debug_data_dependence_relation): Declared.
	(index_in_loop_nest): New.
	* tree-vect-analyze.c (vect_analyze_data_ref_dependence): Use
	DDR_LOOP_NEST and index_in_loop_nest to determine the dependence
	distance.

From-SVN: r112399
2006-03-26 20:48:05 +00:00
David Edelsohn
0535d6d75b dwarf-1.m: Skip on AIX.
* objc.dg/dwarf-1.m: Skip on AIX.
        * objc.dg/dwarf-2.m: Skip on AIX.

From-SVN: r112398
2006-03-26 12:15:43 -05:00
Steven G. Kargl
6110b776bc re PR fortran/26816 ([4.1 only] FLOAT Intrinsic does not work with Integer Halfword input)
PR fortran/26816
	* intrinsic.c (add_functions): Allow FLOAT to accept all integer kinds.
	* intrinsic.texi: Document FLOAT.

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

From-SVN: r112392
2006-03-26 05:20:09 +00:00
Jerry DeLisle
0853054e96 re PR libfortran/26661 (Sequential formatted read goes too far)
2006-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/26661
	* io/io.h: Add read_sf so it can be used by read_x.
	* io/transfer.c (read_sf): Pass no_error flag to read_sf.  Use it to
	break out rather than error on EOF or EOR conditions.
	(read_block): Update call to read_sf.
	(read_block_direct): Ditto.
	* io/read.c (read_x): Use the modified read_sf instead of read_block.

From-SVN: r112390
2006-03-26 02:15:44 +00:00
GCC Administrator
44f808b02d Daily bump.
From-SVN: r112388
2006-03-26 00:17:15 +00:00
Steven G. Kargl
94dacf2b92 transfer_array_intrinsic_1.f90: Restrict to i?86 and X86_64 targets.
* gfortran.dg/transfer_array_intrinsic_1.f90: Restrict to i?86 and
    X86_64 targets.
    * gfortran.dg/transfer_array_intrinsic_2.f90: Ditto.

From-SVN: r112384
2006-03-25 22:08:50 +00:00
Adam Nemet
30a440a7f6 simplify-rtx.c (simplify_relational_operation): Call simplify_relational_operation_1 even if mode is VOIDmode.
* simplify-rtx.c (simplify_relational_operation): Call
	simplify_relational_operation_1 even if mode is VOIDmode.

From-SVN: r112383
2006-03-25 21:58:01 +00:00
Thomas Koenig
5068c62534 re PR libfortran/26735 ([4.1 only] -fconvert=swap and implied open)
2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/26735
	* io/transfer.c (data_transfer_init):  Set u_flags.convert
	on an unopened unit if specified by environment variable
	(via get_unformatted_convert) or by compile-time option.

2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/26735
	* gfortran.dg/convert_implied_open.f90:  New test case.

From-SVN: r112382
2006-03-25 21:31:48 +00:00
Thomas Koenig
9a0fb43ea1 re PR fortran/26769 (Implement transpose() and reshape() for real instead of using integer)
2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/26769
	* iresolve.c (gfc_resolve_reshape):  Remove doubling of
	kind for complex. For real(kind=10), call reshape_r10.
	(gfc_resolve_transpose):  For real(kind=10), call
	transpose_r10.

2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/26769
	* Makefile.am:  Add transpose_r10.c and reshape_r10.c.
	* aclocal.m4:  Regenerate using aclocal 1.9.3.
	* Makefile.in:  Regenerate using automake 1.9.3.
	* m4/iparm.m4 (rtype_ccode):  If rtype_letter is `i',
	evaluate to rtype_kind, otherwise to rtype_code.
	* generated/transpose_r10.c:  Add.
	* generated/reshape_r10.c:  Add.

2006-03-25  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/26769
	* gfortran.dg/transpose_reshape_r10.f90:  New test case.

From-SVN: r112381
2006-03-25 21:15:48 +00:00
Daniel Berlin
fe1f8f442e re PR tree-optimization/26804 (Alias Time explosion)
2006-03-25  Daniel Berlin  <dberlin@dberlin.org>

	PR tree-optimization/26804
	* tree.h (DECL_CALL_CLOBBERED): New macro.
	(tree_decl_common): Add call_clobbered_flag.
	* tree-flow-inline.h (is_call_clobbered): Use DECL_CALL_CLOBBERED.
	(mark_call_clobbered): Set DECL_CALL_CLOBBERED.
	(clear_call_clobbered): Clear DECL_CALL_CLOBBERED.
	(mark_non_addressable): Ditto.
	* tree-ssa.c (verify_call_clobbered): New function.
	(verify_alias_info): Use it.
	* tree-pass.h (pass_reset_cc_flags): New prototype.
	* tree-ssa-alias.c (pass_reset_cc_flags): New structure.
	(reset_cc_flags): New function.
	* passes.c (init_optimization_passes): Call reset_cc_flags after
	initializing referenced_vars.

From-SVN: r112380
2006-03-25 19:17:26 +00:00
Uros Bizjak
1d8b38a080 re PR middle-end/26717 (complex/complex gives a REAL_CST)
PR middle-end/26717
	* fold-const.c (fold_binary) [RDIV_EXPR]: Do not optimize A / A
	to 1.0 for non-real operands. Implement A / A optimization for
	complex operands.


Co-Authored-By: Roger Sayle <roger@eyesopen.com>

From-SVN: r112379
2006-03-25 18:32:34 +01:00
H.J. Lu
75bcbcdb5e i386.c (size_cost): Correct the comment for cost of storing fp registers.
2006-03-25  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (size_cost): Correct the comment for
	cost of storing fp registers.
	(i386_cost): Likewise.
	(i486_cost): Likewise.
	(pentium_cost): Likewise.
	(pentiumpro_cost): Likewise.
	(k6_cost): Likewise.
	(athlon_cost): Likewise.
	(k8_cost): Likewise.
	(pentium4_cost): Likewise.
	(nocona_cost): Likewise.
	(generic64_cost): Likewise.
	(generic32_cost): Likewise.

From-SVN: r112378
2006-03-25 07:34:00 -08:00
Roger Sayle
bfd022c1ce dependency.c (gfc_check_dependency): Improve handling of pointers...
* dependency.c (gfc_check_dependency): Improve handling of pointers;
	Two variables of different types can't have a dependency, and two
	variables with the same symbol are equal, even if pointers.

	* gfortran.dg/dependency_12.f90: New test case.

From-SVN: r112377
2006-03-25 15:01:42 +00:00
David Daney
ccf37f7736 re PR libgcj/26858 (NullPointerException not generated for large classes...)
* testsuite/libjava.lang/PR26858.java: New test.
	* testsuite/libjava.lang/PR26858.out: Ditto.
	* testsuite/libjava.lang/PR26858.xfail: Ditto.

From-SVN: r112374
2006-03-25 01:53:48 +00:00
Roger Sayle
31708dc644 gfortran.h (gfc_symbol): Add a new "forall_index" bit field.
* gfortran.h (gfc_symbol): Add a new "forall_index" bit field.
	* match.c (match_forall_iterator): Set forall_index field on
	the iteration variable's symbol.
	* dependency.c (contains_forall_index_p): New function to
	traverse a gfc_expr to check whether it contains a variable
	with forall_index set in it's symbol.
	(gfc_check_element_vs_element): Return GFC_DEP_EQUAL for scalar
	constant expressions that don't variables used as FORALL indices.

	* gfortran.dg/dependency_9.f90: New (resurected) test case.

From-SVN: r112373
2006-03-25 01:28:11 +00:00
Geoffrey Keating
9e51ddaa6e dwarf2out.c (is_c_family): Understand new DWARF3 language types.
2006-03-24  Geoffrey Keating  <geoffk@apple.com>

	* dwarf2out.c (is_c_family): Understand new DWARF3 language types.
	(is_cxx): Likewise.
	(gen_compile_unit_die): Use new language types for Objective-C and
	Objective-C++.
	(dwarf2out_decl): Use is_cxx rather than testing explicitly against
	DW_LANG_C_plus_plus.

Index: testsuite/ChangeLog
2006-03-24  Geoffrey Keating  <geoffk@apple.com>

	* objc.dg/dwarf-2.m: New.
	* obj-c++.dg/dwarf-2.mm: New.

From-SVN: r112372
2006-03-25 00:54:40 +00:00
GCC Administrator
affceb3132 Daily bump.
From-SVN: r112370
2006-03-25 00:17:28 +00:00
Jeff Law
3ae194cd59 tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt directly.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt
        directly.  Call mark_new_vars_to_rename slightly earlier.

        * gcc.c-torture/pr26840.c: New test.

From-SVN: r112365
2006-03-24 16:21:27 -07:00
Jim Blandy
58df1c413d pex-common.c (pex_run): Simplify output name handling.
2006-03-24  Jim Blandy  <jimb@codesourcery.com>

	* pex-common.c (pex_run): Simplify output name handling.

From-SVN: r112363
2006-03-24 22:39:45 +00:00
Geoffrey Keating
6426e8aa41 Back out previous accidental change.
From-SVN: r112362
2006-03-24 22:03:19 +00:00
Geoffrey Keating
895de5a8a9 [multiple changes]
2006-03-23  Geoffrey Keating  <geoffk@apple.com>

	PR 26793
	* config/t-darwin (crt3.o): Work around bug 26840.
	* config/darwin-crt3.c: Rewrite.
	* config/darwin.h (STARTFILE_SPEC): Don't use -l for crt3.o.

Index: gcc/testsuite/ChangeLog
2006-03-24  Geoffrey Keating  <geoffk@apple.com>

	* g++.old-deja/g++.other/init19.C: New.

From-SVN: r112361
2006-03-24 21:59:48 +00:00
Carlos O'Donell
e713adf645 invoke.texi: Document -femit-class-debug-always
gcc/

2006-03-24  Carlos O'Donell  <carlos@codesourcery.com>

	* doc/invoke.texi: Document -femit-class-debug-always
	* common.opt: Add -femit-class-debug-always.

gcc/cp/

2006-03-24  Carlos O'Donell  <carlos@codesourcery.com>

	* search.c (maybe_suppress_debug_info): If
	flag_emit_class_debug_always then don't suppress.

From-SVN: r112360
2006-03-24 21:17:41 +00:00
David Edelsohn
69793f280c spbp.C: Skip on AIX.
* g++.dg/eh/spbp.C: Skip on AIX.

From-SVN: r112359
2006-03-24 15:49:29 -05:00
Andreas Krebbel
93fa842809 s390.c (s390_decompose_address): Allow SImode for index and base register.
2006-03-24  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (s390_decompose_address): Allow SImode for
	index and base register.
	(s390_expand_plug_operand, legitimate_address_p, preferred_la_operand_p,
	print_operand_address, print_operand): Replaced REG_OK_FOR_BASE_STRICT_P
	with REGNO_OK_FOR_BASE_P and REG_OK_FOR_INDEX_STRICT_P with
	REGNO_OK_FOR_INDEX_P.
	* config/s390/s390.h (REGNO_OK_FOR_INDEX_P): Replaced check with
	ADDR_REGNO_P.
	(REG_OK_FOR_INDEX_NONSTRICT_P, REG_OK_FOR_BASE_NONSTRICT_P,
	REG_OK_FOR_INDEX_STRICT_P, REG_OK_FOR_BASE_STRICT_P, REG_OK_FOR_INDEX_P,
	REG_OK_FOR_BASE_P): Definitions removed.

From-SVN: r112357
2006-03-24 19:09:11 +00:00
Andreas Tobler
d0c03515ba configure.ac (THREADS): Add REENTRANT for *-*-hpux11*.
2006-03-24  Andreas Tobler  <a.tobler@schweiz.ch>
	John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	* configure.ac (THREADS): Add REENTRANT for *-*-hpux11*.
	Warn about POSIX threads not being supported for *-*-hpux10*.
	* configure: Regenerate.

Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>

From-SVN: r112355
2006-03-24 18:59:29 +01:00
Denis Chertykov
2d67effa46 avr-protos.h (extra_constraint): Delete.
* config/avr/avr-protos.h (extra_constraint): Delete.
	(extra_constraint_Q): New declaration.
	* config/avr/constraints.md: New file.
	* config/avr/avr.md: Include it.
	(REG_X, REG_Y, REG_Z, REG_W): New constants.
	(TMP_REGNO, ZERO_REGNO): Likewise.
	(UNSPEC_STRLEN, UNSPEC_INDEX_JMP): Likewise.
	* config/avr/avr.c (avr_reg_class_from_letter): Delete.
	(extra_constraint): Delete.
	(extra_constraint_Q): Test for memory constraint 'Q'.
	* config/avr/avr.h (REG_X,REG_Y,REG_Z,REG_W): Delete.
	(REG_CLASS_FROM_LETTER): Delete.
	(CONST_OK_FOR_LETTER_P): Delete.
	(CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
	(EXTRA_CONSTRAINT): Delete.
	(TMP_REGNO): Delete.
	(ZERO_REGNO): Delete.

From-SVN: r112352
2006-03-24 19:30:19 +03:00
Jakub Jelinek
8cb86b657c re PR middle-end/26611 (openmp gomp ICE at gimplify.c:4257)
PR middle-end/26611
	* gimplify.c (gimplify_bind_expr): Only call omp_add_variable on
	non-global variables that don't have DECL_SEEN_IN_BIND_EXPR_P bit
	set yet or weren't marked as local yet.

	* g++.dg/gomp/pr26611-1.C: New test.
	* g++.dg/gomp/pr26611-2.C: New test.

From-SVN: r112351
2006-03-24 17:14:40 +01:00
Bernd Schmidt
84c9cb12e6 regrename.c (scan_rtx_address): Initialize a variable to shut up the compiler.
* regrename.c (scan_rtx_address): Initialize a variable to shut up
	the compiler.

From-SVN: r112350
2006-03-24 15:53:23 +00:00
Eric Botcazou
d04b6e6e8a rs6000-protos.h (rs6000_offsettable_memref_p): Declare.
* config/rs6000/rs6000-protos.h (rs6000_offsettable_memref_p): Declare.
	(rs6000_legitimate_small_data_p): Delete.
	* config/rs6000/rs6000.c (rs6000_offsettable_memref_p): New predicate.
	(rs6000_legitimate_small_data_p): Rename to legitimate_small_data_p
	and make static.  Add forward declaration.  Update uses.
	(rs6000_split_multireg_move): Use rs6000_offsettable_memref_p instead
	of offsettable_memref_p.
	* config/rs6000/rs6000.md (movdf_hardfloat32): Revert 2005-08-23 fix.
	Use rs6000_offsettable_memref_p instead of a less accurate predicate.

From-SVN: r112349
2006-03-24 10:09:01 +00:00
Jeff Law
243cc8369b tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work around bug in immediate-use iterator.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work
	around bug in immediate-use iterator.

	* gcc.c-torture/compile/pr26833.c: New test.
	* gfortran.fortran-torture/compile/pr26806.f90: New test.

From-SVN: r112348
2006-03-24 00:51:32 -07:00
Mark Mitchell
b5b3739a46 re PR libstdc++/20448 (locale testsuite fails when GCC is configured with --disable-nls)
PR libstdc++/20448
	PR libstdc++/20451
	* scripts/testsuite_flags.in (--cxxflags): Don't define LOCALEDIR.
	* testsuite/lib/libstdc++.exp (libstdc++_init): Always define
	LOCALEDIR to ".".
	(v3-build_support): Build MO files.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>

From-SVN: r112346
2006-03-24 01:59:35 +00:00
GCC Administrator
58bcd97431 Daily bump.
From-SVN: r112344
2006-03-24 00:17:25 +00:00
Alan Modra
75b8b1becb ffitarget.h (enum ffi_abi): Add FFI_LINUX.
* src/powerpc/ffitarget.h (enum ffi_abi): Add FFI_LINUX.  Default
	for 32-bit using IBM extended double format.  Fix FFI_LAST_ABI.
	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Handle linux variant of
	FFI_TYPE_LONGDOUBLE.
	(ffi_prep_args64): Assert using IBM extended double.
	(ffi_prep_cif_machdep): Don't munge FFI_TYPE_LONGDOUBLE type.
	Handle FFI_LINUX FFI_TYPE_LONGDOUBLE return and args.
	(ffi_call): Handle FFI_LINUX.
	(ffi_closure_helper_SYSV): Non FFI_LINUX long double return needs
	gpr3 return pointer as for struct return.  Handle FFI_LINUX
	FFI_TYPE_LONGDOUBLE return and args.  Don't increment "nf"
	unnecessarily.
	* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Load both f1 and f2
	for FFI_TYPE_LONGDOUBLE.  Move epilogue insns into case table.
	Don't use r6 as pointer to results, instead use sp offset.  Don't
	make a special call to load lr with case table address, instead
	use offset from previous call.
	* src/powerpc/sysv.S (ffi_call_SYSV): Save long double return.
	* src/powerpc/linux64.S (ffi_call_LINUX64): Simplify long double
	return.

From-SVN: r112340
2006-03-24 09:45:46 +10:30
Alan Modra
5b314bb3ef re PR target/26607 (Illegal inlined assembler on config/rs6000/darwin-ldouble.c)
PR target/26607
	* config/rs6000/darwin-ldouble.c: Don't compile when __NO_FPRS__
	or __LITTLE_ENDIAN__.

From-SVN: r112334
2006-03-24 08:53:24 +10:30
Joern Rennecke
9439d626e3 Update FSF address.
From-SVN: r112332
2006-03-23 22:10:41 +00:00
J"orn Rennecke
b368d6b8df divtab-sh4.c, [...]: New files.
2006-03-23  J"orn Rennecke <joern.rennecke@st.com>

	* config/sh/divtab-sh4.c, config/sh/divcost-analysis: New files.
	* config/sh/lib1funcs.asm (div_table): Add !__SH5__ variant.
	* config/sh/t-sh (LIB1ASMFUNCS): Add _div_table.
	* config/sh/sh.opt (mdiv=): Amend description.
	* config/sh/sh.h (TARGET_DIVIDE_CALL_DIV1): New macro.
	(TARGET_DIVIDE_CALL_FP, TARGET_DIVIDE_CALL_TABLE): Likewise.
	(sh_divide_strategy_e): Add new members SH_DIV_CALL_DIV1,
	SH_DIV_CALL_FP, SH_DIV_CALL_TABLE and SH_DIV_INTRINSIC.
	(OVERRIDE_OPTIONS): Also process sh_div_str for TARGET_SH1.
	Calculate sh_divsi3_libfunc using TARGET_DIVIDE_* macros.
	* config/sh/sh.md (udivsi3_i4_int, divsi3_i4_int): New patterns.
	(udivsi3, divsi3): Use them.  Check TARGET_DIVIDE_CALL_TABLE /
	TARGET_DIVIDE_CALL_FP.

From-SVN: r112331
2006-03-23 21:39:32 +00:00