Commit Graph

79743 Commits

Author SHA1 Message Date
Richard Sandiford
21d59fffee intmax_t-1.c: Restrict XFAIL to VxWorks kernels; exclude RTPs.
gcc/testsuite/
	* gcc.dg/intmax_t-1.c: Restrict XFAIL to VxWorks kernels;
	exclude RTPs.

From-SVN: r122993
2007-03-16 14:37:39 +00:00
Richard Sandiford
ad8577fdb6 vxworks.h (SUPPORTS_INIT_PRIORITY): Define.
gcc/
	* config/vxworks.h (SUPPORTS_INIT_PRIORITY): Define.

From-SVN: r122992
2007-03-16 14:35:26 +00:00
Richard Sandiford
d95d45fd6b vx-common.h (WINT_TYPE, [...]): Define.
gcc/
	* config/vx-common.h (WINT_TYPE, WINT_TYPE_SIZE): Define.

From-SVN: r122991
2007-03-16 14:34:56 +00:00
Uros Bizjak
0935e0910e i386.c (override_options): Add PTA_NO_SAHF to k8...
* config/i386/i386.c (override_options): Add PTA_NO_SAHF to k8,
	opteron, athlon-64 and athlon-fx processor_alias_table entries.

From-SVN: r122989
2007-03-16 13:32:08 +01:00
Sebastian Pop
a9549792d3 re PR tree-optimization/31183 (ICE in int_cst_value, at tree.c:7684 with -O3 -ftree-loop-linear)
PR tree-optimization/31183
	* tree-loop-linear.c (gather_interchange_stats, try_interchange_loops): 
	Use double_int instead of unsigned int for representing access_strides.
	* testsuite/gcc.dg/tree-ssa/pr31183.c: New.

From-SVN: r122988
2007-03-16 11:30:48 +00:00
Tobias Burnus
945a98a4b2 [multiple changes]
2007-03-16  Paul Thomas  <pault@gcc.gnu.org>
	    Tobias Burnus  <burnus@net-b.de>

	PR fortran/31188
	* expr.c (find_array_section): Allow
	  non-expression-constant variables.

2007-03-16  Tobias Burnus  <burnus@net-b.de>

	PR fortran/31188
	* gfortran.dg/parameter_array_dummy.f90: New test.

From-SVN: r122987
2007-03-16 11:57:45 +01:00
Benjamin Kosnik
7c62b943ba [multiple changes]
2007-03-16  Benjamin Kosnik  <bkoz@redhat.com>
	
	* testsuite/lib/dg-options.exp (dg-require-c-std): New.
	* testsuite/lib/libstdc++.exp (check_v3_target_c_std): New. Check to
	see if _GLIBCXX_USE_C99_MATH is active. 
	* testsuite/tr1/5_numerical_facilities/special_functions/
	08_cyl_bessel_i/check_nan.cc: Use dg-require-c-std.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	17_hyperg/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	13_ellint_2/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	20_riemann_zeta/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	01_assoc_laguerre/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	02_assoc_legendre/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	22_sph_legendre/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	10_cyl_bessel_k/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	09_cyl_bessel_j/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	21_sph_bessel/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	07_conf_hyperg/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	16_hermite/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	12_ellint_1/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	05_comp_ellint_2/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	18_laguerre/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	14_ellint_3/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	04_comp_ellint_1/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	06_comp_ellint_3/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	19_legendre/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	03_beta/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	11_cyl_neumann/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	15_expint/check_nan.cc: Same.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	23_sph_neumann/check_nan.cc: Same.

	* include/tr1/poly_laguerre.tcc (__poly_laguerre): Don't check if
	unsigned int can be a NaN.

