Commit Graph

82044 Commits

Author SHA1 Message Date
Sa Liu 39aeae8573 config.gcc: Add options for arch and tune on SPU.
2007-07-13  Sa Liu  <saliu@de.ibm.com>

	* config.gcc: Add options for arch and tune on SPU.
	* config/spu/predicates.md: Add constant operands 0 and 1.
	* config/spu/spu-builtins.def: Add builtins for double precision 
	floating point comparison: si_dfceq, si_dfcmeq,	si_dfcgt, si_dfcmgt, 
	si_dftsv, spu_cmpeq_13, spu_cmpabseq_1, spu_cmpgt_13, spu_cmpabsgt_1,
	spu_testsv.
	* config/spu/spu-c.c: Define __SPU_EDP__ when builtins invoked with 
	a CELLEDP target.
	* config/spu/spu-protos.h: Add new function prototypes. 
	* config/spu/spu.c (spu_override_options): Check options -march and
	-mtune.
	(spu_comp_icode): Add comparison code for DFmode and vector mode.
	(spu_emit_branch_or_set): Use the new code for DFmode and vector 
	mode comparison.
	(spu_const_from_int): New.  Create a vector constant from 4 ints.
	(get_vec_cmp_insn): New.  Get insn index of vector compare instruction.
	(spu_emit_vector_compare): New.  Emit vector compare.
	(spu_emit_vector_cond_expr): New.  Emit vector conditional expression.
	* config/spu/spu.h: Add options -march and -mtune.  Define processor
	types PROCESSOR_CELL and PROCESSOR_CELLEDP.  Define macro
	CANONICALIZE_COMPARISON.
	* config/spu/spu.md: Add new insns for double precision compare
	and double precision vector compare.  Add vcond and smax/smin patterns
	to enable DFmode vector conditional expression.
	* config/spu/spu.opt: Add options -march and -mtune.
	* config/spu/spu_internals.h: Add builtins for CELLEDP target:
	si_dfceq, si_dfcmeq, si_dfcgt, si_dfcmgt, si_dftsv.  Add builtin for
	both CELL and CELLEDP targets: spu_testsv.
	* config/spu/spu_intrinsics.h: Add flag mnemonics for test special 
	values.

testsuite/
	* gcc.dg/vect/fast-math-vect-reduc-7.c: Switch on test
	for V2DFmode vector conditional expression.
	* gcc.target/spu/dfcmeq.c: New.  Test combination of abs
	and dfceq patterns.
	* gcc.target/spu/dfcmgt.c: New.  Test combination of abs
	and dfcgt patterns.
	* gcc.target/spu/intrinsics-2.c: New.  Test intrinsics for
	V2DFmode comparison and test special values.
	* lib/target-supports.exp: Switch on test for V2DFmode 
	vector conditional expression.

From-SVN: r126626
2007-07-13 18:31:08 +00:00
Uros Bizjak 2826df069f * splay-tree.h: Fix whitespace.
From-SVN: r126625
2007-07-13 18:18:48 +02:00
Richard Guenther cbf8d355b8 re PR tree-optimization/32721 (CCP removes volatile qualifiers.)
2007-07-13  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/32721
	* tree-ssa-ccp.c (maybe_fold_stmt_indirect): Preserve
	TREE_THIS_VOLATILE on the folded reference.
	* tree-ssa-operands.c (get_expr_operands): Set has_volatile_ops
	if the array reference has TREE_THIS_VOLATILE set.

	* gcc.dg/pr32721.c: New testcase.

From-SVN: r126624
2007-07-13 15:41:02 +00:00
Andrew Haley 05724daed2 libgcj.ver: Add __gcj_personality_sj0.
2007-07-13  Andrew Haley  <aph@redhat.com>

        * libgcj.ver: Add __gcj_personality_sj0.

        * testsuite/libjava.jvmti/jvmti-interp.exp: Likewise.
        * testsuite/libjava.jni/jni.exp: Use -fdollars-in-identifiers.
        * testsuite/libjava.jni/cni.exp: Use -fdollars-in-identifiers.
        * testsuite/libjava.jvmti/jvmti.exp (gcj_jvmti_compile_cxx_to_o): Likewise.

        * gnu/classpath/natVMStackWalker.cc (getCallingClassLoader): Check
        klass is non-null.
        * java/lang/reflect/natField.cc (getAddr): Call
        _Jv_StackTrace::GetCallingClass only if CALLER is non-null.
        * java/lang/reflect/natVMProxy.cc (run_proxy): Use
        _Jv_getFieldInternal to get field proxyClass.m.
        (_Jv_getFieldInternal): New function.

From-SVN: r126623
2007-07-13 15:36:39 +00:00
Andrew Haley 976731ee6e [multiple changes]
2007-07-13  Andrew Haley  <aph@redhat.com>

	* libgcj.ver: Add __gcj_personality_sj0.

	* testsuite/libjava.jvmti/jvmti-interp.exp: Likewise.
	* testsuite/libjava.jni/jni.exp: Use -fdollars-in-identifiers.
	* testsuite/libjava.jni/cni.exp: Use -fdollars-in-identifiers.
	* testsuite/libjava.jvmti/jvmti.exp (gcj_jvmti_compile_cxx_to_o): Likewise.

	* gnu/classpath/natVMStackWalker.cc (getCallingClassLoader): Check
	klass is non-null.
	* java/lang/reflect/natField.cc (getAddr): Call
	_Jv_StackTrace::GetCallingClass only if CALLER is non-null.
	* java/lang/reflect/natVMProxy.cc (run_proxy): Use
	_Jv_getFieldInternal to get field proxyClass.m.
	(_Jv_getFieldInternal): New function.

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

	* configure.host (arm*-linux-gnu): New.
	* sysdep/arm/locks.h: New.

