Commit Graph

76995 Commits

Author SHA1 Message Date
Jakub Jelinek
1c2fc017ed builtins.c (expand_builtin, [...]): Handle BUILT_IN_STRNCAT_CHK.
* builtins.c (expand_builtin, maybe_emit_chk_warning): Handle
	BUILT_IN_STRNCAT_CHK.

	* gcc.dg/builtin-strncat-chk-1.c: New test.

From-SVN: r117980
2006-10-23 21:18:42 +02:00
Jan Hubicka
eaf1912236 builtins.c (expand_builtin_memmove): Remove ORIG_EXP argument; don't do conversion from memmove to memcpy here.
* builtins.c (expand_builtin_memmove): Remove ORIG_EXP argument;
	don't do conversion from memmove to memcpy here.
	(expand_builtin_bcopy, expand_builtin): Update call of
	expand_builtin_memmove.
	(fold_builtin_memory_op): Do folding of memmove to memcpy here.

	* gcc.dg/memmove-1.c: New test.

From-SVN: r117979
2006-10-23 18:50:40 +00:00
Paul Brook
353293e7f7 stor-layout.c (start_record_layout): maximum_field_alignment overrides STRUCTURE_SIZE_BOUNDARY.
2006-10-23  Paul Brook  <paul@codesourcery.com>

	gcc/
	* stor-layout.c (start_record_layout): maximum_field_alignment
	overrides STRUCTURE_SIZE_BOUNDARY.

	gcc/testsuite/
	* gcc.dg/pragma-pack-5.c: New test.

From-SVN: r117977
2006-10-23 16:36:51 +00:00
Ulrich Weigand
6915c1cea2 predicates.md ("bras_sym_operand"): Do not accept nonlocal function symbols if flag_pic.
ChangeLog:

	* config/s390/predicates.md ("bras_sym_operand"): Do not accept
	nonlocal function symbols if flag_pic.

testsuite/ChangeLog:

	* g++.dg/other/s390-1.C: New testcase.

From-SVN: r117973
2006-10-23 13:38:50 +00:00
Richard Guenther
b0cd88d216 [multiple changes]
2006-10-24  Richard Guenther  <rguenther@suse.de>

	PR middle-end/27132
	PR middle-end/23295
	* builtins.c (fold_binary): Remove checks for flag_wrapv
	and flag_trapv where negate_expr_p covers these cases.

	* gcc.dg/pr27132.c: New testcase.
	* gcc.dg/pr23295.c: Likewise.
	* gcc.dg/tree-ssa/pr23294.c: Adjust patterns.
	* g++.dg/tree-ssa/pr19807.C: Likewise.

2006-10-23  Richard Guenther  <rguenther@suse.de>

	PR middle-end/29548
	* fold-const.c (fold_plusminus_mult_expr): Check exact power
	of two on the absolute value.
	(fold_binary): Fold x * -C to -x * C if x is easily negatable
	and negating -C does not overflow.

From-SVN: r117969
2006-10-23 07:19:34 +00:00
Richard Guenther
4f76e46b18 re PR middle-end/21032 (With -frounding-math, incorrectly reorders unary minus)
2006-10-23  Richard Guenther  <rguenther@suse.de>

	PR middle-end/21032
	* convert.c (convert_to_real): Fold (float)-x to -(float)x
	only if not flag_rounding_math.

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

From-SVN: r117968
2006-10-23 07:15:45 +00:00
GCC Administrator
1b406eadf9 Daily bump.
From-SVN: r117966
2006-10-23 00:17:39 +00:00
Richard Sandiford
85144c5cdd re PR target/28232 (Wrong aligned load is generated with -m4a on sh-*)
PR target/28232
	* config/sh/sh.c (expand_block_move): Use a BLKmode rather than
	SImode memory reference for the source of a movua.
	* config/sh/sh.md (UNSPEC_MOVUA): New macro.
	(movua): Use an unspec instead of sign_extract.  Expect the source
	to have mode BLKmode.
	(extv, insv): Use a BLKmode rather than SImode memory reference
	for the source of a movua.


Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>

From-SVN: r117961
2006-10-23 00:14:39 +00:00
Jeff Law
279f3eb50b re PR tree-optimization/15911 (VRP/DOM does not like TRUTH_AND_EXPR)
2006-10-22  Jeff Law  <law@redhat.com>
	Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/15911
	* tree-vrp.c (extract_code_and_val_from_cond): New function.
	(register_edge_assert_for_1): Likewise.
	(register_edge_assert_for): Handle &&/&/||/| in conditionals.
	(find_conditional_asserts): Adjust for new function signature.
	(find_assert_locations): Likewise.

	* gcc.dg/tree-ssa/vrp30.c: New testcase.

Co-Authored-By: Richard Guenther <rguenther@suse.de>

From-SVN: r117960
2006-10-22 20:11:09 +00:00
H.J. Lu
c0546edb9d tmmintrin.h: Remove the duplicated content.
2006-10-22  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/tmmintrin.h: Remove the duplicated content.