2007-03-16  Edward M. Smith-Rowland  <3dw4rd@verizon.net>

	* docs/html/ext/tr1.html : Marked tr1 math special functions done.
	* docs/html/faq/index.html : Ditto.
	* include/Makefile.in : Added new special function header files.
	* include/Makefile.am : Ditto.	
	* include/tr1/common.h : Added type promotion routines for three
	and four args.

	* include/tr1/special_function_util.h: New.
	* include/tr1/bessel_function.tcc: New.
	* include/tr1/beta_function.tcc: New.
	* include/tr1/ell_integral.tcc: New.
	* include/tr1/exp_integral.tcc: New.
	* include/tr1/gamma.tcc: New.
	* include/tr1/hypergeometric.tcc: New.
	* include/tr1/legendre_function.tcc: New.
	* include/tr1/modified_bessel_func.tcc: New.
	* include/tr1/poly_hermite.tcc: New.
	* include/tr1/poly_laguerre.tcc: New.
	* include/tr1/riemann_zeta.tcc: New.
	* include/tr1/cmath : Included tr1 math special functions.
	* include/tr1/math.h : Ditto.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	testcase.h: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	01_assoc_laguerre/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	01_assoc_laguerre/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	01_assoc_laguerre/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	01_assoc_laguerre/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	02_assoc_legendre/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	02_assoc_legendre/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	02_assoc_legendre/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	02_assoc_legendre/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
	check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/03_beta/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	04_comp_ellint_1/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	04_comp_ellint_1/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	04_comp_ellint_1/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	04_comp_ellint_1/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	05_comp_ellint_2/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	05_comp_ellint_2/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	05_comp_ellint_2/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	05_comp_ellint_2/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	06_comp_ellint_3/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	06_comp_ellint_3/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	06_comp_ellint_3/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	06_comp_ellint_3/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	07_conf_hyperg/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	07_conf_hyperg/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	07_conf_hyperg/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	07_conf_hyperg/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	08_cyl_bessel_i/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	08_cyl_bessel_i/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	08_cyl_bessel_i/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	08_cyl_bessel_i/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	09_cyl_bessel_j/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	09_cyl_bessel_j/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	09_cyl_bessel_j/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	09_cyl_bessel_j/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	10_cyl_bessel_k/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	10_cyl_bessel_k/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	10_cyl_bessel_k/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	10_cyl_bessel_k/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	11_cyl_neumann/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	11_cyl_neumann/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	11_cyl_neumann/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	11_cyl_neumann/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
	check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/12_ellint_1/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
	check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/13_ellint_2/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
	check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/14_ellint_3/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
	check_value_neg.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/15_expint/
	check_value_pos.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
	check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/17_hyperg/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
	check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/18_laguerre/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
	compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
	check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
	check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/19_legendre/
	compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	20_riemann_zeta/check_value_neg.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	20_riemann_zeta/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	20_riemann_zeta/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	20_riemann_zeta/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	20_riemann_zeta/check_value_pos.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	21_sph_bessel/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	21_sph_bessel/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	21_sph_bessel/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	21_sph_bessel/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	22_sph_legendre/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	22_sph_legendre/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	22_sph_legendre/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	22_sph_legendre/compile_2.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	23_sph_neumann/compile.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	23_sph_neumann/check_nan.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	23_sph_neumann/check_value.cc: New.
	* testsuite/tr1/5_numerical_facilities/special_functions/
	23_sph_neumann/ compile_2.cc: New.

From-SVN: r122986
2007-03-16 10:35:16 +00:00
Richard Guenther
7b1737d07a re PR tree-optimization/31146 (forwprop does not look through casts)
2007-03-16  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/31146
	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Restructure
	to allow recursion of forward_propagate_addr_expr.
	(forward_propagate_addr_into_variable_array_index): Likewise.
	(forward_propagate_addr_expr): Likewise.
	(tree_ssa_forward_propagate_single_use_vars): Likewise.
	(forward_propagate_addr_expr_1): Recurse on simple copies
	instead of propagating into them.  Do so for useless conversions
	as well.
	(forward_propagate_addr_expr): Clean up unused statements after
	recursion.

	* g++.dg/tree-ssa/pr31146.C: New testcase.

From-SVN: r122985
2007-03-16 10:11:14 +00:00
Richard Sandiford
3811dfcdcd Fix top in last change.
From-SVN: r122984
2007-03-16 10:02:02 +00:00
Richard Sandiford
7a27dc2fb4 target-supports.exp (check_missing_uclibc_feature): Don't assume that the target has <features.h>.
gcc/testsuite/
	* lib/target-supports.exp (check_missing_uclibc_feature): Don't
	assume that the target has <features.h>.

