Commit Graph

83237 Commits

Author SHA1 Message Date
Andrew Haley
cb642590f3 [multiple changes]
2007-09-04    <aph@redhat.com>

	* src/arm/sysv.S (UNWIND): New.
	(Whole file): Conditionally compile unwinder directives.
	* src/arm/sysv.S: Add unwinder directives.

	* src/arm/ffi.c (ffi_prep_args): Align structs by at least 4 bytes.
	Only treat r0 as a struct address if we're actually returning a
	struct by address.
	Only copy the bytes that are actually within a struct.
	(ffi_prep_cif_machdep): A Composite Type not larger than 4 bytes
	is returned in r0, not passed by address.
	(ffi_call): Allocate a word-sized temporary for the case where
	a composite is returned in r0.
	(ffi_prep_incoming_args_SYSV): Align as necessary.

2007-08-05  Steven Newbury  <s_j_newbury@yahoo.co.uk>

	* src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Use __clear_cache instead of 
	directly using the sys_cacheflush syscall.

2007-07-27  Andrew Haley  <aph@redhat.com>

	* src/arm/sysv.S (ffi_closure_SYSV): Add soft-float.

From-SVN: r128093
2007-09-04 17:52:45 +00:00
Jan Hubicka
4d4b8cb9c0 re PR middle-end/29478 (optimization generates warning for casts)
* gcc.dg/tree-ssa/loadpre8.c: Disable inlining.
	* gcc.dg/tree-ssa/pr27236.c: Likewise.
	* gcc.dg/tree-ssa/predcom-1.c: Likewise.
	* gcc.dg/tree-ssa/predcom-2.c: Likewise.
	* gcc.dg/tree-ssa/flatten-2.c: Avoid overactive tail call ellim.
	* gcc.dg/tree-ssa/loadpre5.c: Likewise.
	* gcc.dg/vect/costmodel/i386/costmodel-fast-math-vect-pr29925.c:
	Likewise.
	* invoke.texi (-finline-small-functions): Document.
	* ipa-inline.c (cgraph_default_inline_p): Do not use DECL_INLINE
	when deciding what is inlinable.
	(cgraph_decide_recursive_inlining): Handle flag_inline_functions.
	(cgraph_decide_inlining_of_small_function): Handle new flags.
	(cgraph_decide_inlining_incrementally): Likewise.
	* opts.c (decode_options): Enable flag_inline_small_functions at -O2
	* common.opt (finline-small-functions): New.
	* Makefile.in (build/gengtype.o-warn): Work around PR29478

From-SVN: r128092
2007-09-04 16:07:50 +00:00
Richard Sandiford
4c5bae34c1 decl.c (cp_finish_decl): Call determine_visibility before make_rtl_for_nonlocal_decl.
gcc/cp/
	* decl.c (cp_finish_decl): Call determine_visibility before
	make_rtl_for_nonlocal_decl.

From-SVN: r128091
2007-09-04 15:53:21 +00:00
Richard Biener
16ae1645b1 tree-ssa-operands.c (add_virtual_operand): Only mark stores as has_volatile_ops if alias information is not available.
2007-09-04  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-operands.c (add_virtual_operand): Only mark
	stores as has_volatile_ops if alias information is not available.

From-SVN: r128089
2007-09-04 15:29:15 +00:00
Andrew Haley
817a54f1cd libgcc-bpabi.ver: Add _Unwind_Backtrace as GCC_4.3.0.
2007-08-29  Andrew Haley  <aph@redhat.com>

        * config/arm/libgcc-bpabi.ver: Add _Unwind_Backtrace as GCC_4.3.0.

From-SVN: r128088
2007-09-04 15:08:15 +00:00
Andrew Haley
6f4176b089 libunwind.S (UNWIND_WRAPPER _Unwind_Backtrace): New.
2007-08-08  Andrew Haley  <aph@redhat.com>

        * config/arm/libunwind.S (UNWIND_WRAPPER _Unwind_Backtrace): New.
        * config/arm/unwind-arm.h (__gnu_Unwind_Backtrace): New.
        * config/arm/unwind-arm.c (__gnu_Unwind_Backtrace): New.

From-SVN: r128087
2007-09-04 15:05:01 +00:00
Andrew Haley
29741d6ae5 decl.c (java_init_decl_processing): Call "__cxa_end_cleanup" when using the ARM EABI.
2007-09-04  Andrew Haley  <aph@redhat.com>

        * decl.c (java_init_decl_processing): Call "__cxa_end_cleanup"
        when using the ARM EABI.

From-SVN: r128086
2007-09-04 15:03:54 +00:00
Emmanuel Thome
99a8d35b47 re PR c++/14178 (doc bug: -fabi-version=2 is now default (not 1))
2007-09-04  Emmanuel Thome  <Emmanuel.Thome@inria.fr>

	PR c++/14178
	* common.opt: Mention ABI version 2 in comment.