From-SVN: r117959
2006-10-22 10:53:02 -07:00
H.J. Lu
b1875f5291 config.gcc (i[34567]86-*-*): Add tmmintrin.h to extra_headers.
2006-10-22  H.J. Lu  <hongjiu.lu@intel.com>

	* config.gcc (i[34567]86-*-*): Add tmmintrin.h to extra_headers.
	(x86_64-*-*): Likewise.

	* config/i386/i386.c (pta_flags): Add PTA_SSSE3.
	(override_options): Check SSSE3.
	(ix86_builtins): Add IX86_BUILTIN_PHADDW, IX86_BUILTIN_PHADDD,
	IX86_BUILTIN_PHADDSW, IX86_BUILTIN_PHSUBW, IX86_BUILTIN_PHSUBD,
	IX86_BUILTIN_PHSUBSW, IX86_BUILTIN_PMADDUBSW,
	IX86_BUILTIN_PMULHRSW, IX86_BUILTIN_PSHUFB,
	IX86_BUILTIN_PSIGNB, IX86_BUILTIN_PSIGNW, IX86_BUILTIN_PSIGND,
	IX86_BUILTIN_PALIGNR, IX86_BUILTIN_PABSB, IX86_BUILTIN_PABSW,
	IX86_BUILTIN_PABSD, IX86_BUILTIN_PHADDW128,
	IX86_BUILTIN_PHADDD128, IX86_BUILTIN_PHADDSW128,
	IX86_BUILTIN_PHSUBW128, IX86_BUILTIN_PHSUBD128,
	IX86_BUILTIN_PHSUBSW128, IX86_BUILTIN_PMADDUBSW128,
	IX86_BUILTIN_PMULHRSW128, IX86_BUILTIN_PSHUFB128,
	IX86_BUILTIN_PSIGNB128, IX86_BUILTIN_PSIGNW128,
	IX86_BUILTIN_PSIGND128, IX86_BUILTIN_PALIGNR128,
	IX86_BUILTIN_PABSB128, IX86_BUILTIN_PABSW128 and
	IX86_BUILTIN_PABSD128.
	(bdesc_2arg): Add SSSE3.
	(bdesc_1arg): Likewise.
	(ix86_init_mmx_sse_builtins): Support SSSE3.
	(ix86_expand_builtin): Likewise.
	* config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Likewise.

	* config/i386/i386.md (UNSPEC_PSHUFB): New.
	(UNSPEC_PSIGN): Likewise.
	(UNSPEC_PALIGNR): Likewise.
	Include mmx.md before sse.md.

	* config/i386/i386.opt: Add -mssse3.

	* config/i386/sse.md (ssse3_phaddwv8hi3): New pattern for SSSE3.
	(ssse3_phaddwv4hi3): Likewise.
	(ssse3_phadddv4si3): Likewise.
	(ssse3_phadddv2si3): Likewise.
	(ssse3_phaddswv8hi3): Likewise.
	(ssse3_phaddswv4hi3): Likewise.
	(ssse3_phsubwv8hi3): Likewise.
	(ssse3_phsubwv4hi3): Likewise.
	(ssse3_phsubdv4si3): Likewise.
	(ssse3_phsubdv2si3): Likewise.
	(ssse3_phsubswv8hi3): Likewise.
	(ssse3_phsubswv4hi3): Likewise.
	(ssse3_pmaddubswv8hi3): Likewise.
	(ssse3_pmaddubswv4hi3): Likewise.
	(ssse3_pmulhrswv8hi3): Likewise.
	(ssse3_pmulhrswv4hi3): Likewise.
	(ssse3_pshufbv16qi3): Likewise.
	(ssse3_pshufbv8qi3): Likewise.
	(ssse3_psign<mode>3): Likewise.
	(ssse3_psign<mode>3): Likewise.
	(ssse3_palignrti): Likewise.
	(ssse3_palignrdi): Likewise.
	(abs<mode>2): Likewise.
	(abs<mode>2): Likewise.

	* config/i386/tmmintrin.h: New file.

	* doc/extend.texi: Document SSSE3 built-in functions.

	* doc/invoke.texi: Document -mssse3/-mno-ssse3 switches.

From-SVN: r117958
2006-10-22 10:40:21 -07:00
Nathan Sidwell
6e4be1fa8c re PR libstdc++/20647 (Wrong typeid for incomplete types)
cp/
	PR c++/20647
	* rtti.c (tinfo_base_init): The type info string is always global.
testsuite/
	PR c++/20647
	* g++.dg/abi/rtti3.C: New.