From-SVN: r122983
2007-03-16 09:56:18 +00:00
Richard Guenther
4c8a652e3f builtins.c (expand_builtin_cexpi): Use the right argument for the expansion via cexp.
2007-03-16  Richard Guenther  <rguenther@suse.de>

	* builtins.c (expand_builtin_cexpi): Use the right argument
	for the expansion via cexp.

From-SVN: r122982
2007-03-16 09:54:39 +00:00
Tobias Burnus
e51333e4d5 trans-decl.c (gfc_generate_function_code): Use all arguments of set_std.
2007-03-16  Tobias Burnus  <burnus@net-b.de>

       * trans-decl.c (gfc_generate_function_code): Use all arguments of
         set_std.

From-SVN: r122981
2007-03-16 10:50:18 +01:00
Richard Sandiford
ba006834f9 20020426-2.c: Add the fpic requirement to the PIC dg-options rather than to the whole test.
gcc/testsuite/
	* gcc.dg/20020426-2.c: Add the fpic requirement to the PIC
	dg-options rather than to the whole test.

From-SVN: r122979
2007-03-16 07:25:22 +00:00
Alexandre Oliva
43bc306a76 configure.ac: Don't require ELF binutils to tolerate # 0 "".
* configure.ac: Don't require ELF binutils to tolerate # 0 "".
* configure: Rebuilt.

From-SVN: r122978
2007-03-16 05:50:58 +00:00
Alexandre Oliva
8857ae1c20 re PR debug/29906 (-g option creates internal compiler error)
gcc/ChangeLog:
PR debug/29906
* dwarf2out.c (force_type_die): Adjust comment.
(dwarf2out_imported_module_or_decl): Handle base AT_import types.
gcc/testsuite/ChangeLog:
PR debug/29906
* g++.dg/debug/pr29906.C: New

From-SVN: r122976
2007-03-16 05:08:25 +00:00
Jerry DeLisle
94fe33db53 re PR libfortran/31099 (Runtime error on legal code using RECL)
2007-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/31099
	* gfortran.dg/unformatted_recl.f90: Update test.

From-SVN: r122975
2007-03-16 01:57:16 +00:00
Geoffrey Keating
771904f1e6 cp-demangle.c (d_encoding): Exit early on error.
* cp-demangle.c (d_encoding): Exit early on error.
	(d_pointer_to_member_type): Exit early if cplus_demangle_type
	returns NULL.
	(cplus_demangle_type): Likewise.
	* testsuite/demangle-expected: New testcase.

From-SVN: r122972
2007-03-16 01:07:52 +00:00
DJ Delorie
ba502ad6be predicates.md (minmax_operator): Don't check operands here.
* config/frv/predicates.md (minmax_operator): Don't check operands
here.

From-SVN: r122971
2007-03-15 20:56:36 -04:00
Jerry DeLisle
b746fc0e8c re PR libfortran/31099 (Runtime error on legal code using RECL)
2007-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/31099
	* io/file_pos.c (st_rewind): Don't set bytes_left to zero.

From-SVN: r122970
2007-03-16 00:41:36 +00:00
Zdenek Dvorak
9bdb685eda tree-ssa-loop-niter.c (record_estimate): Add "upper" argument.
* tree-ssa-loop-niter.c (record_estimate): Add "upper" argument.
	Update constant estimates of number of iterations.
	(record_nonwrapping_iv): Add "upper" argument.  "data_size_bounds_p"
	argument renamed to "realistic".
	(compute_estimated_nb_iterations): Removed.
	(record_niter_bound): New function.
	(idx_infer_loop_bounds): For possible but unlikely tail arrays,
	call record_nonwrapping_iv with upper = false.
	(infer_loop_bounds_from_signedness): Pass upper argument to
	record_nonwrapping_iv.
	(estimate_numbers_of_iterations_loop): Do not call
	compute_estimated_nb_iterations.  Record estimate based on profile
	information.  Initialize the constant estimates of number of
	iterations.
	* tree-data-ref.c (estimated_loop_iterations): Return the recorded
	estimates.
	* tree-ssa-loop-prefetch.c (loop_prefetch_arrays): Add dump when
	number of iterations is too small.
	* cfgloop.h (struct nb_iter_bound): Remove "realistic" field.
	(EST_NOT_AVAILABLE): Removed.
	(struct loop): Replace estimated_nb_iterations by any_upper_bound,
	nb_iterations_upper_bound, any_estimate and nb_iterations_estimate
	fields.

	* gcc.dg/tree-ssa/prefetch-5.c: New test.