From-SVN: r128085
2007-09-04 14:27:05 +00:00
Jan Hubicka
8a33f10034 optabs.c (debug_optab_libfunc): Update; make available to gdb.
* optabs.c (debug_optab_libfunc): Update; make available to gdb.
	(libfunc_entry): New structure.
	(libfunc_hash): New hashtable.
	(hash_libfunc): New function.
	(eq_libfunc): New function.
	(convert_optab_libfunc): New function.
	(optab_libfunc): New function.
	(expand_binop, sign_expand_binop, expand_twoval_binop_libfunc,
	expand_unop, prepare_cmp_insn, prepare_float_insn, gen_add2_insn,
	expand_float, expand_fix, new_optab, new_convert_optab):
	 Update for new libfunc API.
	(init_libfunc, init_integral_libfuncs,
	init_floating_libfuncs, init_interclass_conv_libfuncs
	init_intraclass_conv_libfuncs): Remove; reorganize all logic to:
	(gen_libfunc, gen_int_libfunc, gen_fp_libfunc, gen_int_fp_libfunc,
	gen_intv_fp_libfunc, gen_interclass_conv_libfunc,
	gen_int_to_fp_conv_libfunc, gen_ufloat_conv_libfunc,
	gen_int_to_fp_nondecimal_conv_libfunc, gen_fp_to_int_conv_libfunc,
	gen_intraclass_conv_libfunc, gen_trunc_conv_libfunc,
	gen_extend_conv_libfunc): New.
	(init_one_libfunc): Revamp for hashtables.
	(set_conv_libfunc): Likewise.
	(init_optabs): Initialize hashtable; use lazy initialization where possible.
	* optabs.h (optab_handlers): Move out of GGC.
	(optab, convert_optab): Move out of GGC; add lazy gen info.
	(code_to_optab, convert_optab_table, optab_table): Move out of GGC.
	(optab_libfunc, convert_optab_libfunc): New.
	* builtins.c (expand_builtin_powi): Update for new API.
	* expr.c (convert_move): Likewise.
	* expmed.c (expand_divmod): Likewise.

From-SVN: r128083
2007-09-04 14:03:31 +00:00
Janus Weil
6977374226 decl.c (match_procedure_decl,match_procedure_in_interface, [...]): Handle PROCEDURE statements.
2007-09-04  Janus Weil  <jaydub66@gmail.com>
	    Paul Thomas  <pault@gcc.gnu.org>

	* decl.c (match_procedure_decl,match_procedure_in_interface,
	gfc_match_procedure): Handle PROCEDURE statements.
	* gfortran.h (struct gfc_symbol): New member "gfc_symbol *interface".
	(enum gfc_statement): New element "ST_PROCEDURE".
	(strcut symbol_attribute): New member "unsigned procedure".
	* interface.c (check_interface0): Extended error checking.
	* match.h: Add gfc_match_procedure prototype.
	* parse.c (decode_statement,next_statement,gfc_ascii_statement,
	parse_derived,parse_interface): Implement PROCEDURE statements.
	* resolve.c (resolve_symbol): Ditto.
	* symbol.c (check_conflict): Ditto.
	(gfc_add_proc): New function for setting the procedure attribute.
	(copy_formal_args): New function for copying formal argument lists.


2007-09-04  Janus Weil  <jaydub66@gmail.com>
	    Tobias Burnus  <burnus@net-b.de>

	* gfortran.dg/proc_decl_1.f90: New.
	* gfortran.dg/proc_decl_2.f90: New.
	* gfortran.dg/proc_decl_3.f90: New.
	* gfortran.dg/proc_decl_4.f90: New.


Co-Authored-By: Paul Thomas <pault@gcc.gnu.org>
Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r128081
2007-09-04 15:50:35 +02:00
Daniel Jacobowitz
8070c91a53 rs6000.c (rs6000_stack_info): Allocate space for the GOT pointer only if there is a constant pool.
* config/rs6000/rs6000.c (rs6000_stack_info): Allocate space for the
	GOT pointer only if there is a constant pool.  Use the allocated space
	for SPE also.