From-SVN: r117957
2006-10-22 16:07:41 +00:00
Joseph Myers
59edb6b4b4 * cpplib.pot: Regenerate.
From-SVN: r117954
2006-10-22 13:40:31 +01:00
Joseph Myers
803b1dc23b * gcc.pot: Regenerate.
From-SVN: r117953
2006-10-22 13:39:40 +01:00
Ira Rosen
52fb985608 tree-vect-transform.c (vectorizable_load): Use the type of the return value of the mask_for_load builtin to create...
* tree-vect-transform.c (vectorizable_load): Use the type of the
        return value of the mask_for_load builtin to create realign_load
        stmt.

From-SVN: r117952
2006-10-22 10:45:36 +00:00
Richard Sandiford
7dc7d8a2e4 mips.c (mips_split_const): Don't accept bare PLUS expressions.
gcc/
	* config/mips/mips.c (mips_split_const): Don't accept bare PLUS
	expressions.

From-SVN: r117950
2006-10-22 09:28:01 +00:00
Francois-Xavier Coudert
5a0aad3165 re PR fortran/26025 (Optionally use BLAS for matmul)
PR fortran/26025

	* lang.opt: Add -fexternal-blas and -fblas-matmul-limit options.
	* options.c (gfc_init_options): Initialize new flags.
	(gfc_handle_option): Handle new flags.
	* gfortran.h (gfc_option): Add flag_external_blas and
	blas_matmul_limit flags.
	* trans-expr.c (gfc_conv_function_call): Use new argument
	append_args, appending it at the end of the argument list
	built for a function call.
	* trans-stmt.c (gfc_trans_call): Use NULL_TREE for the new
	append_args argument to gfc_trans_call.
	* trans.h (gfc_conv_function_call): Update prototype.
	* trans-decl.c (gfc_build_intrinsic_function_decls): Add
	prototypes for BLAS ?gemm routines.
	* trans-intrinsic.c (gfc_conv_intrinsic_funcall): Generate the
	extra arguments given to the library matmul function, and give
	them to gfc_conv_function_call.
	* invoke.texi: Add documentation for -fexternal-blas and
	-fblas-matmul-limit.

	* m4/matmul.m4: Add possible call to gemm routine.
	* generated/matmul_r8.c: Regenerate.
	* generated/matmul_r16.c: Regenerate.
	* generated/matmul_c8.c: Regenerate.
	* generated/matmul_i8.c: Regenerate.
	* generated/matmul_c16.c: Regenerate.
	* generated/matmul_r10.c: Regenerate.
	* generated/matmul_r4.c: Regenerate.
	* generated/matmul_c10.c: Regenerate.
	* generated/matmul_c4.c: Regenerate.
	* generated/matmul_i4.c: Regenerate.
	* generated/matmul_i16.c: Regenerate.

From-SVN: r117948
2006-10-22 07:41:48 +00:00
Daniel Berlin
d4f6a8099d Commit forgotten file
From-SVN: r117947
2006-10-22 01:25:17 +00:00
GCC Administrator
a1d914aa9f Daily bump.
From-SVN: r117945
2006-10-22 00:17:36 +00:00
Steven G. Kargl
4a8bce89d1 error.c: Add errno.h
2006-10-21  Steven G. Kargl  <kargl@gcc.gnu.org>

        * runtime/error.c: Add errno.h
        (generate_error): Set iostat to errno on OS error.
        * libgfortran.h: Set ERROR_OS to 5000

From-SVN: r117939
2006-10-21 22:38:56 +00:00
H.J. Lu
96208aed83 i386.md (UNSPEC_LDQQU): Renamed to ...
2006-10-21  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.md (UNSPEC_LDQQU): Renamed to ...
	(UNSPEC_LDDQU): This.
	* config/i386/sse.md (sse3_lddqu): Updated.

From-SVN: r117938
2006-10-21 13:43:32 -07:00
Uros Bizjak
495ed96c2a re PR middle-end/28252 (pow(x,1/3.0) should be converted to cbrt(x))
2006-10-21  Uros Bizjak  <uros@kss-loka.si>

        PR middle-end/28252
        * builtins.c (fold_builtin): Fold pow(x,1.0/3.0) as cbrt(x) if
        flag_unsafe_math_optimizations is set.

testsuite/ChangeLog:

        PR middle-end/28252
        * gcc.dg/builtins-8.c: Also check pow(x,1.0/3.0) to cbrt(x)
        transformation.

From-SVN: r117937
2006-10-21 22:05:35 +02:00
Richard Guenther
0bfa1541fa builtins.c (expand_builtin_int_roundingfn_2): New function.
2006-10-21  Richard Guenther  <rguenther@suse.de>

	* builtins.c (expand_builtin_int_roundingfn_2): New function.
	(expand_builtin): Use it to expand lrint instead of
	expand_builtin_mathfn.