From-SVN: r126622
2007-07-13 14:07:16 +00:00
Roger Sayle 2b2271f8f0 natPosixProcess.cc: Include <sys/time.h> before <sys/resource.h> to restore bootstrap on...
* java/lang/natPosixProcess.cc: Include <sys/time.h> before
	<sys/resource.h> to restore bootstrap on powerpc-apple-darwin7.9.0.

From-SVN: r126621
2007-07-13 13:53:43 +00:00
H.J. Lu 01021d7569 Fix a typo.
From-SVN: r126620
2007-07-13 06:36:18 -07:00
H.J. Lu 248f01d465 re PR other/32188 (DFP instrinic document is out of date)
2007-07-13  H.J. Lu  <hongjiu.lu@intel.com>

	PR other/32188
	* doc/libgcc.texi: Update DFP intrinsics for DPD and BID.

From-SVN: r126619
2007-07-13 06:22:10 -07:00
Hans-Peter Nilsson f10442327a 20011127-1.c: Use dg-message...
* gcc.dg/20011127-1.c: Use dg-message, not dg-error to match the
	error message part that continues on a new line.

From-SVN: r126618
2007-07-13 12:49:07 +00:00
Andreas Schwab 36f568c387 * gengtype-lex.l: Allow declarations to be indented.
From-SVN: r126615
2007-07-13 09:12:13 +00:00
Daniel Franke a2bef74c1b invoke.texi: Unified upper- and lower-case in menus.
2007-07-13  Daniel Franke  <franke.daniel@gmail.com>

        * invoke.texi: Unified upper- and lower-case in menus.
        (-w, -W): Removed, documented by gcc.
        * intrinsic.texi: Unified Class-section entries, added
        subroutine/function warning where appropiate.

From-SVN: r126614
2007-07-13 04:04:04 -04:00
Geoffrey Keating 1617e5eedc Index: gcc/ChangeLog
2007-07-12  Geoffrey Keating  <geoffk@apple.com>

	* ginclude/tgmath.h: New.
	* config.gcc: Use GCC's tgmath.h on non-glibc systems.
	* doc/sourcebuild.texi (Headers): Document use_gcc_tgmath.
	* configure.ac (STMP_FIXPROTO): Honor use_gcc_tgmath.
	* configure: Regenerate.

Index: gcc/testsuite/ChangeLog
2007-07-11  Geoffrey Keating  <geoffk@apple.com>

	* gcc.dg/c99-tgmath-1.c: New.
	* gcc.dg/c99-tgmath-2.c: New.
	* gcc.dg/c99-tgmath-3.c: New.
	* gcc.dg/c99-tgmath-4.c: New.

From-SVN: r126613
2007-07-13 06:12:51 +00:00
Kaz Kojima 192c543cd4 linux-unwind.h (sh_fallback_frame_state): Use correct index when setting register save state for xd registers.
* config/sh/linux-unwind.h (sh_fallback_frame_state): Use
	correct index when setting register save state for xd
	registers.

From-SVN: r126612
2007-07-13 05:57:26 +00:00
Kaz Kojima e27a1019c5 sh.c (mark_use): Remove.
* config/sh/sh.c (mark_use): Remove.

From-SVN: r126611
2007-07-13 05:49:33 +00:00
GCC Administrator cd7b7317eb Daily bump.
From-SVN: r126609
2007-07-13 00:16:57 +00:00
Manuel López-Ibáñez ad0637fdfe re PR testsuite/25241 ([C++] DejaGNU does not distinguish between errors and warnings)
2007-07-12  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
	    Janis Johnson  <janis187@us.ibm.com>

	PR testsuite/25241