From-SVN: r128080
2007-09-04 13:46:47 +00:00
Jan Hubicka
1e0890ae3c vect-reduc-dot-s16b.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-s16b.c: Mark functions noinline.
	* gcc.dg/vect/vect-105.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-6.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-53.c: Mark functions noinline.
	* gcc.dg/vect/wrapv-vect-reduc-2short.c: Mark functions noinline.
	* gcc.dg/vect/fast-math-vect-pr29925.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-u8a.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-7.c: Mark functions noinline.
	* gcc.dg/vect/vect-50.c: Mark functions noinline.
	* gcc.dg/vect/vect-33.c: Mark functions noinline.
	* gcc.dg/vect/vect-16.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-sum.c: Mark functions noinline.
	* gcc.dg/vect/vect-float-extend-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-92.c: Mark functions noinline.
	* gcc.dg/vect/vect-75.c: Mark functions noinline.
	* gcc.dg/vect/vect-58.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2b.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-7.c: Mark functions noinline.
	* gcc.dg/vect/no-section-anchors-vect-69.c: Mark functions noinline.
	* gcc.dg/vect/vect-114.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4g.c: Mark functions noinline.
	* gcc.dg/vect/vect-8.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-vect-iv-1.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-10.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-45.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-10a.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-5.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-18.c: Mark functions noinline.
	* gcc.dg/vect/vect-42.c: Mark functions noinline.
	* gcc.dg/vect/vect-25.c: Mark functions noinline.
	* gcc.dg/vect/vect-vfa-01.c: Mark functions noinline.
	* gcc.dg/vect/vect-67.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-3a.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u16-mult.c: Mark functions noinline.
	* gcc.dg/vect/vect-106.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-7.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-37.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-2short.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-u8b.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-8.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-79.c: Mark functions noinline.
	* gcc.dg/vect/vect-34.c: Mark functions noinline.
	* gcc.dg/vect/vect-17.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-102a.c: Mark functions noinline.
	* gcc.dg/vect/vect-align-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-93.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-s16.c: Mark functions noinline.
	* gcc.dg/vect/vect-76.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u16-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2c.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-5.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-8.c: Mark functions noinline.
	* gcc.dg/vect/vect-115.c: Mark functions noinline.
	* gcc.dg/vect/vect-9.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-vect-iv-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-1a.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-11.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-10b.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u32-i4.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-u8.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-6.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-19.c: Mark functions noinline.
	* gcc.dg/vect/vect-60.c: Mark functions noinline.
	* gcc.dg/vect/vect-26.c: Mark functions noinline.
	* gcc.dg/vect/vect-vfa-02.c: Mark functions noinline.
	* gcc.dg/vect/vect-85.c: Mark functions noinline.
	* gcc.dg/vect/vect-68.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-3b.c: Mark functions noinline.
	* gcc.dg/vect/vect-floatint-conversion-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i8-gap7.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-8.c: Mark functions noinline.
	* gcc.dg/vect/vect-107.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-1.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-20.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-9.c: Mark functions noinline.
	* gcc.dg/vect/vect-52.c: Mark functions noinline.
	* gcc.dg/vect/vect-35.c: Mark functions noinline.
	* gcc.dg/vect/vect-18.c: Mark functions noinline.
	* gcc.dg/vect/vect-align-2.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-77.c: Mark functions noinline.
	* gcc.dg/vect/vect-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2d.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-6.c: Mark functions noinline.
	* gcc.dg/vect/vect-82_64.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-9.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i2-gap.c: Mark functions noinline.
	* gcc.dg/vect/vect-116.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-store-u16-i4.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-vect-iv-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-1b.c: Mark functions noinline.
	* gcc.dg/vect/wrapv-vect-reduc-dot-s8b.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-12.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-7.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-101.c: Mark functions noinline.
	* gcc.dg/vect/vect-44.c: Mark functions noinline.
	* gcc.dg/vect/vect-27.c: Mark functions noinline.
	* gcc.dg/vect/vect-vfa-03.c: Mark functions noinline.
	* gcc.dg/vect/vect-86.c: Mark functions noinline.
	* gcc.dg/vect/vect-100.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-3c.c: Mark functions noinline.
	* gcc.dg/vect/vect-floatint-conversion-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u32-mult.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i8.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-fir-lb.c: Mark functions noinline.
	* gcc.dg/vect/vect-108.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-9.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-21.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-2a.c: Mark functions noinline.
	* gcc.dg/vect/vect-11.c: Mark functions noinline.
	* gcc.dg/vect/vect-70.c: Mark functions noinline.
	* gcc.dg/vect/vect-36.c: Mark functions noinline.
	* gcc.dg/vect/vect-19.c: Mark functions noinline.
	* gcc.dg/vect/vect-95.c: Mark functions noinline.
	* gcc.dg/vect/vect-78.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u16-i4.c: Mark functions noinline.
	* gcc.dg/vect/vect-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-all.c: Mark functions noinline.
	* gcc.dg/vect/vect-117.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-13.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-1c.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u16-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap7.c: Mark functions noinline.
	* gcc.dg/vect/vect-20.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-8.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-1.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-102.c: Mark functions noinline.
	* gcc.dg/vect/vect-62.c: Mark functions noinline.
	* gcc.dg/vect/vect-28.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-10.c: Mark functions noinline.
	* gcc.dg/vect/vect-vfa-04.c: Mark functions noinline.
	* gcc.dg/vect/vect-87.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-u16a.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-4a.c: Mark functions noinline.
	* gcc.dg/vect/vect-109.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-22.c: Mark functions noinline.
	* gcc.dg/vect/no-section-anchors-vect-outer-4h.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-2b.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-s8a.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-57.c: Mark functions noinline.
	* gcc.dg/vect/vect-12.c: Mark functions noinline.
	* gcc.dg/vect/vect-71.c: Mark functions noinline.
	* gcc.dg/vect/vect-54.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-mult.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-96.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-1char.c: Mark functions noinline.
	* gcc.dg/vect/vect-110.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-4.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-store-u32-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4k.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-mult.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-14.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-49.c: Mark functions noinline.
	* gcc.dg/vect/vect-21.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-9.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-80.c: Mark functions noinline.
	* gcc.dg/vect/vect-63.c: Mark functions noinline.
	* gcc.dg/vect/vect-46.c: Mark functions noinline.
	* gcc.dg/vect/vect-29.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-11.c: Mark functions noinline.
	* gcc.dg/vect/vect-88.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-u16b.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-83_64.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-4b.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-4.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-2c.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-s8b.c: Mark functions noinline.
	* gcc.dg/vect/vect-30.c: Mark functions noinline.
	* gcc.dg/vect/vect-13.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u8-i2-gap.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-8a.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-same-dr.c: Mark functions noinline.
	* gcc.dg/vect/vect-72.c: Mark functions noinline.
	* gcc.dg/vect/vect-38.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-4.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-u16.c: Mark functions noinline.
	* gcc.dg/vect/vect-97.c: Mark functions noinline.
	* gcc.dg/vect/vect-111.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4d.c: Mark functions noinline.
	* gcc.dg/vect/vect-5.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-mult-char-ls.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-store-a-u8-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4l.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-2.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-15.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-1short.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u16-i4.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u32-i8.c: Mark functions noinline.
	* gcc.dg/vect/vect-22.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-64.c: Mark functions noinline.
	* gcc.dg/vect/vect-89.c: Mark functions noinline.
	* gcc.dg/vect/no-tree-dom-vect-bug.c: Mark functions noinline.
	* gcc.dg/vect/vect-103.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-51.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-pr29145.c: Mark functions noinline.
	* gcc.dg/vect/wrapv-vect-reduc-pattern-2c.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-5.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-s8c.c: Mark functions noinline.
	* gcc.dg/vect/vect-11a.c: Mark functions noinline.
	* gcc.dg/vect/vect-31.c: Mark functions noinline.
	* gcc.dg/vect/vect-14.c: Mark functions noinline.
	* gcc.dg/vect/vect-73.c: Mark functions noinline.
	* gcc.dg/vect/vect-56.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-5.c: Mark functions noinline.
	* gcc.dg/vect/vect-98.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-float.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-112.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-9a.c: Mark functions noinline.
	* gcc.dg/vect/vect-6.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-43.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4m.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-s8.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-3.c: Mark functions noinline.
	* gcc.dg/vect/pr25413.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-16.c: Mark functions noinline.
	* gcc.dg/vect/vect-40.c: Mark functions noinline.
	* gcc.dg/vect/vect-23.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-4.c: Mark functions noinline.
	* gcc.dg/vect/vect-82.c: Mark functions noinline.
	* gcc.dg/vect/vect-65.c: Mark functions noinline.
	* gcc.dg/vect/vect-48.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-s16a.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Mark functions noinline.
	* gcc.dg/vect/vect-104.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-fir.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-6.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u32-mult.c: Mark functions noinline.
	* gcc.dg/vect/vect-32.c: Mark functions noinline.
	* gcc.dg/vect/vect-15.c: Mark functions noinline.
	* gcc.dg/vect/no-trapping-math-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-float-truncate-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-91.c: Mark functions noinline.
	* gcc.dg/vect/vect-74.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2a.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-2char.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-6.c: Mark functions noinline.
	* gcc.dg/vect/vect-99.c: Mark functions noinline.
	* gcc.dg/vect/vect-113.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-9b.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4f.c: Mark functions noinline.
	* gcc.dg/vect/vect-7.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-61.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-4.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-17.c: Mark functions noinline.
	* gcc.dg/vect/vect-24.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-5.c: Mark functions noinline.
	* gcc.dg/vect/vect-83.c: Mark functions noinline.
	* gcc.dg/vect/vect-66.c: Mark functions noinline.
	* gcc.dg/vect/wrapv-vect-reduc-2char.c: Mark functions noinline.