From-SVN: r117936
2006-10-21 19:55:07 +00:00
Uros Bizjak
962ef7fea2 re PR rtl-optimization/19398 (secondary reloads don't consider "m" alternatives)
PR target/19398
        * config/i386/i386.md (fix_trunc?f?i_sse): Add peephole2
        patterns to use memory input operand in x87->mem->XMM
        reload sequences.  Skip transformation for TARGET_K8.

From-SVN: r117935
2006-10-21 21:27:02 +02:00
Uros Bizjak
509a77dc9c i386.md (extendsfdf2, [...]): Do not force operand1 to register if both operands are memory operands.
* config/i386/i386.md (extendsfdf2, extendsfxf2, extenddfxf2): Do not
        force operand1 to register if both operands are memory operands.
        (*extendsfdf2_mixed, *extendsfdf2_sse, *extendsfdf2_i387)
        (*extendsfxf2_i387, *extenddfxf2_i387): Do not disable pattern
        if both operands are memory operands.
        (truncdfsf2): Do not force operand1 to register if both operands
        are memory operands.

From-SVN: r117934
2006-10-21 17:49:41 +02:00
Kaveh R. Ghazi
70ec446fab configure.in: Require GMP-4.1+ and MPFR-2.2+.
* configure.in: Require GMP-4.1+ and MPFR-2.2+.  Don't check
	need_gmp anymore.
	* configure: Regenerate.

gcc:
	* Makefile.in (LIBS): Add $(GMPLIBS).
	* doc/install.texi: Update GMP and MPFR requirements.
	* doc/sourcebuild.texi (need_gmp): Delete.

gcc/fortran:
	* Make-lang.in (F95_LIBS): Delete.
	* f951$(exeext): Use $(LIBS) instead of $(F95_LIBS).
	* config-lang.in (need_gmp): Delete.

From-SVN: r117933
2006-10-21 13:58:13 +00:00
Richard Guenther
0778d4e84a re PR tree-optimization/3511 (Inlined strlen() could be smarter)
2006-10-21  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/3511
	* tree-ssa-pre.c (phi_translate): Fold CALL_EXPRs that
	got new invariant arguments during PHI translation.

	* gcc.dg/tree-ssa/ssa-pre-15.c: New testcase.

From-SVN: r117932
2006-10-21 13:23:41 +00:00
Richard Guenther
8a1eca0803 re PR middle-end/26898 (Fold does not fold signed + CST1 CMP signed + CST2)
2006-10-21  Richard Guenther  <rguenther@suse.de>

	PR middle-end/26898
	* fold-const.c (fold_comparison): Fold signed comparisons
	of the form X +- C1 CMP Y +- C2.

	* gcc.dg/torture/pr26898-1.c: New testcase.
	* gcc.dg/torture/pr26898-2.c: Likewise.

From-SVN: r117931
2006-10-21 13:21:06 +00:00
Richard Guenther
5a4171a01d re PR target/19116 (-funsafe-math-optimizations make nan compares equal to one another (-finite-math-only should be doing that))
2006-10-21  Richard Guenther  <rguenther@suse.de>

	PR target/19116
	* config/i386/i386.c (override_options): Do not set MASK_IEEE_FP
	if flag_unsafe_math_optimizations is specified.  We have
	flag_finite_math_only for that.
	* config/i386/i386.md (sqrtxf2): Do not require TARGET_IEEE_FP
	or flag_unsafe_math_optimizations.

From-SVN: r117930
2006-10-21 10:40:57 +00:00
Richard Guenther
120a56cb67 builtins.c (fold_builtin_classify): Fix typo.
2006-10-21  Richard Guenther  <rguenther@suse.de>

        * builtins.c (fold_builtin_classify): Fix typo.

From-SVN: r117929
2006-10-21 10:17:49 +00:00
Richard Guenther
bdbb046092 re PR middle-end/28796 (__builtin_nan() and __builtin_unordered() inconsistent)
2006-10-21  Richard Guenther  <rguenther@suse.de>

	PR middle-end/28796
	* simplify-rtx.c (simplify_const_relational_operation):
	Do not constant-fold ORDERED and UNORDERED for
	flag_unsafe_math_optimizations but only we do not need to
	honor NaNs for the given mode.

From-SVN: r117928
2006-10-21 10:13:13 +00:00
Richard Guenther
1faf92ae79 re PR target/29512 (compile time hog / deadloop.)
2006-10-21  Richard Guenther  <rguenther@suse.de>

	PR target/29512
	* config/i386/i386.c (classify_argument): Remove redundant
	walking of the BINFOs.
	(contains_128bit_aligned_vector_p): Likewise.

From-SVN: r117927
2006-10-21 10:05:21 +00:00
Mark Mitchell
1b0c64fdcd * crontab: Add 4.2 branch. Set trunk to 4.3.
From-SVN: r117926
2006-10-21 03:15:08 +00:00
Mark Mitchell
20a0da3597 * BASE-VER: Set to 4.3.0.
From-SVN: r117924
2006-10-21 02:43:05 +00:00
Daniel Berlin
b23987ec2f tree.h (DECL_PTA_ARTIFICIAL): Remove.
2006-10-20  Daniel Berlin  <dberlin@dberlin.org>

	* tree.h (DECL_PTA_ARTIFICIAL): Remove.
	(tree_decl_with_vis): Remove artificial_pta_var flag.
	* tree-flow.h (referenced_var_check_and_insert): Expose.
	(nonlocal_all): New prototype.
	* tree-ssa-structalias.c (nonlocal_for_type): Remove.
	(nonlocal_all): Make global.
	(nonlocal_lookup): Remove.
	(nonlocal_insert): Ditto.
	(create_nonlocal_var): Do not call nonlocal_insert.
	(get_nonlocal_id_for_type): Remove.
	(find_global_initializers): Mark new vars we find for renaming.
	(intra_create_variable_infos): Only create one nonlocal.
	(expand_nonlocal_solutions): Remove.
	(compute_points_to_sets): Don't call it.
	(ipa_pta_execute): Ditto.
	(init_alias_heapvars): Don't create nonlocal_for_type.
	(delete_alias_heapvars): Don't remove it.
	* tree-ssa-operands.c (access_can_touch_variable): Don't prune
	nonlocal_all.

From-SVN: r117922
2006-10-21 02:38:30 +00:00
GCC Administrator
552f68f8fb Daily bump.
From-SVN: r117918
2006-10-21 00:17:17 +00:00
Tom Tromey
23f1d24742 natevents.cc (do_callback_arg_tests): Correctly pass jvalues.
* testsuite/libjava.jvmti/natevents.cc (do_callback_arg_tests):
	Correctly pass jvalues.

From-SVN: r117913
2006-10-20 21:43:36 +00:00
Lee Millward
4c9fb8704a re PR c++/28053 (ICE deriving from class with invalid bitfield)
PR c++/28053
        * decl2.c (grokbitfield): Detect invalid non-integral 
        types earlier when possible.

        * g++.dg/parse/bitfield1.C: Adjust error markers.
        * g++.dg/parse/bitfield2.C: New test. 


Co-Authored-By: Mark Mitchell <mark@codesourcery.com>

From-SVN: r117910
2006-10-20 20:13:42 +00:00
Francois-Xavier Coudert
5d7adf7a15 minval_r8.c: Regenerate.
* generated/minval_r8.c: Regenerate.
	* generated/maxloc1_4_r8.c: Regenerate.
	* generated/minloc1_16_r16.c: Regenerate.
	* generated/sum_i8.c: Regenerate.
	* generated/eoshift3_4.c: Regenerate.
	* generated/any_l16.c: Regenerate.
	* generated/eoshift1_8.c: Regenerate.
	* generated/reshape_r16.c: Regenerate.
	* generated/product_r4.c: Regenerate.
	* generated/maxloc1_8_i4.c: Regenerate.
	* generated/maxloc0_4_r4.c: Regenerate.
	* generated/in_unpack_i8.c: Regenerate.
	* generated/minloc0_4_r16.c: Regenerate.
	* generated/reshape_c4.c: Regenerate.
	* generated/maxloc0_4_r16.c: Regenerate.
	* generated/minloc1_8_r16.c: Regenerate.
	* generated/maxloc1_8_r16.c: Regenerate.
	* generated/in_unpack_i16.c: Regenerate.
	* generated/maxloc0_8_i8.c: Regenerate.
	* generated/sum_r16.c: Regenerate.
	* generated/minloc1_4_r8.c: Regenerate.
	* generated/maxloc1_16_r16.c: Regenerate.
	* generated/minloc1_16_i4.c: Regenerate.
	* generated/maxloc1_16_i4.c: Regenerate.
	* generated/minloc0_16_i8.c: Regenerate.
	* generated/maxloc0_16_i8.c: Regenerate.
	* generated/maxval_r16.c: Regenerate.
	* generated/count_16_l16.c: Regenerate.
	* generated/count_8_l8.c: Regenerate.
	* generated/product_c10.c: Regenerate.
	* generated/minloc1_8_i4.c: Regenerate.
	* generated/minloc0_16_i16.c: Regenerate.
	* generated/eoshift1_16.c: Regenerate.
	* generated/minloc0_4_r4.c: Regenerate.
	* generated/product_c4.c: Regenerate.
	* generated/sum_r4.c: Regenerate.
	* generated/in_pack_c16.c: Regenerate.
	* generated/reshape_i4.c: Regenerate.
	* generated/minloc0_8_i8.c: Regenerate.
	* generated/minloc1_16_r10.c: Regenerate.
	* generated/in_pack_c4.c: Regenerate.
	* generated/all_l16.c: Regenerate.
	* generated/reshape_c16.c: Regenerate.
	* generated/maxloc1_8_r8.c: Regenerate.
	* generated/minval_i16.c: Regenerate.
	* generated/reshape_r10.c: Regenerate.
	* generated/maxval_i4.c: Regenerate.
	* generated/any_l4.c: Regenerate.
	* generated/minval_i8.c: Regenerate.
	* generated/maxloc1_4_i8.c: Regenerate.
	* generated/maxloc0_16_i16.c: Regenerate.
	* generated/maxloc0_8_r4.c: Regenerate.
	* generated/minloc1_4_i16.c: Regenerate.
	* generated/minloc0_4_r10.c: Regenerate.
	* generated/maxloc1_4_i16.c: Regenerate.
	* generated/minloc0_8_i16.c: Regenerate.
	* generated/maxloc0_4_r10.c: Regenerate.
	* generated/maxloc0_8_i16.c: Regenerate.
	* generated/minloc1_8_r10.c: Regenerate.
	* generated/product_i4.c: Regenerate.
	* generated/minloc0_16_r4.c: Regenerate.
	* generated/sum_c16.c: Regenerate.
	* generated/maxloc1_8_r10.c: Regenerate.
	* generated/maxloc0_16_r4.c: Regenerate.
	* generated/minloc1_16_r8.c: Regenerate.
	* generated/maxloc0_4_i4.c: Regenerate.
	* generated/maxloc1_16_r8.c: Regenerate.
	* generated/cshift1_4.c: Regenerate.
	* generated/sum_r10.c: Regenerate.
	* generated/sum_c4.c: Regenerate.
	* generated/maxloc1_16_r10.c: Regenerate.
	* generated/count_4_l16.c: Regenerate.
	* generated/in_pack_i4.c: Regenerate.
	* generated/minloc1_8_r8.c: Regenerate.
	* generated/count_4_l4.c: Regenerate.
	* generated/maxval_r10.c: Regenerate.
	* generated/minloc1_4_i8.c: Regenerate.
	* generated/in_unpack_c4.c: Regenerate.
	* generated/minloc0_8_r4.c: Regenerate.
	* generated/product_i16.c: Regenerate.
	* generated/minloc0_16_r16.c: Regenerate.
	* generated/reshape_r8.c: Regenerate.
	* generated/all_l4.c: Regenerate.
	* generated/in_pack_c10.c: Regenerate.
	* generated/minloc0_4_i4.c: Regenerate.
	* generated/reshape_c10.c: Regenerate.
	* generated/minval_r4.c: Regenerate.
	* generated/maxloc1_4_r4.c: Regenerate.
	* generated/sum_i4.c: Regenerate.
	* generated/count_16_l8.c: Regenerate.
	* generated/maxval_r8.c: Regenerate.
	* generated/eoshift1_4.c: Regenerate.
	* generated/eoshift3_8.c: Regenerate.
	* generated/minval_r16.c: Regenerate.
	* generated/product_r8.c: Regenerate.
	* generated/maxloc1_8_i8.c: Regenerate.
	* generated/maxloc0_4_r8.c: Regenerate.
	* generated/maxloc0_16_r16.c: Regenerate.
	* generated/in_unpack_i4.c: Regenerate.
	* generated/sum_c10.c: Regenerate.
	* generated/minloc1_4_r16.c: Regenerate.
	* generated/maxloc1_4_r16.c: Regenerate.
	* generated/in_unpack_c16.c: Regenerate.
	* generated/minloc0_8_r16.c: Regenerate.
	* generated/reshape_c8.c: Regenerate.
	* generated/maxloc0_8_r16.c: Regenerate.
	* generated/maxloc0_8_i4.c: Regenerate.
	* generated/minloc1_4_r4.c: Regenerate.
	* generated/minloc0_16_i4.c: Regenerate.
	* generated/maxloc0_16_i4.c: Regenerate.
	* generated/minloc1_16_i8.c: Regenerate.
	* generated/maxloc1_16_i8.c: Regenerate.
	* generated/count_8_l4.c: Regenerate.
	* generated/minloc0_16_r10.c: Regenerate.
	* generated/minloc1_8_i8.c: Regenerate.
	* generated/minloc0_4_r8.c: Regenerate.
	* generated/product_r16.c: Regenerate.
	* generated/product_c8.c: Regenerate.
	* generated/sum_r8.c: Regenerate.
	* generated/in_pack_i16.c: Regenerate.
	* generated/minloc0_8_i4.c: Regenerate.
	* generated/minloc1_16_i16.c: Regenerate.
	* generated/reshape_i8.c: Regenerate.
	* generated/in_pack_c8.c: Regenerate.
	* generated/maxloc1_8_r4.c: Regenerate.
	* generated/reshape_i16.c: Regenerate.
	* generated/minval_r10.c: Regenerate.
	* generated/minval_i4.c: Regenerate.
	* generated/maxloc1_4_i4.c: Regenerate.
	* generated/maxval_i8.c: Regenerate.
	* generated/eoshift3_16.c: Regenerate.
	* generated/any_l8.c: Regenerate.
	* generated/maxloc0_16_r10.c: Regenerate.
	* generated/minloc0_4_i16.c: Regenerate.
	* generated/maxloc0_8_r8.c: Regenerate.
	* generated/maxloc0_4_i16.c: Regenerate.
	* generated/minloc1_4_r10.c: Regenerate.
	* generated/minloc1_8_i16.c: Regenerate.
	* generated/maxloc1_4_r10.c: Regenerate.
	* generated/minloc0_8_r10.c: Regenerate.
	* generated/maxloc1_8_i16.c: Regenerate.
	* generated/in_unpack_c10.c: Regenerate.
	* generated/maxloc0_8_r10.c: Regenerate.
	* generated/minloc1_16_r4.c: Regenerate.
	* generated/maxloc1_16_r4.c: Regenerate.
	* generated/minloc0_16_r8.c: Regenerate.
	* generated/product_i8.c: Regenerate.
	* generated/maxloc0_16_r8.c: Regenerate.
	* generated/sum_i16.c: Regenerate.
	* generated/maxloc0_4_i8.c: Regenerate.
	* generated/cshift1_8.c: Regenerate.
	* generated/maxloc1_16_i16.c: Regenerate.
	* generated/minloc1_8_r4.c: Regenerate.
	* generated/sum_c8.c: Regenerate.
	* generated/count_8_l16.c: Regenerate.
	* generated/in_pack_i8.c: Regenerate.
	* generated/maxval_i16.c: Regenerate.
	* generated/count_4_l8.c: Regenerate.
	* generated/minloc1_4_i4.c: Regenerate.
	* generated/product_c16.c: Regenerate.
	* generated/reshape_r4.c: Regenerate.
	* generated/minloc0_8_r8.c: Regenerate.
	* generated/in_unpack_c8.c: Regenerate.
	* generated/product_r10.c: Regenerate.
	* generated/cshift1_16.c: Regenerate.
	* generated/all_l8.c: Regenerate.
	* generated/minloc0_4_i8.c: Regenerate.
	* generated/maxval_r4.c: Regenerate.
	* generated/count_16_l4.c: Regenerate.

From-SVN: r117904
2006-10-20 11:52:56 +00:00
Adam Nemet
065a4d36bc * gcc.dg/tree-ssa/ivopts-2.c: Match final candidates line only.
From-SVN: r117900
2006-10-20 07:46:21 +00:00
Brooks Moses
27ea03604f invoke.texi: Fixed "denormal" typo.
* invoke.texi: Fixed "denormal" typo.

From-SVN: r117899
2006-10-19 20:29:05 -07:00
GCC Administrator
9efc96e9c4 Daily bump.
From-SVN: r117896
2006-10-20 00:17:37 +00:00
Brooks Moses
374716e722 install.texi (Downloading GCC): Clarify mention of Fortran in the "full distribution" description.
* doc/install.texi (Downloading GCC): Clarify mention of
Fortran in the "full distribution" description.

From-SVN: r117892
2006-10-19 16:39:45 -07:00
Daniel Berlin
21392f1922 Fix PR tree-optimization/28778 Fix PR tree-optimization/29156 Fix PR tree-optimization/29415
2006-10-19  Daniel Berlin  <dberlin@dberlin.org>

	Fix PR tree-optimization/28778
	Fix PR tree-optimization/29156
	Fix PR tree-optimization/29415
	* tree.h (DECL_PTA_ARTIFICIAL): New macro.
	(tree_decl_with_vis): Add artificial_pta_var flag.
	* tree-ssa-alias.c (is_escape_site): Remove alias info argument,
	pushed into callers.
	* tree-ssa-structalias.c (nonlocal_for_type): New variable.
	(nonlocal_all): Ditto.
	(struct variable_info): Add directly_dereferenced member.
	(var_escaped_vars): New variable.
	(escaped_vars_tree): Ditto.
	(escaped_vars_id): Ditto.
	(nonlocal_vars_id): Ditto.
	(new_var_info): Set directly_dereferenced.
	(graph_size): New variable
	(build_constraint_graph): Use graph_size.
	(solve_graph): Don't process constraints that cannot change the
	solution, don't try to propagate an empty solution to our
	successors.
	(process_constraint): Set directly_dereferenced.
	(could_have_pointers): New function.
	(get_constraint_for_component_ref): Don't process STRING_CST.
	(nonlocal_lookup): New function.
	(nonlocal_insert): Ditto.
	(create_nonlocal_var): Ditto.
	(get_nonlocal_id_for_type): Ditto.
	(get_constraint_for): Allow results vector to be empty in the case
	of string constants.
	Handle results of calls properly.
	(update_alias_info): Update alias info stats on number and type of
	calls.
	(find_func_aliases): Use could_have_pointers.
	(make_constraint_from_escaped): Renamed from
	make_constraint_to_anything, and changed to make constraints from
	escape variable.
	(make_constraint_to_escaped): New function.
	(find_global_initializers): Ditto.
	(create_variable_info_for): Make constraint from escaped to any
	global variable, and from any global variable to the set of
	escaped vars.
	(intra_create_variable_infos): Deal with escaped instead of
	pointing to anything.
	(set_uids_in_ptset): Do type pruning on directly dereferenced
	variables.
	(find_what_p_points_to): Adjust call to set_uids_with_ptset.
	(init_base_vars): Fix comment, and initialize escaped_vars.
	(need_to_solve): Removed.
	(find_escape_constraints): New function.
	(expand_nonlocal_solutions): Ditto.
	(compute_points_to_sets): Call find_escape_constraints and
	expand_nonlocal_solutions.
	(delete_points_to_sets): Don't fall off the end of the graph.
	(init_alias_heapvars): Initialize nonlocal_for_type and
	nonlocal_all.
	(delete_alias_heapvars): Free nonlocal_for_type and null out
	nonlocal_all.

From-SVN: r117891
2006-10-19 23:05:53 +00:00
François-Xavier Coudert
3d894fc3f0 re PR libfortran/27895 (problem with RESHAPE and zero-sized arrays)
PR libfortran/27895

	* intrinsics/cshift0.c: Special cases for zero-sized arrays.
	* intrinsics/pack_generic.c: Likewise.
	* intrinsics/spread_generic.c: Likewise.

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

From-SVN: r117890
2006-10-19 21:48:50 +00:00
Eric Botcazou
6b7283ac66 fold-const.c (add_double): Rename to add_double_with_sign.
* fold-const.c (add_double): Rename to add_double_with_sign.
	Add 'unsigned_p' parameter and take it into account for the overflow.
	(mul_double): Rename to mul_double_with_sign. 
	Add 'unsigned_p' parameter and take it into account for the overflow.
	(fold_div_compare): Call add_double_with_sign instead of add_double
	and mul_double_with_sign instead of mul_double, passing them the
	unsignedness of the type.
	* tree.h (add_double): Macroize.
	(add_double_with_sign): New prototype.
	(mul_double): Macroize.
	(mul_double_with_sign): New prototype.

From-SVN: r117887
2006-10-19 20:22:04 +00:00
Chen Liqin
93ef7c1f7e invoke.texi (Score Options): New section.
* doc/invoke.texi (Score Options): New section.
        * doc/md.texi (Score family): New section to document constraints.
        * config/score/t-score-elf: Fix spelling typo.
        * config/score/score.c: Add TARGET_DEFAULT_TARGET_FLAGS macro.
        * config/score/score.h: Fix spelling typo.
        * config/score/score-mdaux.c: Remove TARGET_NOPINDEX condition.
        * config/score/score.opt: Remove -mnpi -mnuls -mSCORE5/5U -mSCORE7
          options.

From-SVN: r117882
2006-10-19 09:19:21 +00:00
Nick Clifton
afc0a4ba17 Fix spelling typo in comment
From-SVN: r117880
2006-10-19 08:10:08 +00:00
Paul Thomas
6b591ec0ba [multiple changes]
2006-10-19  Paul Thomas <pault@gcc.gnu.org>

	PR fortran/29216
	PR fortran/29314
	* gfortran.h : Add EXEC_INIT_ASSIGN.
	* dump-parse-tree.c (gfc_show_code_node): The same.
	* trans-openmp.c (gfc_trans_omp_array_reduction): Set new
	argument for gfc_trans_assignment to false.
	* trans-stmt.c (gfc_trans_forall_1): The same.
	* trans-expr.c (gfc_conv_function_call, gfc_trans_assign,
	gfc_trans_arrayfunc_assign, gfc_trans_assignment): The
	same. In the latter function, use the new flag to stop
	the checking of the lhs for deallocation.
	(gfc_trans_init_assign): New function.
	* trans-stmt.h : Add prototype for gfc_trans_init_assign.
	* trans.c (gfc_trans_code): Implement EXEC_INIT_ASSIGN.
	* trans.h : Add new boolean argument to the prototype of
	gfc_trans_assignment.
	* resolve.c (resolve_allocate_exp): Replace EXEC_ASSIGN by
	EXEC_INIT_ASSIGN.
	(resolve_code): EXEC_INIT_ASSIGN does not need resolution.
	(apply_default_init): New function.
	(resolve_symbol): Call it for derived types that become
	defined but which do not already have an initialization
	expression..
	* st.c (gfc_free_statement): Include EXEC_INIT_ASSIGN.

2006-10-19  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/29216
	* gfortran.dg/result_default_init_1.f90: New test.

	PR fortran/29314
	* gfortran.dg/automatic_default_init_1.f90: New test.

	* gfortran.dg/alloc_comp_basics_1.f90: Reduce deallocate count
	from 38 to 33.

From-SVN: r117879
2006-10-19 04:51:14 +00:00
Tom Tromey
2d142abdf3 * doc/install.texi (Prerequisites): Mention automake 1.9.6.
From-SVN: r117878
2006-10-19 04:34:01 +00:00