From-SVN: r122969
2007-03-16 00:25:30 +00:00
GCC Administrator
d4daf0d623 Daily bump.
From-SVN: r122967
2007-03-16 00:17:47 +00:00
Zdenek Dvorak
17b236ed68 tree-ssa-loop-niter.c (refine_bounds_using_guard, [...]): Handle NE_EXPR guards.
* tree-ssa-loop-niter.c (refine_bounds_using_guard, bound_difference):
	Handle NE_EXPR guards.

From-SVN: r122963
2007-03-15 23:47:18 +00:00
Manuel López-Ibáñez
2ce88bea6d re PR c++/30891 (poor diagnostic with namespace in the function scope)
2007-03-15  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

	PR c++/30891
cp/
	* parser.c (cp_parser_statement): If 'namespace' is found, this
	only can be a namespace alias definition, so parse it now.
	(cp_parser_namespace_alias_definition): if we find an open brace
	instead of '=', then this is actually a misplaced namespace
	definition.
testsuite/
	* g++.dg/parse/namespace-definition.C: New.

From-SVN: r122962
2007-03-15 22:45:17 +00:00
Manuel López-Ibáñez
9b439fe168 re PR c++/24924 (front end and preprocessor pedantic_errors settings should agree)
2007-03-15  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

	PR c++/24924
	* c-opts.c (c_common_post_options): Handle C++ post-processing here.
	Set also -pedantic-errors by default for the  preprocessor unless
	-fpermissive is given.
cp/
	* decl.c (cxx_init_decl_processing): Move command-line options
	processing to c-opts.c.
testsuite/
	* g++.dg/cpp/pedantic-errors.C: New.
	* g++.dg/cpp/permissive.C: New.

From-SVN: r122961
2007-03-15 22:24:42 +00:00
Richard Sandiford
71afac1da3 mmx1.C: Only use the PIC options for fpic targets.
gcc/testsuite/
	* g++.dg/opt/mmx1.C: Only use the PIC options for fpic targets.
	* g++.old-deja/g++.other/store-expr1.C: Require fpic.

From-SVN: r122960
2007-03-15 21:27:55 +00:00
Richard Sandiford
e6625c4411 gcc/testsuite/
* lib/target-supports.exp (check_missing_uclibc_feature)
	(check_effective_target_wchar): New procedures.
	* gcc.dg/wchar_t-1.c: Require target wchar.
	* gcc.dg/wint_t-1.c: Likewise.

From-SVN: r122959
2007-03-15 21:22:59 +00:00
Richard Guenther
34a24c113b re PR middle-end/29719 (newlib targets ICEs in expand_builtin_int_roundingfn)
2007-03-15  Richard Guenther  <rguenther@suse.de>

	PR middle-end/29719
	PR middle-end/31161
	* builtins.c (expand_builtin_int_roundingfn): Always fall
	back to floor/ceil and its variants even if they may be
	not available.
	(expand_builtin_cexpi): As a fallback if we
	don't have builtins for sincos or cexp create a function
	declaration for cexp and expand to a call to that.

From-SVN: r122958
2007-03-15 20:14:49 +00:00
Steven Bosscher
49ea3702aa cfglayout.c (fixup_reorder_chain): Postpone deleting dead jump tables...
* cfglayout.c (fixup_reorder_chain): Postpone deleting dead
	jump tables, move the call to delete_dead_jumptables from here...
	(cfg_layout_finalize): ...to here.  But rebuild jump labels first.
	* cfgrtl.c (cfg_layout_can_merge_blocks_p): When not optimizing,
	don't allow merging of blocks that try_redirect_by_replacing_jump
	also does not handle when not optimizing.