From-SVN: r128079
2007-09-04 13:05:19 +00:00
Daniel Jacobowitz
f1a72222fd linux-unwind.h (ppc_fallback_frame_state): Correct typo for AltiVec.
* config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Correct
	typo for AltiVec.

From-SVN: r128078
2007-09-04 12:57:59 +00:00
Jason Merrill
d950f2be37 re PR c++/14032 (Specialization of inner template using outer template argument doesn't work)
PR c++/14032
        * pt.c (most_specialized_class): Substitute outer template
        arguments into the arguments of a member template partial
        specialization.
        (strip_innermost_template_args): New fn.

From-SVN: r128077
2007-09-04 08:27:38 -04:00
Jason Merrill
dc28490d05 re PR c++/14032 (Specialization of inner template using outer template argument doesn't work)
PR c++/14032
        * pt.c (most_specialized_class): Substitute outer template
        arguments into the arguments of a member template partial
        specialization.
        (strip_innermost_template_args): New fn.

From-SVN: r128076
2007-09-04 08:27:21 -04:00
Revital Eres
a1a8261107 Add new fp flags: -fassociative-math and -freciprocal-math
Co-Authored-By: R. Clint Whaley <whaley@cs.utsa.edu>
Co-Authored-By: Richard Guenther <rguenther@suse.de>

From-SVN: r128075
2007-09-04 12:11:11 +00:00
Paolo Carlini
cea79118fa re PR c++/18608 (Configuration documentation mentions wrong flag)
2007-09-04  Paolo Carlini  <pcarlini@suse.de>

	PR c++/18608
	* doc/install.texi (--enable-__cxa_atexit): Fix typo.

From-SVN: r128074
2007-09-04 11:07:52 +00:00
Jan Hubicka
e96a54f780 regrename.c (build_def_use): Don't share RTL between MATCH_OPERATOR and corresponding MATCH_DUP.
* regrename.c (build_def_use): Don't share RTL between MATCH_OPERATOR
	and corresponding MATCH_DUP.
	* regrename.c(copyprop_hardreg_forward_1): Unshare when doing copyprop.

From-SVN: r128073
2007-09-04 10:29:23 +00:00
Uros Bizjak
95afbcac54 re PR middle-end/33187 (Missed cmove opportunity)
PR middle-end/33187
       * combine.c (subst): Do not try to simplify X if it represents load
       of FP constant from the constant pool via float extension.

testsuite/ChangeLog:

       PR middle-end/33187
       * gcc.target/i386/cmov7.c: New file.

From-SVN: r128072
2007-09-04 12:07:19 +02:00
Ben Elliston
731c68a204 * Makefile.in (c-opts.o): Add $(TM_P_H) as a dependency.
From-SVN: r128071
2007-09-04 19:48:04 +10:00
Ben Elliston
0b2dffe116 * c-opts.c: Include "tm_p.h".
From-SVN: r128070
2007-09-04 19:33:40 +10:00
Uros Bizjak
8d67c58f94 sse4a-check.h: New file.
* gcc.target/i386/sse4a-check.h: New file.
	* gcc.target/i386/sse4a-extract.c: Include sse4a-check.h. Remove main.
	* gcc.target/i386/sse4a-insert.c: Ditto.
	* gcc.target/i386/sse4a-montsd.c: Ditto.
	* gcc.target/i386/sse4a-montss.c: Ditto.
	* gcc.target/i386/mmx-check.h: New file.
	* gcc.target/i386/mmx-4.c: Include mmx-check.h. Remove main.
	* gcc.target/i386/builtin-apply-mmx.c: Ditto.
	* gcc.target/i386/sse-check.h: New file.
	* gcc.target/i386/pr13685: Include sse-check.h. Remove main.
	* gcc.target/i386/sse-3.c: Ditto.
	* gcc.target/i386/sse-7.c: Ditto.
	* gcc.target/i386/sse-9.c: Ditto.
	* gcc.target/i386/ssefn-3.c: Ditto.
	* gcc.target/i386/sse-recip.c: Ditto.
	* gcc.target/i386/sse-recip-vec.c: Ditto.
	* gcc.target/i386/20020523.c: Ditto. Rename from 20020523-2.c.
	* gcc.target/i386/20020523-1.c: Remove.
	* gcc.target/i386/sse2-lrint-vec.c: Include sse2-check.h. Remove main.
	* gcc.target/i386/sse2-lrintf-vec.c: Ditto.
	* gcc.target/i386/ssefn-4.c: Ditto.
	* gcc.target/i386/sse-6.c: Ditto.
	* gcc.target/i386/sse-10.c: Ditto.
	* gcc.target/i386/sse-11.c: Ditto.
	* gcc.target/i386/sse-18.c: Ditto.
	* gcc.target/i386/fpprec-1.c: Ditto.
	* g++.dg/other/i386-1.C: Ditto.

From-SVN: r128069
2007-09-04 11:02:56 +02:00
Richard Guenther
04d86531d7 re PR tree-optimization/33291 (a+=2; a+=2 not simplified to a+=4; with -O3 (ok with gcc-4.2.1))
2007-09-04  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/33291
	* tree-pretty-print.c (dump_generic_node): Dump all
	qualifiers for pointer types, not only first.  Dump
	qualifiers for aggregate types as well.
	* tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Always
	use the canonical type for building ARRAY_REFs.
	* gimplify.c (canonicalize_addr_expr): Clean up.  The
	correct validness check is compatibility of the pointer
	types.  Always use the canonical type for building
	ARRAY_REFs and ADDR_EXPRs.
	* tree-ssa-forwprop.c (forward_propagate_addr_expr): Revert
	change that disabled propagation of ADDR_EXPRs into statements
	with volatile ops.

	* gcc.dg/volatile2.c: New testcase.
	* gcc.dg/pr32721.c: Adjust volatile reference pattern.
	* gcc.dg/tree-ssa/forwprop-1.c: Remove xfail.
	* gcc.dg/tree-ssa/forwprop-2.c: Likewise.
	* gcc.dg/tree-ssa/pr17141-1.c: Likewise.

From-SVN: r128068
2007-09-04 08:38:56 +00:00
Zack Weinberg
fc7a6a0dfa * config/arm/arm.md (mulsidi3, umulsidi3, mulsi3_highpart)
(umulsi3_highpart): Make into expanders; existing insns are
	now named *[insn]_nov6.  Add stars to existing [insn]_v6
	counterparts' names.

From-SVN: r128067
2007-09-04 04:44:47 +00:00
Daniel Jacobowitz
72c6567431 * Makefile.in (DRIVER_DEFINES, gcc.o, gccspec.o, protoize.o)
(unprotoize.o): Remove SHLIB_MULTILIB.

	* Make-lang.in (jvspec.o): Remove SHLIB_MULTILIB.

	* Make-lang.in (g++spec.o): Remove SHLIB_MULTILIB.

	* Make-lang.in (gfortranspec.o): Remove SHLIB_MULTILIB.

From-SVN: r128066
2007-09-04 02:25:27 +00:00
GCC Administrator
1abaafd348 Daily bump.
From-SVN: r128064
2007-09-04 00:17:14 +00:00
Eric Weddington
79532d3472 * doc/extend.texi: Document progmem attribute for AVR.
From-SVN: r128061
2007-09-04 01:17:14 +04:00
Anatoly Sokolov
93976860d0 re PR target/28902 (Fix for "alingment of XXX is greater than maximum object alignment" on AVR)
PR target/28902
 	* config/avr/avr.h (TARGET_VTABLE_ENTRY_ALIGN): Define.

From-SVN: r128059
2007-09-04 00:35:10 +04:00
Zack Weinberg
a3324f269e optabs.c (expand_ffs): Initialize val and defined_at_zero to avoid warnings.
* optabs.c (expand_ffs): Initialize val and defined_at_zero
	to avoid warnings.

From-SVN: r128058
2007-09-03 19:53:02 +00:00
Jerry DeLisle
b356020960 re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-09-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/33253
	* io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
	in check of first character in string.

From-SVN: r128057
2007-09-03 19:29:17 +00:00
Jerry DeLisle
ae6cd761c4 re PR libfortran/33253 (namelist: reading back a string with apostrophe)
2007-09-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/33253
	* gfortran.dg/namelist_15.f90: Update test.
	* gfortran.dg/namelist_24.f90: Update test.
	* gfortran.dg/namelist_38.f90: New test.

From-SVN: r128056
2007-09-03 19:27:48 +00:00
Maciej W. Rozycki
8d5c5e35a7 Makefile.am: Unify MIPS_IRIX and MIPS_LINUX into MIPS.
* Makefile.am: Unify MIPS_IRIX and MIPS_LINUX into MIPS.
* configure.ac: Likewise.
* Makefile.in: Regenerate.
* include/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* configure: Likewise.

From-SVN: r128055
2007-09-03 18:08:54 +00:00
Zack Weinberg
9cce5b20d6 optabs.c: Remove unnecessary forward declarations.
* optabs.c: Remove unnecessary forward declarations.
	(expand_unop_direct): New, broken out of expand_unop.
	(expand_doubleword_clz): New.
	(expand_ctz): Move above expand_ffs.  Use
	start_sequence, end_sequence, add_equal_note, and
	expand_unop_direct.  Add more commentary.
	(expand_ffs): Try both ctz optab and expand_ctz.
	Generate a test and branch if the hardware doesn't give us
	a useful value for input zero.  Style improvements similar to
	expand_ctz.

	* config/arm/arm.md (ffssi2, ctzsi2): Delete.

From-SVN: r128054
2007-09-03 17:48:44 +00:00
Paolo Carlini
d46c958bfa re PR libstdc++/33293 (inlining std::inner_product())
2007-09-03  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/33293
	* include/bits/stl_numeric.h (accumulate, inner_product):
	Add inline function-specifier.

From-SVN: r128053
2007-09-03 17:48:31 +00:00
Zack Weinberg
96a3900df6 config.gcc: Delete stanza for arm-semi-aof and armel-semi-aof targets.
* config.gcc: Delete stanza for arm-semi-aof and
	armel-semi-aof targets.
	* config/arm/arm-protos.h
	* config/arm/arm.c
	* config/arm/arm.h: Delete all #ifdef AOF_ASSEMBLER blocks;
	make all #ifndef AOF_ASSEMBLER blocks unconditional.  Also
	delete aof_pic_label and remove mention of AOF in comments.
	* config/arm/arm.md: Delete patterns used only for AOF assembly.
	* config/arm/aof.h
	* config/arm/semiaof.h
	* config/arm/t-semi: Delete file.

From-SVN: r128052
2007-09-03 17:11:32 +00:00
Kaveh R. Ghazi
b1d5455a5e system.h (CONST_CAST2, [...]): New macros for type-specific casts.
* system.h (CONST_CAST2, CONST_CAST_TREE, CONST_CAST_RTX,
	CONST_CAST_BB): New macros for type-specific casts.
	(CONST_CAST): Add a TYPE parameter and define it in terms of
	CONST_CAST2.

	* c-decl.c (c_make_fname_decl): Supply a TYPE for CONST_CAST.
	* c-lex.c (cb_ident, lex_string): Likewise,
	* c-typeck.c (free_all_tagged_tu_seen_up_to): Likewise,
	* config/i386/i386.c (ix86_function_regparm,
	ix86_function_sseregparm): Use CONST_CAST_TREE.
	* config/mmix/mmix.c (mmix_encode_section_info): Supply a TYPE for
	CONST_CAST.
	* gcc.c (set_spec, read_specs, for_each_path, execute, do_spec_1,
	give_switch, set_multilib_dir): Likewise,
	* gengtype-parse.c (string_seq, typedef_name): Likewise,
	* gimple-low.c (block_may_fallthru): Use CONST_CAST_TREE.
	* jump.c (reversed_comparison_code_parts): Use CONST_CAST_RTX.
	* passes.c (execute_one_pass): Supply a TYPE for CONST_CAST.
	* prefix.c (update_path): Likewise,
	* pretty-print.c (pp_base_destroy_prefix): Likewise,
	* rtlanal.c (keep_with_call_p): Use CONST_CAST_RTX.
	* tree-cfg.c (tree_can_merge_blocks_p,
	tree_block_ends_with_condjump_p): Use CONST_CAST_BB.
	* tree-eh.c (lookup_stmt_eh_region_fn): USe CONST_CAST_TREE.
	* tree.c (build_string): Supply a TYPE for CONST_CAST.
	(attribute_list_contained): Use CONST_CAST_TREE.

cp:
	* call.c (name_as_c_string): Supply a TYPE for CONST_CAST.
	* decl.c (cp_make_fname_decl): Likewise,
	* parser.c (cp_parser_string_literal): Likewise,
	* tree.c (pod_type_p, zero_init_p): Use CONST_CAST_TREE.
	* typeck.c (cp_type_quals, cp_type_readonly, cp_has_mutable_p):
	Likewise,

fortran:
	* gfortranspec.c (lang_specific_driver): Use CONST_CAST2.
	* options.c (gfc_post_options): Supply a TYPE for CONST_CAST.
	* parse.c (parse_omp_structured_block): Likewise,
	* st.c (gfc_free_statement): Likewise,

java:
	* jcf-parse.c (read_class, java_parse_file): Supply a TYPE for
	CONST_CAST.
	* jcf.h (JCF_FINISH): Likewise.

From-SVN: r128051
2007-09-03 17:09:20 +00:00
Francois-Xavier Coudert
d74b97cc7e re PR fortran/31675 (Fortran front-end and libgfortran should have a common header file)
PR fortran/31675

	* libgfortran.h: New file.
	* iso-fortran-env.def: Use macros in the new header instead of
	hardcoded integer constants.
	* Make-lang.in (F95_PARSER_OBJS, GFORTRAN_TRANS_DEPS): Add
	fortran/libgfortran.h.
	* gfortran.h (GFC_STD_*, GFC_FPE_*, options_convert,
	ioerror_codes): Remove.
	* trans.c (ERROR_ALLOCATION): Remove.
	(gfc_call_malloc, gfc_allocate_with_status,
	gfc_allocate_array_with_status): Use LIBERROR_ALLOCATION.
	* trans-types.h (GFC_DTYPE_*): Remove.
	* trans-decl.c (gfc_generate_function_code): Use
	GFC_CONVERT_NATIVE instead of CONVERT_NATIVE.
	* trans-io.c (set_parameter_value, set_parameter_ref): Use
	LIBERROR_* macros instead of IOERROR_ macros.
	* trans-intrinsic.c (gfc_conv_intrinsic_function): Use
	LIBERROR_END and LIBERROR_EOR instead of hardcoded constants.
	* options.c (gfc_init_options): Use GFC_CONVERT_NATIVE instead of
	CONVERT_NATIVE.
	(gfc_handle_option): Use GFC_CONVERT_* macros instead of CONVERT_*.

	* libgfortran.h: Include gcc/fortran/libgfortran.h.
	Remove M_PI, GFC_MAX_DIMENSIONS, GFC_DTYPE_*, GFC_NUM_RANK_BITS,
	error_codes, GFC_STD_*, GFC_FPE_* and unit_convert.
	* runtime/environ.c (variable_table): Use GFC_*_UNIT_NUMBER instead
	of hardcoded constants.
	(do_parse, init_unformatted): Use GFC_CONVERT_* macros instead of
	CONVERT_*.
	* runtime/string.c (find_option): Use LIBERROR_BAD_OPTION instead
	of ERROR_BAD_OPTION.
	* runtime/error.c (translate_error, generate_error): Use
	LIBERROR_* macros instead of ERROR_*.
	* io/file_pos.c (formatted_backspace, unformatted_backspace,
	st_backspace, st_rewind, st_flush): Rename macros.
	* io/open.c (convert_opt, edit_modes, new_unit, already_open,
	st_open): Likewise.
	* io/close.c (st_close): Likewise.
	* io/list_read.c (next_char, convert_integer, parse_repeat,
	read_logical, read_integer, read_character, parse_real,
	check_type, list_formatted_read_scalar, namelist_read,
	nml_err_ret): Likewise.
	* io/read.c (convert_real, read_l, read_decimal, read_radix,
	read_f): Likewise.
	* io/inquire.c (inquire_via_unit): Likewise.
	* io/unit.c (get_internal_unit): Likewise.
	* io/transfer.c (read_sf, read_block, read_block_direct,
	write_block, write_buf, unformatted_read, unformatted_write,
	formatted_transfer_scalar, us_read, us_write, data_transfer_init,
	skip_record, next_record_r, write_us_marker, next_record_w_unf,
	next_record_w, finalize_transfer, st_read, st_write_done):
	Likewise.
	* io/format.c (format_error): Likewise.

From-SVN: r128050
2007-09-03 16:44:15 +00:00
Krister Walfridsson
4392a547f5 * config/netbsd-elf.h (USE_LD_AS_NEEDED): Define.
From-SVN: r128049
2007-09-03 16:14:04 +00:00
Richard Sandiford
c722c7daaf re PR middle-end/33290 (gcc.c-torture/execute/930921-1.c fails at -O1 and above now)
gcc/
	PR middle-end/33290
	* optabs.c (avoid_expensive_constant): Canonicalize CONST_INTs
	before forcing them into a register.

From-SVN: r128048
2007-09-03 15:35:52 +00:00
Richard Sandiford
171cb6996f mips.md (fetchop_bit): Use define_code_iterator rather than define_code_macro.
gcc/
	* config/mips/mips.md (fetchop_bit): Use define_code_iterator
	rather than define_code_macro.

From-SVN: r128047
2007-09-03 15:33:51 +00:00
Francois-Xavier Coudert
47d3331890 gcc.c (xputenv): New function.
* gcc.c (xputenv): New function.
	(putenv_from_prefixes): Use xputenv instead of putenv.
	(process_command): Use xputenv instead of putenv.
	(set_collect_gcc_options): Use xputenv instead of putenv.
	(main): Use xputenv instead of putenv.

From-SVN: r128046
2007-09-03 15:24:48 +00:00
H.J. Lu
7ddb87782d no-tree-scev-cprop-vect-iv-1.c: Restored.
2007-09-03  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc.dg/vect/no-tree-scev-cprop-vect-iv-1.c: Restored.  Moved
	to ...
	* gcc.dg/vect/no-scevccp-vect-iv-1.c: New test.
	* gcc.dg/vect/no-tree-scev-cprop-vect-iv-2.c: Restored.  Moved
	to ...
	* gcc.dg/vect/no-scevccp-vect-iv-2.c: New test.
	* gcc.dg/vect/no-tree-scev-cprop-vect-iv-3.c: Restored.  Moved
	to ...
	* gcc.dg/vect/no-scevccp-vect-iv-3.c: New test.

From-SVN: r128045
2007-09-03 08:19:17 -07:00
Jesper Nilsson
9816d522ce builtin_bswap_v3.c: New testcase.
* gcc.target/cris/builtin_bswap_v3.c: New testcase.
	* gcc.target/cris/builtin_bswap_v8.c: New testcase.

From-SVN: r128044
2007-09-03 13:41:43 +00:00
Jesper Nilsson
df638b2780 cris.h (TARGET_HAS_SWAP): Defined to describe availability of swap instruction.
* config/cris/cris.h (TARGET_HAS_SWAP): Defined to describe
	availability of swap instruction.
	* config/cris/cris.md (bswapsi2): Implement using swap instruction.

From-SVN: r128043
2007-09-03 13:37:44 +00:00
Revital Eres
127494408f Update -fmodulo-sched-allow-regmoves documentation
From-SVN: r128041
2007-09-03 11:55:40 +00:00
Vladimir Yanovsky
c894383202 Change SMS behavior upon failure
Co-Authored-By: Ayal Zaks <zaks@il.ibm.com>
Co-Authored-By: Revital Eres <eres@il.ibm.com>

From-SVN: r128040
2007-09-03 11:50:45 +00:00
Jesper Nilsson
d4d96a5aef * gcc.dg/torture/cris-asm-mof-1.c: Skip if -march defined.
From-SVN: r128039
2007-09-03 11:38:28 +00:00
Nick Clifton
d70c0bd666 Make-lang.in: Change copyright header to refer to version 3 of the GNU General Public License...
* Make-lang.in: Change copyright header to refer to version 3 of the GNU
  General Public License and to point readers at the COPYING3 file and 
  the FSF's license web page.
* ada-tree.def, nmake.adt, nlists.h, snames.h, utils.c,
  Makefile.rtl, Makefile.in, config-lang.in, uintp.h, urealp.h,
  namet.h, decl.c, utils2.c, lang.opt, elists.h, atree.h, types.h,
  treeprs.adt, lang-specs.h, cuintp.c, stringt.h, gnatbl.c: Likewise.

From-SVN: r128038
2007-09-03 10:06:52 +00:00
David Daney
8d2fc1c481 mips.md (UNSPEC_COMPARE_AND_SWAP, [...]): New define_constants.
2007-09-02  David Daney  <ddaney@avtrex.com>

	* config/mips/mips.md (UNSPEC_COMPARE_AND_SWAP, UNSPEC_SYNC_OLD_OP,
	UNSPEC_SYNC_NEW_OP, UNSPEC_SYNC_EXCHANGE): New define_constants.
	(optab, insn): Add more attributes.
	(fetchop_bit): New code macro.
	(immediate_insn): New code macro attribute.
	(sync): Change condition to ISA_HAS_SYNC.
	(rdhwr): Change predicate for operand 0 to register_operand.
	(memory_barrier): New expand.
	(sync_compare_and_swap<mode>, sync_add<mode>, sync_sub<mode>,
	sync_old_add<mode>, sync_old_sub<mode>, sync_new_add<mode>,
	sync_new_sub<mode>, sync_<optab><mode>,	sync_old_<optab><mode>,
	sync_new_<optab><mode>, sync_nand<mode>, sync_old_nand<mode>,
	sync_new_nand<mode>, sync_lock_test_and_set<mode>): New insns.
	* config/mips/mips.h (ISA_HAS_SYNC, ISA_HAS_LL_SC): New ISA predicates.
	(MIPS_COMPARE_AND_SWAP, MIPS_SYNC_OP, MIPS_SYNC_OLD_OP,
	MIPS_SYNC_NEW_OP, MIPS_SYNC_NAND, MIPS_SYNC_OLD_NAND,
	MIPS_SYNC_NEW_NAND, MIPS_SYNC_EXCHANGE): New Macros.
	
2007-09-02  David Daney  <ddaney@avtrex.com>
	* gcc.target/mips/gcc-have-sync-compare-and-swap-1.c: New test.
	* gcc.target/mips/gcc-have-sync-compare-and-swap-2.c: Ditto.
	* gcc.target/mips/atomic-memory-1.c: Ditto.
	* testsuite/gcc.target/mips/atomic-memory-2.c: Ditto.

From-SVN: r128037
2007-09-03 05:34:30 +00:00
Steven G. Kargl
200c50363b invoke.texi: Fix the -frange-checking option entry.
2007-09-02  Steven G. Kargl  <kargl@gcc.gnu.org>

        * invoke.texi: Fix the -frange-checking option entry.

From-SVN: r128036
2007-09-03 04:07:04 +00:00