gcc/testsuite/
	* gcc.test-framework/dg-error-exp-F.c: New test.
	* gcc.test-framework/dg-warning-exp-F.c: New test.
	* lib/gcc.exp: Enable warning and error prefixes.
	* lib/gcc-dg.exp (dg-warning): Wrap original dg-warning.
	(dg-error): Wrap original dg-error.
	* gcc.target/powerpc/altivec-types-1.c: Remove explicit error/warning
	markers from dg-error/dg-warning directives.
	* gcc.dg/20040322-1.c: Likewise.
	* gcc.dg/Wchar-subscripts-1.c: Likewise.
	* gcc.dg/Wdeclaration-after-statement-1.c: Likewise.
	* gcc.dg/Wdeclaration-after-statement-2.c: Likewise.
	* gcc.dg/Werror-1.c: Likewise.
	* gcc.dg/Werror-10.c: Likewise.
	* gcc.dg/Werror-11.c: Likewise.
	* gcc.dg/Werror-2.c: Likewise.
	* gcc.dg/Werror-3.c: Likewise.
	* gcc.dg/Werror-4.c: Likewise.
	* gcc.dg/Werror-5.c: Likewise.
	* gcc.dg/Werror-6.c: Likewise.
	* gcc.dg/Werror-7.c: Likewise.
	* gcc.dg/Werror-8.c: Likewise.
	* gcc.dg/Werror-9.c: Likewise.
	* gcc.dg/Werror-implicit-function-declaration.c: Likewise.
	* gcc.dg/Wimplicit-function-declaration-c89-pedantic.c: Likewise.
	* gcc.dg/Wimplicit-function-declaration-c89.c: Likewise.
	* gcc.dg/Wimplicit-function-declaration-c99-pedantic.c: Likewise.
	* gcc.dg/Wimplicit-function-declaration-c99.c: Likewise.
	* gcc.dg/Wint-to-pointer-cast-1.c: Likewise.
	* gcc.dg/Wint-to-pointer-cast-2.c: Likewise.
	* gcc.dg/Wint-to-pointer-cast-3.c: Likewise.
	* gcc.dg/Wnested-externs-1.c: Likewise.
	* gcc.dg/Wpointer-to-int-cast-1.c: Likewise.
	* gcc.dg/Wpointer-to-int-cast-2.c: Likewise.
	* gcc.dg/Wpointer-to-int-cast-3.c: Likewise.
	* gcc.dg/Wshadow-3.c: Likewise.
	* gcc.dg/Wtraditional-conversion-2.c: Likewise.
	* gcc.dg/Wwrite-strings-1.c: Likewise.
	* gcc.dg/anon-struct-5.c: Likewise.
	* gcc.dg/anon-struct-6.c: Likewise.
	* gcc.dg/anon-struct-7.c: Likewise.
	* gcc.dg/anon-struct-8.c: Likewise.
	* gcc.dg/array-8.c: Likewise.
	* gcc.dg/array-quals-2.c: Likewise.
	* gcc.dg/asm-qual-1.c: Likewise.
	* gcc.dg/asm-wide-1.c: Likewise.
	* gcc.dg/assign-warn-1.c: Likewise.
	* gcc.dg/assign-warn-2.c: Likewise.
	* gcc.dg/bitfld-10.c: Likewise.
	* gcc.dg/bitfld-11.c: Likewise.
	* gcc.dg/bitfld-12.c: Likewise.
	* gcc.dg/bitfld-13.c: Likewise.
	* gcc.dg/bitfld-14.c: Likewise.
	* gcc.dg/builtin-choose-expr-2.c: Likewise.
	* gcc.dg/builtins-30.c: Likewise.
	* gcc.dg/c90-const-expr-5.c: Likewise.
	* gcc.dg/c90-typespec-1.c: Likewise.
	* gcc.dg/c99-const-expr-5.c: Likewise.
	* gcc.dg/c99-flex-array-5.c: Likewise.
	* gcc.dg/c99-fordecl-3.c: Likewise.
	* gcc.dg/c99-tag-3.c: Likewise.
	* gcc.dg/c99-typespec-1.c: Likewise.
	* gcc.dg/c99-vla-jump-1.c: Likewise.
	* gcc.dg/c99-vla-jump-2.c: Likewise.
	* gcc.dg/c99-vla-jump-3.c: Likewise.
	* gcc.dg/c99-vla-jump-4.c: Likewise.
	* gcc.dg/c99-vla-jump-5.c: Likewise.
	* gcc.dg/cast-1.c: Likewise.
	* gcc.dg/cast-2.c: Likewise.
	* gcc.dg/cast-3.c: Likewise.
	* gcc.dg/cast-4.c: Likewise.
	* gcc.dg/cast-pretty-print-1.c: Likewise.
	* gcc.dg/comp-goto-2.c: Likewise.
	* gcc.dg/comp-goto-3.c: Likewise.
	* gcc.dg/cpp/error-1.c: Likewise.
	* gcc.dg/cpp/if-paren.c: Likewise.
	* gcc.dg/decl-7.c: Likewise.
	* gcc.dg/decl-8.c: Likewise.
	* gcc.dg/decl-nospec-1.c: Likewise.
	* gcc.dg/decl-nospec-2.c: Likewise.
	* gcc.dg/decl-nospec-3.c: Likewise.
	* gcc.dg/declspec-10.c: Likewise.
	* gcc.dg/declspec-11.c: Likewise.
	* gcc.dg/declspec-12.c: Likewise.
	* gcc.dg/declspec-13.c: Likewise.
	* gcc.dg/declspec-14.c: Likewise.
	* gcc.dg/declspec-15.c: Likewise.
	* gcc.dg/declspec-16.c: Likewise.
	* gcc.dg/declspec-17.c: Likewise.
	* gcc.dg/declspec-4.c: Likewise.
	* gcc.dg/declspec-5.c: Likewise.
	* gcc.dg/declspec-6.c: Likewise.
	* gcc.dg/declspec-7.c: Likewise.
	* gcc.dg/declspec-8.c: Likewise.
	* gcc.dg/declspec-9.c: Likewise.
	* gcc.dg/dfp/Wtraditional-conversion-2.c: Likewise.
	* gcc.dg/dfp/constants-c99.c: Likewise.
	* gcc.dg/dfp/keywords-c89.c: Likewise.
	* gcc.dg/dfp/keywords-c99.c: Likewise.
	* gcc.dg/dfp/keywords-reserved.c: Likewise.
	* gcc.dg/dfp/typespec.c: Likewise.
	* gcc.dg/dremf-type-compat-2.c: Likewise.
	* gcc.dg/dremf-type-compat-3.c: Likewise.
	* gcc.dg/dremf-type-compat-4.c: Likewise.
	* gcc.dg/empty-source-2.c: Likewise.
	* gcc.dg/empty-source-3.c: Likewise.
	* gcc.dg/enum3.c: Likewise.
	* gcc.dg/extra-semi-2.c: Likewise.
	* gcc.dg/extra-semi-3.c: Likewise.
	* gcc.dg/float-range-1.c: Likewise.
	* gcc.dg/float-range-2.c: Likewise.
	* gcc.dg/float-range-3.c: Likewise.
	* gcc.dg/float-range-5.c: Likewise.
	* gcc.dg/format/asm_fprintf-2.c: Likewise.
	* gcc.dg/format/asm_fprintf-3.c: Likewise.
	* gcc.dg/format/asm_fprintf-4.c: Likewise.
	* gcc.dg/format/asm_fprintf-5.c: Likewise.
	* gcc.dg/format/cast-1.c: Likewise.
	* gcc.dg/format/gcc_diag-3.c: Likewise.
	* gcc.dg/format/gcc_diag-4.c: Likewise.
	* gcc.dg/format/gcc_diag-6.c: Likewise.
	* gcc.dg/format/gcc_diag-8.c: Likewise.
	* gcc.dg/format/gcc_diag-9.c: Likewise.
	* gcc.dg/format/nul-2.c: Likewise.
	* gcc.dg/format/opt-1.c: Likewise.
	* gcc.dg/format/opt-2.c: Likewise.
	* gcc.dg/format/opt-3.c: Likewise.
	* gcc.dg/format/opt-4.c: Likewise.
	* gcc.dg/format/opt-5.c: Likewise.
	* gcc.dg/format/opt-6.c: Likewise.
	* gcc.dg/framework-2.c: Likewise.
	* gcc.dg/func-args-1.c: Likewise.
	* gcc.dg/func-outside-1.c: Likewise.
	* gcc.dg/func-outside-2.c: Likewise.
	* gcc.dg/gnu-cond-expr-2.c: Likewise.
	* gcc.dg/gnu-cond-expr-3.c: Likewise.
	* gcc.dg/if-empty-1.c: Likewise.
	* gcc.dg/init-bad-1.c: Likewise.
	* gcc.dg/init-bad-2.c: Likewise.
	* gcc.dg/init-bad-3.c: Likewise.
	* gcc.dg/init-desig-obs-2.c: Likewise.
	* gcc.dg/init-desig-obs-3.c: Likewise.
	* gcc.dg/init-empty-2.c: Likewise.
	* gcc.dg/init-empty-3.c: Likewise.
	* gcc.dg/inline-11.c: Likewise.
	* gcc.dg/inline-12.c: Likewise.
	* gcc.dg/inline-8.c: Likewise.
	* gcc.dg/inline-9.c: Likewise.
	* gcc.dg/inline3.c: Likewise.
	* gcc.dg/label-decl-1.c: Likewise.
	* gcc.dg/label-decl-2.c: Likewise.
	* gcc.dg/label-decl-3.c: Likewise.
	* gcc.dg/label-decl-4.c: Likewise.
	* gcc.dg/long-long-typespec-1.c: Likewise.
	* gcc.dg/lvalue-2.c: Likewise.
	* gcc.dg/lvalue-3.c: Likewise.
	* gcc.dg/nested-func-3.c: Likewise.
	* gcc.dg/nested-redef-1.c: Likewise.
	* gcc.dg/noreturn-4.c: Likewise.
	* gcc.dg/old-style-prom-2.c: Likewise.
	* gcc.dg/old-style-prom-3.c: Likewise.
	* gcc.dg/old-style-then-proto-1.c: Likewise.
	* gcc.dg/overflow-warn-1.c: Likewise.
	* gcc.dg/overflow-warn-2.c: Likewise.
	* gcc.dg/overflow-warn-3.c: Likewise.
	* gcc.dg/overflow-warn-4.c: Likewise.
	* gcc.dg/overflow-warn-6.c: Likewise.
	* gcc.dg/parm-forwdecl-2.c: Likewise.
	* gcc.dg/parm-forwdecl-3.c: Likewise.
	* gcc.dg/parm-impl-decl-1.c: Likewise.
	* gcc.dg/parm-impl-decl-2.c: Likewise.
	* gcc.dg/parm-incomplete-1.c: Likewise.
	* gcc.dg/parm-mismatch-1.c: Likewise.
	* gcc.dg/pointer-arith-1.c: Likewise.
	* gcc.dg/pointer-arith-2.c: Likewise.
	* gcc.dg/pointer-arith-3.c: Likewise.
	* gcc.dg/pointer-arith-4.c: Likewise.
	* gcc.dg/pointer-arith-6.c: Likewise.
	* gcc.dg/pointer-arith-7.c: Likewise.
	* gcc.dg/pointer-arith-8.c: Likewise.
	* gcc.dg/pr13804-1.c: Likewise.
	* gcc.dg/pr15698-1.c: Likewise.
	* gcc.dg/pr15698-2.c: Likewise.
	* gcc.dg/pr15698-3.c: Likewise.
	* gcc.dg/pr15698-4.c: Likewise.
	* gcc.dg/pr15698-5.c: Likewise.
	* gcc.dg/pr15698-6.c: Likewise.
	* gcc.dg/pr15698-7.c: Likewise.
	* gcc.dg/pr15698-8.c: Likewise.
	* gcc.dg/pr17188-1.c: Likewise.
	* gcc.dg/pr17301-1.c: Likewise.
	* gcc.dg/pr17301-2.c: Likewise.
	* gcc.dg/pr17730-1.c: Likewise.
	* gcc.dg/pr20368-1.c: Likewise.
	* gcc.dg/pr20368-2.c: Likewise.
	* gcc.dg/pr20368-3.c: Likewise.
	* gcc.dg/pr22308-1.c: Likewise.
	* gcc.dg/qual-component-1.c: Likewise.
	* gcc.dg/redecl-1.c: Likewise.
	* gcc.dg/redecl-11.c: Likewise.
	* gcc.dg/redecl-12.c: Likewise.
	* gcc.dg/redecl-13.c: Likewise.
	* gcc.dg/redecl-14.c: Likewise.
	* gcc.dg/redecl-15.c: Likewise.
	* gcc.dg/register-var-1.c: Likewise.
	* gcc.dg/register-var-2.c: Likewise.
	* gcc.dg/stmt-expr-2.c: Likewise.
	* gcc.dg/stmt-expr-3.c: Likewise.
	* gcc.dg/stmt-expr-label-1.c: Likewise.
	* gcc.dg/stmt-expr-label-2.c: Likewise.
	* gcc.dg/stmt-expr-label-3.c: Likewise.
	* gcc.dg/struct-empty-2.c: Likewise.
	* gcc.dg/struct-empty-3.c: Likewise.
	* gcc.dg/struct-parse-1.c: Likewise.
	* gcc.dg/struct-semi-1.c: Likewise.
	* gcc.dg/struct-semi-2.c: Likewise.
	* gcc.dg/struct-semi-3.c: Likewise.
	* gcc.dg/switch-5.c: Likewise.
	* gcc.dg/switch-6.c: Likewise.
	* gcc.dg/switch-7.c: Likewise.
	* gcc.dg/tls/diag-5.c: Likewise.
	* gcc.dg/transparent-union-1.c: Likewise.
	* gcc.dg/transparent-union-3.c: Likewise.
	* gcc.dg/typespec-1.c: Likewise.
	* gcc.dg/vla-init-2.c: Likewise.
	* gcc.dg/vla-init-3.c: Likewise.
	* gcc.dg/vla-init-4.c: Likewise.
	* gcc.dg/vla-init-5.c: Likewise.
	* gcc.dg/void-cast-2.c: Likewise.
	* gcc.dg/wvla-3.c: Likewise.
	* gcc.dg/wvla-7.c: Likewise.
	* gcc.target/i386/991209-1.c: Likewise.
	* gcc.target/ia64/fpreg-1.c: Likewise.
	* gcc.target/m68k/interrupt_thread-2.c: Likewise.
	* gcc.target/m68k/interrupt_thread-3.c: Likewise.