From-SVN: r122957
2007-03-15 20:08:29 +00:00
Douglas Gregor
30bcc02890 ptree.c (cxx_print_type): Use formatting markup for integers when printing template parameter...
2007-03-15  Douglas Gregor  <doug.gregor@gmail.com>

	* ptree.c (cxx_print_type): Use formatting markup for integers
	when printing template parameter index/level/orig level.
	(cxx_print_xnode): Ditto.
	* cp-tree.h (TEMPLATE_PARM_PARAMETER_PACK): Use TREE_LANG_FLAG_0.
	(struct template_parm_index_s): Remove the PARAMETER_PACK member.
	Make INDEX, LEVEL, and ORIG_LEVEL integers instead of
	HOST_WIDE_INTs.
	(struct saved_scope): Make X_PROCESSING_TEMPLATE_DECL an int,
	rather than a HOST_WIDE_INT.
	Turn X_PROCESSING_EXPLICIT_INSTANTIATION, SKIP_EVALUATION, and
	NEED_POP_FUNCTION_CONTEXT into bool bitfields; reorder fields for
	better bit-packing.
	(struct language_function): Make RETURNS_VALUE, RETURNS_NULL,
	RETURNS_ABNORMALLY, IN_FUNCTION_TRY_HANDLER, and
	IN_BASE_INITIALIZER bool bitfields.
	(struct cp_declarator): Make KIND a 4-bit field. Make
	PARAMETER_PACK_P a bool bitfield just after KIND.
	* pt.c (uses_parameter_packs): Destroy the pointer set.
	(make_pack_expansion): Ditto.
	(check_for_bare_parameter_packs): Ditto.
	* name-lookup.c (push_to_top_level): Make need_pop a bool value.

From-SVN: r122955
2007-03-15 13:51:09 +00:00
Francois-Xavier Coudert
868d75dbdc gfortran.h (gfc_option_t): Add flag_backtrace field.
* gfortran.h (gfc_option_t): Add flag_backtrace field.
	* lang.opt: Add -fbacktrace option.
	* invoke.texi: Document the new option.
	* trans-decl.c (gfc_build_builtin_function_decls): Add new
	option to the call to set_std.
	* options.c (gfc_init_options, gfc_handle_option): Handle the
	new option.

	* runtime/backtrace.c: New file.
	* runtime/environ.c (variable_table): New GFORTRAN_ERROR_BACKTRACE
	environment variable.
	* runtime/compile_options.c (set_std): Add new argument.
	* runtime/main.c (store_exe_path, full_exe_path): New functions.
	* runtime/error.c (sys_exit): Add call to show_backtrace.
	* libgfortran.h (options_t): New backtrace field.
	(store_exe_path, full_exe_path, show_backtrace): New prototypes.
	* configure.ac: Add checks for execinfo.h, execvp, pipe, dup2,
	close, fdopen, strcasestr, getrlimit, backtrace, backtrace_symbols
	and getppid.
	* Makefile.am: Add runtime/backtrace.c.
	* fmain.c (main): Add call to store_exe_path.
	* Makefile.in: Renegerate.
	* config.h.in: Renegerate.
	* configure: Regenerate.

From-SVN: r122954
2007-03-15 12:39:47 +00:00
Uros Bizjak
419452fe7e i386.md (x86_sahf_1): Correctly handle HAVE_AS_IX86_SAHF.
* config/i386/i386.md (x86_sahf_1): Correctly handle
       HAVE_AS_IX86_SAHF.


Co-Authored-By: Francois-Xavier Coudert <coudert@clipper.ens.fr>

From-SVN: r122953
2007-03-15 11:31:49 +01:00
Richard Sandiford
75873b87c2 target-supports.exp (check_gc_sections_available): Return false for VxWorks targets.
gcc/testsuite/
	* lib/target-supports.exp (check_gc_sections_available): Return
	false for VxWorks targets.

From-SVN: r122951
2007-03-15 09:34:25 +00:00
Hans-Peter Nilsson
43e0343088 libstdc++.exp (v3-build_support): If it exists, use env(AR_FOR_TARGET).
* testsuite/lib/libstdc++.exp (v3-build_support) <ar>: If it
	exists, use env(AR_FOR_TARGET).  Log the command.
	<ranlib>: Similar.