From-SVN: r126606
2007-07-12 22:57:32 +00:00
Daniel Franke f8faa85e29 re PR fortran/31639 ([4.1/4.2/4.3] ICE in gfc_conv_constant, at fortran/trans-const.c:348 with len)
gcc/fortran:
2007-07-12  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/31639
	* decl.c (gfc_match_suffix): Removed surplus general error that hides
	a more specific message.
	* resolve.c (resolve_fl_variable): Reject illegal initializiers only
	if not already done.
	(resolve_fl_procedure): Added check for initializers of functions.

gcc/testsuite:
2007-07-12  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/31639
	* gfortran.dg/func_decl_4.f90: New test.

From-SVN: r126605
2007-07-12 18:15:11 -04:00
Paul Brook 19e723f40b arm.c (thumb1_compute_save_reg_mask): Make sure scratch reg does not overlap return value.
2007-07-12  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config/arm/arm.c (thumb1_compute_save_reg_mask): Make sure scratch
	reg does not overlap return value.

From-SVN: r126604
2007-07-12 21:28:27 +00:00
Kazu Hirata 2fe5bb9b5e pt.c (template_parms_variadic_p): Remove.
* pt.c (template_parms_variadic_p): Remove.
	* cp-tree.h: Remove the prototype for template_parms_variadic_p.

From-SVN: r126603
2007-07-12 21:08:34 +00:00
Daniel Franke 7026332117 re PR fortran/32704 (-static-libgfortran is undocumented)
2007-07-12  Daniel Franke  <franke.daniel@gmail.com>

	PR fortran/32704
	* invoke.texi (-static-libgfortran): Document new option.

From-SVN: r126601
2007-07-12 16:28:57 -04:00
Paul Thomas 5fb70d2ea4 re PR fortran/32634 (renamed, use associated generic interface rejected)
2007-07-12  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/32634
	PR fortran/32727
	* module.c (write_generic): Restore patch of 2007-07-10 and use
	symbol name if there are no use names. 

2007-07-12  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/32727
	* gfortran.dg/interface_17.f90: New test.

From-SVN: r126600
2007-07-12 20:04:59 +00:00
Christopher D. Rickett aa5e22f000 re PR fortran/32599 ([ISO C Binding] Accepts character with len /= 1)
2007-07-12  Christopher D. Rickett  <crickett@lanl.gov>

	PR fortran/32599
	* decl.c (verify_c_interop_param): Require character string dummy
	args to BIND(C) procedures to have length 1.
	* resolve.c (resolve_fl_procedure): Modify parameter checking for
	BIND(C) procedures.

	PR fortran/32601
	* resolve.c (gfc_iso_c_func_interface): Verify that a valid
	expression is given as an argument to C_LOC and C_ASSOCIATED.
	* trans-io.c (transfer_expr): Add argument for code block.  Add
	standards check to determine if an error message should be
	reported for printing C_PTR or C_FUNPTR.
	(transfer_array_component): Update arguments to transfer_expr.
	(gfc_trans_transfer): Ditto.

	* symbol.c (gen_cptr_param): Fix whitespace.


2007-07-12  Christopher D. Rickett  <crickett@lanl.gov>

	PR fortran/32599
	* gfortran.dg/32599.f03: New test case.

	PR fortran/32601
	* gfortran.dg/32601.f03: New test case.
	* gfortran.dg/32601_1.f03: Ditto.
	* gfortran.dg/c_ptr_tests_9.f03: Updated dg-options.
	* gfortran.dg/c_ptr_tests_10.f03: Ditto.