From-SVN: r122950
2007-03-15 09:14:37 +00:00
Dirk Mueller
c123d98fc6 Wconversion2.C: Fix typo.
2007-03-15  Dirk Mueller  <dmueller@suse.de>

       * g++.dg/warn/Wconversion2.C: Fix typo.
       * gcc.dg/if-empty-1.c: Ditto.

From-SVN: r122949
2007-03-15 09:11:30 +00:00
Richard Sandiford
211ea3009d assert4.c: Treat VxWorks as a unix target.
gcc/testsuite/
	* gcc.dg/cpp/assert4.c: Treat VxWorks as a unix target.

From-SVN: r122948
2007-03-15 08:53:42 +00:00
Uros Bizjak
2ec612a3d1 cmpxchg16b-1.c: Compile for lp64 targets only.
* gcc.target/i386/cmpxchg16b-1.c: Compile for lp64 targets only.
	* gcc.target/i386/pr31167.c: Ditto.

From-SVN: r122947
2007-03-15 09:22:35 +01:00
Uros Bizjak
68b8830aa0 re PR target/31167 (ICE wnen using __int128_t on x86_64)
PR target/31167
        * config/i386/i386.md (*addti3_1, *addti3_1 splitter): Use
        x86_64_general_operand as operand[2] predicate.  Remove "iF"
        from operand constraints and use "e" constraint instead.
        (*subti3_1, *subti3_1 splitter): Ditto.
        (*negti2_1, *negti2_1 splitter): Use nonimmediate_operand as
        operand[1] predicate.

testsuite/ChangeLog

       PR target/31167
       * gcc.target/i386/pr31167.c: New test.

From-SVN: r122945
2007-03-15 08:25:22 +01:00
Paul Thomas
36d3fb4cfe [multiple changes]
2007-03-15  Tobias Burnus  <burnus@gcc.gnu.org>
	    Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30922
	* decl.c (gfc_match_import): If the parent of the current name-
	space is null, try looking for an imported symbol in the parent
	of the proc_name interface.
	* resolve.c (resolve_fl_variable): Do not check for blocking of
	host association by a same symbol, if the symbol is in an
	interface body.

2007-03-15  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30879
	* decl.c (match_data_constant): Before going on to try to match
	a name, try to match a structure component.


	PR fortran/30870
	* resolve.c (resolve_actual_arglist): Do not reject a generic
	actual argument if it has a same name specific interface.

	PR fortran/31163
	* trans-array.c (parse_interface): Do not nullify allocatable
	components if the symbol has the saved attribute.


2007-03-15  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/30922
	* gfortran.dg/import5.f90.f90: New test.


	PR fortran/30879
	* gfortran.dg/data_components_1.f90: New test.


	PR fortran/30870
	* gfortran.dg/generic_13.f90: New test.

	PR fortran/31163
	* gfortran.dg/alloc_comp_basics_5.f90: New test.

From-SVN: r122944
2007-03-15 06:44:25 +00:00
Jerry DeLisle
23dd73839f re PR fortran/31051 ([4.2 Only] gfortran bug with x and t format descriptors.)
2007-03-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/31051
	* gfortran.dg/fmt_t_4.f90: New