From-SVN: r126598
2007-07-12 21:52:03 +02:00
Steve Ellcey 26a9718401 * gcc.c-torture/execute/align-3.c: Remove function addr check.
From-SVN: r126597
2007-07-12 19:06:26 +00:00
Daniel Berlin c83c48792f tree-ssa-pre.c (get_expression_vuses): Move out side-effect.
2007-07-12  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-pre.c (get_expression_vuses): Move out side-effect.
	(set_expression_vuses): Ditto.
	(init_pre): Initialize expression_vuses.

From-SVN: r126595
2007-07-12 18:51:35 +00:00
Zdenek Dvorak 019b9fdbb3 sse.md (storentdf, storentsf): New.
* config/i386/sse.md (storentdf, storentsf): New.

From-SVN: r126594
2007-07-12 18:46:46 +00:00
Paolo Carlini 9012dfca77 2007-07-12 Paolo Carlini <pcarlini@suse.de>
* Tweak ovelong lines in last ChangeLog entry.

From-SVN: r126592
2007-07-12 14:45:25 +00:00
Dorit Nuzman 5b900a4c0e re PR target/25413 (wrong alignment or incorrect address computation in vectorized code on Pentium 4 SSE)
2007-07-12  Dorit Nuzman  <dorit@il.ibm.com>
            Devang Patel  <dpatel@apple.com>

        PR tree-optimization/25413
        * targhooks.c (default_builtin_vector_alignment_reachable): New.
        * targhooks.h (default_builtin_vector_alignment_reachable): New.
        * tree.h (contains_packed_reference): New.
        * expr.c (contains_packed_reference): New.
        * tree-vect-analyze.c (vector_alignment_reachable_p): New.
        (vect_enhance_data_refs_alignment): Call
        vector_alignment_reachable_p.
        * target.h (vector_alignment_reachable): New builtin.
        * target-def.h (TARGET_VECTOR_ALIGNMENT_REACHABLE): New.
        * config/rs6000/rs6000.c (rs6000_vector_alignment_reachable): New.
        (TARGET_VECTOR_ALIGNMENT_REACHABLE): Define.


Co-Authored-By: Devang Patel <dpatel@apple.com>

From-SVN: r126591
2007-07-12 14:42:08 +00:00
Douglas Gregor 2df6377e6e all_bound.cc: Disambiguate uses of TR1/C++0x facilities.
2007-07-12  Douglas Gregor  <doug.gregor@gmail.com>

	* testsuite/tr1/3_function_objects/bind/all_bound.cc: Disambiguate uses of
	TR1/C++0x facilities.
	* testsuite/tr1/3_function_objects/bind/nested.cc: Ditto.
	* testsuite/tr1/3_function_objects/bind/placeholders.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_multimap/requirements/explicit_instantiation.cc: 
	Ditto. 
	* testsuite/tr1/6_containers/unordered_multimap/swap/1.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_multimap/swap/2.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_set/requirements/explicit_instantiation.cc: 
	Ditto.
	* testsuite/tr1/6_containers/unordered_set/swap/1.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_set/swap/2.cc: Ditto.
	* testsuite/tr1/6_containers/utility/pair.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_map/requirements/explicit_instantiation.cc: 
	Ditto. 
	* testsuite/tr1/6_containers/unordered_map/24064.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_map/swap/1.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_map/swap/2.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/cons/big_tuples.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/cons/constructor.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/cons/assignment.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/tuple_element.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/tuple_size.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/comparison_operators/comparisons.cc:
	Ditto. 
	* testsuite/tr1/6_containers/tuple/element_access/get.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/creation_functions/23978.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/creation_functions/tie.cc: Ditto.
	* testsuite/tr1/6_containers/tuple/creation_functions/make_tuple.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_multiset/requirements/explicit_instantiation.cc: 
	Ditto.
	* testsuite/tr1/6_containers/unordered_multiset/swap/1.cc: Ditto.
	* testsuite/tr1/6_containers/unordered_multiset/swap/2.cc: Ditto.

From-SVN: r126590
2007-07-12 14:33:38 +00:00
Nathan Froyd d566f2e600 target-support.exp (check_ultrasparc_hw_available): New function.
* lib/target-support.exp (check_ultrasparc_hw_available):
	New function.
	(is-effective-target): Check $arg for ultrasparc_hw.
	(is-effective-target-keyword): Likewise.
	* gcc.dg/vect/vect.exp: Call check_effective_target_ultrasparc_hw
	when determining what to do on sparc platforms.
	* gcc.dg/20001013-1.c: Check for an ultrasparc_hw target.
	* gcc.dg/20001101-1.c: Likewise.
	* gcc.dg/20001101-2.c: Likewise.
	* gcc.dg/ultrasp9.c: Likewise.
	* gcc.dg/ultrasp10.c: Likewise.
	* gcc.target/sparc/pdist-3.c: Likewise.

From-SVN: r126589
2007-07-12 14:29:23 +00:00
Geoffrey Keating d872ada017 builtins.c (get_pointer_alignment): Honor DECL_ALIGN on a FUNCTION_DECL.
* builtins.c (get_pointer_alignment): Honor DECL_ALIGN on a
	FUNCTION_DECL.
	* tree.c (build_decl_stat): Move code from here...
	(make_node_stat): ... to here.  Don't uselessly clear DECL_USER_ALIGN.
	(expr_align): Honor DECL_ALIGN on a FUNCTION_DECL.  Add comment
	about using DECL_ALIGN of LABEL_DECL and CONST_DECL.
	* tree.h (DECL_USER_ALIGN): Fix misplaced comment.
	* varasm.c (assemble_start_function): Use DECL_ALIGN instead of
	FUNCTION_BOUNDARY.