From-SVN: r122942
2007-03-15 01:30:05 +00:00
Andrew Pinski
344bd5a861 re PR c++/31165 (Error: symbol `an_empty_string' is already defined)
2007-03-14  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR c++/31165
        * call.c  (convert_default_arg): Instead of copying the node,
        unshare it.
2007-03-14  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR C++/31165
        * g++.dg/other/default7.C: New test.

From-SVN: r122941
2007-03-14 18:27:29 -07:00
Jerry DeLisle
22cbc70726 re PR fortran/31051 ([4.2 Only] gfortran bug with x and t format descriptors.)
2007-03-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/31051
	* io/transfer.c (formatted_transfer_scalar): Adjust position for pending
	spaces when in writing mode.  Clean up some formatting.

From-SVN: r122940
2007-03-15 01:25:27 +00:00
GCC Administrator
15ce86a7e5 Daily bump.
From-SVN: r122938
2007-03-15 00:17:15 +00:00
Sebastian Pop
c4d8f83b55 tree-loop-linear.c (gather_interchange_stats): For multidimensional arrays...
* tree-loop-linear.c (gather_interchange_stats): For multidimensional
	arrays, multiply the access strides by the size of the sub-array.
	* testsuite/gcc.dg/tree-ssa/ltrans-5.c: New.

From-SVN: r122935
2007-03-14 23:23:24 +00:00
Dirk Mueller
1f7f19c46a re PR c++/30860 (Should warn about boolean constant false used in pointer context)
2007-03-15  Dirk Mueller  <dmueller@suse.de>

        PR c++/30860
        * call.c (convert_conversion_warnings): New..
        (convert_like_real): .. factored out from here.
        (convert_conversion_warnings): Add warning about
        false being converted to NULL in argument passing.

        * g++.dg/warn/Wconversion2.C: New.

From-SVN: r122934
2007-03-14 23:17:03 +00:00
Michael Meissner
ddff69b972 Fix 31018 -- move TARGET_xxx in i386.md to tuning options
From-SVN: r122933
2007-03-14 22:36:22 +00:00
Eric Christopher
d33d6db009 ssp-1.c: New.
2007-03-14  Eric Christopher  <echristo@apple.com>

	* gcc.dg/ssp-1.c: New.
        * gcc.dg/ssp-2.c: Ditto.

From-SVN: r122932
2007-03-14 21:11:20 +00:00
Uros Bizjak
38ca376525 configure.ac (HAVE_AS_IX86_SAHF): On x86 targets check whether the configured assembler supports the sahf mnemonic.
* configure.ac (HAVE_AS_IX86_SAHF): On x86 targets check whether
        the configured assembler supports the sahf mnemonic.
        * configure: Regenerate.
        * config.in: Regenerate.

        * config/i386/i386.md (x86_sahf_1): Depending on HAVE_AS_IX86_SAHF,
        emit "sahf" or ".byte\t0x9e" as asm template.

From-SVN: r122931
2007-03-14 22:03:59 +01:00
Michael Meissner
e9f646295d Fix 31018 -- move TARGET_xxx in i386.md to tuning options
From-SVN: r122929
2007-03-14 20:02:03 +00:00
Dirk Mueller
62e00e9474 c-common.h (empty_body_warning): Rename to empty_if_body_warning.
2007-03-14  Dirk Mueller  <dmueller@suse.de>

        * c-common.h (empty_body_warning): Rename to empty_if_body_warning.
        * c-common.c (empty_if_body_warning): Rephrase diagnostic message.
        * c-parser.c (c_parser_if_body): Always add an empty statement in case
        of empty body.
        * c-parser.c (c_parser_do_statement): Warn about empty body in
        do/while statement.
        * c-typeck (c_finish_if_stmt): Call empty_if_body_warning.
        * doc/invoke.texi (-Wempty-body): Update documentation.

        * cp/semantics.c (c_finish_if_stmt): Call empty_if_body_warning.
        (finish_do_body): Warn about empty body in do/while statement.

        * g++.dg/warn/do-empty.C: New.
        * gcc.dg/do-empty.c: New.
        * gcc.dg/if-empty-1.c: Update.
        * gcc.dg/20001116-1.c: Update.
        * gcc.dg/pr23165.c: Update.

From-SVN: r122928
2007-03-14 19:33:17 +00:00
Thomas Koenig
adea5e16e4 re PR libfortran/30690 ([4.2, 4.1 only] Clean up m4 files)
2007-03-14  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/30690
	* all.m4: Quote everything, except for m4 macros.
	* any.m4: Likewise.
	* count.m4: Likewise.
	* cshift1.m4: Likewise.
	* eoshift1.m4: Likewise.
	* eoshift3.m4: Likewise.
	* exponent.m4: Likewise.
	* fraction.m4: Likewise.
	* in_pack.m4: Likewise.
	* in_unpack.m4: Likewise.
	* matmul.m4: Likewise.
	* matmull.m4: Likewise.
	* nearest.m4: Likewise.
	* pow.m4: Likewise.
	* product.m4: Likewise.
	* reshape.m4: Likewise.
	* rrspacing.m4: Likewise.
	* set_exponent.m4: Likewise.
	* shape.m4: Likewise.
	* spacing.m4: Likewise.
	* transpose.m4: Likewise.

From-SVN: r122927
2007-03-14 19:26:38 +00:00