From-SVN: r126588
2007-07-12 13:43:33 +00:00
Kai Tietz 0f3943ec66 splay-tree.h (libi_uhostptr_t, [...]): Adjust types work-a-round whitespace problem in gcc gengtype.
* splay-tree.h (libi_uhostptr_t, libi_shostptr_t): Adjust types
	work-a-round whitespace problem in gcc gengtype.

From-SVN: r126587
2007-07-12 13:08:49 +00:00
Daniel Jacobowitz 517898166d * gcc.target/mips/save-restore-5.c: Add -mno-abicalls.
From-SVN: r126586
2007-07-12 12:32:21 +00:00
Dorit Nuzman e95b59d2ab target.h (builtin_vectorization_cost): Add new target builtin.
2007-07-12  Dorit Nuzman  <dorit@il.ibm.com>

        * target.h (builtin_vectorization_cost): Add new target builtin.
        * target-def.h (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): New.
        * tree-vectorizer.h (TARG_SCALAR_STMT_COST): New.
        (TARG_SCALAR_LOAD_COST, TARG_SCALAR_STORE_COST): New.
        * tree-vect-analyze.c (vect_analyze_slp_instance): Initisliaze
        uninitialized variables.
        * tree-vect-transform.c (cost_for_stmt): New function.
        (vect_estimate_min_profitable_iters): Call cost_for_stmt instead of
        using cost 1 for all scalar stmts. Be less conservative when
        estimating the number of prologue/epulogue iterations. Call
        targetm.vectorize.builtin_vectorization_cost. Return
        min_profitable_iters-1.
        (vect_model_reduction_cost): Use TARG_SCALAR_TO_VEC_COST for
        initialization cost instead of TARG_VEC_STMT_COST. Use
        TARG_VEC_TO_SCALAR_COST instead of TARG_VEC_STMT_COST for reduction
        epilogue code. Fix epilogue cost computation.
        * config/spu/spu.c (spu_builtin_vectorization_cost): New.
        (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Implement.
        * config/spu/spu.h (TARG_COND_BRANCH_COST, TARG_SCALAR_STMT_COST):
        (TARG_SCALAR_LOAD_COST, TARG_SCALAR_STORE_COST, TARG_VEC_STMT_COST):
        (TARG_VEC_TO_SCALAR_COST, TARG_SCALAR_TO_VEC, TARG_VEC_LOAD_COST):
        (TARG_VEC_UNALIGNED_LOAD_COST, TARG_VEC_STORE_COST): Define.

2007-07-12  Dorit Nuzman  <dorit@il.ibm.com>

        * gcc.dg/vect/costmodel/ppc/costmodel-vect-reduc-1char.c: Loops now
        get vectorized.
        * gcc.dg/vect/costmodel/i386/costmodel-vect-reduc-1char.c: Loops
        now get vectorized.
        * gcc.dg/vect/costmodel/spu/spu-costmodel-vect.exp: New.
        * gcc.dg/vect/costmodel/spu/costmodel-fast-math-vect-pr29925.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-31a.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-31b.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-31c.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-31d.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-iv-9.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-33.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-76a.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-76b.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-76c.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-68a.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-68b.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-68c.c: New.
        * gcc.dg/vect/costmodel/spu/costmodel-vect-68d.c: New.
        * lib/target-supports.exp (check_effective_target_vect_int_mul):
        Add spu.

From-SVN: r126584
2007-07-12 12:17:03 +00:00
Jakub Jelinek e1c8221962 re PR fortran/32550 (openmp: COPYPRIVATE of pointer variables fails)
PR fortran/32550
	* trans.h (GFC_POINTER_TYPE_P): Define.
	* trans-types.c (gfc_sym_type): Set it for types on attr->sym.pointer.
	* trans-openmp.c (gfc_omp_privatize_by_reference): Return false
	if GFC_POINTER_TYPE_P is set on the type.

	* testsuite/libgomp.fortran/pr32550.f90: New test.
	* testsuite/libgomp.fortran/crayptr2.f90: New test.

From-SVN: r126583
2007-07-12 14:16:54 +02:00
Jakub Jelinek 99c1f1ceed re PR c++/30854 (Wrong number of arguments printed for constructor)
PR c++/30854
	* error.c (dump_expr) <case AGGR_INIT_EXPR>: Pass true as last
	argument to dump_aggr_init_expr_args instead of false.

	* g++.dg/parse/error30.C: New test.

From-SVN: r126582
2007-07-12 14:05:39 +02:00
Matthias Klose 3746d8b1fa MethodResult.h, [...]: Regenerate.
2007-07-12  Matthias Klose  <doko@ubuntu.com>

        * gnu/classpath/jdwp/util/MethodResult.h,
        gnu/classpath/jdwp/value/ObjectValue.h: Regenerate.

From-SVN: r126580
2007-07-12 11:40:27 +00:00
Matthias Klose d23e87a4c1 jazzlib, rmi: Remove empty directories.
2007-07-12  Matthias Klose  <doko@ubuntu.com>

        * lib/jazzlib, tools/gnu/classpath/tools/rmi: Remove empty directories.

From-SVN: r126579
2007-07-12 11:23:36 +00:00
Francois-Xavier Coudert 57200e086e re PR fortran/29804 (segfault with -fbounds-check on allocatable derived type components)
PR fortran/29804
	* gfortran.dg/alloc_comp_misc_1.f90: New test.

From-SVN: r126578
2007-07-12 10:58:49 +00:00
Richard Guenther 8f20c48505 gimplify.c (gimplify_conversion): Make sure that the result from maybe_fold_offset_to_reference is trivially...
2007-07-12  Richard Guenther  <rguenther@suse.de>

	* gimplify.c (gimplify_conversion): Make sure that the result
	from maybe_fold_offset_to_reference is trivially convertible
	to the desired type before doing the simplification.
	(gimplify_expr): Likewise.
	* fold-const.c (fold_binary): Use the correct types for
	building the simplified expression.

From-SVN: r126577
2007-07-12 10:27:51 +00:00
Zdenek Dvorak 44f51d597e re PR rtl-optimization/32729 (Loop unrolling not performed with large constant loop bound)
PR rtl-optimization/32729
	* cfghooks.c (can_duplicate_block_p): Do not forbid duplicating blocks
	that fallthru to exit.

From-SVN: r126576
2007-07-12 10:24:19 +00:00
Richard Guenther 553b66ad1d trans-intrinsic.c (gfc_conv_intrinsic_repeat): Convert arguments to gfc_charlen_type_node.
2007-07-12  Richard Guenther  <rguenther@suse.de>

	* trans-intrinsic.c (gfc_conv_intrinsic_repeat): Convert
	arguments to gfc_charlen_type_node.
	* trans-io.c (gfc_convert_array_to_string): Convert type
	size to gfc_array_index_type.

From-SVN: r126575
2007-07-12 09:30:27 +00:00
Richard Guenther 176be57bea expr.c (expand_java_return): RETURN_EXPR has void type.
2007-07-12  Richard Guenther  <rguenther@suse.de>

	* expr.c (expand_java_return): RETURN_EXPR has void type.
	(build_jni_stub): Likewise.  Use a comparison against zero
	for null-pointer test in COND_EXPR.
	(build_field_ref): Build POINTER_PLUS_EXPR with correct
	type.  Convert result instead.
	(build_invokevirtual): Likewise.

From-SVN: r126574
2007-07-12 09:29:26 +00:00
Kai Tietz eb8f7cafe7 splay-tree.h (libi_uhostptr_t, [...]): New types, needed for WIN64 when a long is not wide enough for a pointer.
* splay-tree.h (libi_uhostptr_t, libi_shostptr_t): New types,
  needed for WIN64 when a long is not wide enough for a pointer.
  (splay_tree_key, splay_tree_value): Use the new types.

From-SVN: r126573
2007-07-12 07:22:06 +00:00
Daniel Franke 56b6a5fe69 re PR fortran/32634 (renamed, use associated generic interface rejected)
2007-07-12  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/32634
        PR fortran/32727
        * module.c: Reverted Paul's patch from 2007-07-10.

From-SVN: r126572
2007-07-12 02:31:12 -04:00
Kaz Kojima 45312d9d96 sh.md (symGOTOFF2reg): Add missing parenthesis.
* config/sh/sh.md (symGOTOFF2reg): Add missing parenthesis.
	(symDTPOFF2reg): Likewise.

From-SVN: r126571
2007-07-12 03:56:01 +00:00
Alexandre Oliva 0f3d38b644 maint-tool (deps): Output stamp-h instead of config.h.
* maint-tool (deps): Output stamp-h instead of config.h.
* Makefile.in: Rebuild deps.
(maintainer-clean-subdir): Depend on stamp-h rather than config.h.

From-SVN: r126569
2007-07-12 02:23:52 +00:00
Daniel Berlin c5830edf85 re PR tree-optimization/32663 (revision 126369 went into an infinite loop)
2007-07-11  Daniel Berlin  <dberlin@dberlin.org>

	PR tree-optimization/32663
	
	* tree.h (VALUE_HANDLE_VUSES): Remove.
	(struct tree_value_handle): Remove vuses.

	* tree-vn.c (create_value_handle_for_expr): Don't set
	VALUE_HANDLE_VUSES. 

	* tree-ssa-pre.c (expression_vuses): New.
	(alloc_expression_id): Set up expression_vuses.
	(get_expression_vuses): New.
	(set_expression_vuses): Ditto.
	(clear_expression_ids): Modify for expression_vuses.
	(phi_translate_1): Ditto.
	(phi_translate_set): Ditto.
	(value_dies_in_block_x): Ditto
	(valid_in_sets): Ditto.
	(add_to_sets): Ditto.
	(find_existing_value_expr): Ditto.
	(create_value_handle_for_expr): Ditto.
	(make_values_for_stmt): Ditto.
	(vuse_equiv): Remove.

From-SVN: r126568
2007-07-12 02:20:04 +00:00
David Daney 433e6a8cf2 ffi.c: Don't include sys/cachectl.h.
* src/mips/ffi.c: Don't include sys/cachectl.h.
	(ffi_prep_closure_loc): Use __builtin___clear_cache() instead of
	cacheflush().

From-SVN: r126567
2007-07-12 02:19:41 +00:00
Alexandre Oliva 66a82a79ea * Makefile.in (mostlyclean): Remove object files.
From-SVN: r126566
2007-07-12 01:10:51 +00:00
GCC Administrator a314c120d2 Daily bump.
From-SVN: r126564
2007-07-12 00:16:55 +00:00