Commit Graph

71006 Commits

Author SHA1 Message Date
Joseph Myers
af15a2fed7 c.opt (fextended-identifiers): New.
gcc:
	* c.opt (fextended-identifiers): New.
	* c-opts.c (c_common_handle_option): Handle
	-fextended-identifiers.
	* doc/cpp.texi: Update documentation of extended identifiers.
	* doc/cppopts.texi (-fextended-identifiers): Document.

gcc/testsuite:
	* g++.dg/cpp/ucnid-1.C, g++.dg/cpp/normalize-1.C,
	g++.dg/other/ucnid-1.C, gcc.dg/cpp/normalize-1.c,
	gcc.dg/cpp/normalize-2.c, gcc.dg/cpp/normalize-3.c,
	gcc.dg/cpp/normalize-4.c, gcc.dg/cpp/ucnid-1.c,
	gcc.dg/cpp/ucnid-2.c, gcc.dg/cpp/ucnid-3.c, gcc.dg/cpp/ucnid-4.c,
	gcc.dg/cpp/ucnid-5.c, gcc.dg/cpp/ucnid-7.c,gcc.dg/ucnid-1.c,
	gcc.dg/ucnid-2.c, gcc.dg/ucnid-3.c, gcc.dg/ucnid-4.c,
	gcc.dg/ucnid-5.c, gcc.dg/ucnid-6.c: Add -fextended-identifiers.
	* gcc.dg/cpp/ucnid-8.c: New test.

libcpp:
	* include/cpplib.h (struct cpp_options): Add extended_identifiers.
	* init.c (struct lang_flags, lang_defaults): Add
	extended_identifiers.
	(cpp_set_lang): Use it.
	* lex.c (forms_identifier_p): Check extended_identifiers.

From-SVN: r104462
2005-09-20 21:31:37 +01:00
Jakub Jelinek
6fff260313 re PR tree-optimization/23929 (segfault in expand_simple_operations, tree-ssa-loop-niter.c:637)
PR tree-optimization/23929
	* tree-ssa-loop-niter.c (expand_simple_operations): Return immediately
	if expr is NULL.

	* gcc.c-torture/compile/pr23929.c: New test.

From-SVN: r104461
2005-09-20 21:10:44 +02:00
Steve Ellcey
df5d636787 re PR testsuite/23186 (g++.dg/other/pr22003.C fails)
PR testsuite/23186
	* g++.dg/other/pr22003.C: Require named sections.

From-SVN: r104457
2005-09-20 17:00:22 +00:00
Jakub Jelinek
96d84476fa re PR c++/23947 (segv in reshape_init_r())
PR c++/23947
	* rtti.c (get_pseudo_ti_init): Recompute ti pointer after
	get_tinfo_ptr calls.

	* g++.dg/rtti/crash3.C: New test.

From-SVN: r104456
2005-09-20 17:40:57 +02:00
Jakub Jelinek
18c57f2c94 re PR tree-optimization/23818 (ICE in dominated_by_p, at dominance.c:827)
PR tree-optimization/23818
	* tree-stdarg.c (execute_optimize_stdarg): Call
	calculate_dominance_info.

	* gcc.dg/pr23818.c: New test.

From-SVN: r104455
2005-09-20 17:29:42 +02:00
Tobias Schlüter
7fd4d3123d re PR fortran/23420 (ICE on invalid print statement)
fortran/
	PR fortran/23420
	* io.c (resolve_tag): Don't allow non-CHARACTER constants as formats.
	(match_io): Fix usage of gfc_find_symbol.
testsuite/
	PR fortran/23420
	* gfortran.dg/print_fmt_4.f: New.

From-SVN: r104454
2005-09-20 17:05:32 +02:00
Jakub Jelinek
7a4ef45bf4 re PR fortran/23663 (rejects entry point as a value)
PR fortran/23663
	* primary.c (match_actual_arg): Handle ENTRY the same way
	as FUNCTION.

	* gfortran.fortran-torture/execute/entry_11.f90: New test.

From-SVN: r104453
2005-09-20 16:37:44 +02:00
Daniel Berlin
416f403e61 tree-data-ref.c (get_number_of_iters_for_loop): New function.
2005-09-18  Daniel Berlin  <dberlin@dberlin.org>

	* tree-data-ref.c (get_number_of_iters_for_loop): New function.
	(analyze_siv_subscript_cst_affine): Add weak SIV test.
	(compute_overlap_steps_for_affine_1_2): Use
	get_number_of_iters_for_loop.
	(analyze_subscript_affine_affine): Check whether difference is
	zero first.
	Use get_number_of_iters_for_loop.
	Check whether overlap occurs outside of bounds.
	(analyze_miv_subscript): Use get_number_of_iters_for_loop.

From-SVN: r104451
2005-09-20 13:59:38 +00:00
Dorit Nuzman
1c95fbad89 vect-40.c: Remove pointers to "aligned types".
* gcc.dg/vect/vect-40.c: Remove pointers to "aligned types".
        Use pointers to local alignable arrays instead. Added comments.
        * gcc.dg/vect/vect-46.c: Likewise.
        * gcc.dg/vect/vect-48.c: Likewise.
        * gcc.dg/vect/vect-49.c: Likewise.
        * gcc.dg/vect/vect-52.c: Likewise.
        * gcc.dg/vect/vect-53.c: Likewise.
        * gcc.dg/vect/vect-54.c: Likewise.
        * gcc.dg/vect/vect-56.c: Likewise.
        * gcc.dg/vect/vect-57.c: Likewise.
        * gcc.dg/vect/vect-58.c: Likewise.
        * gcc.dg/vect/vect-60.c: Likewise.
        * gcc.dg/vect/vect-61.c: Likewise.

        * gcc.dg/vect/vect-42.c: Remove pointers to "aligned types".
        The test is no longer vectorizable on vect_no_align targets.
        * gcc.dg/vect/vect-43.c: Likewsie.

        * gcc.dg/vect/vect-44.c: Added comments.
        * gcc.dg/vect/vect-45.c: Added comments.
        * gcc.dg/vect/vect-50.c: Added comments.
        * gcc.dg/vect/vect-51.c: Added comments.

        * gcc.dg/vect/vect-95.c: Use aligned arrays instead of arrays to
        aligned type.
        * gcc.dg/vect/Os-vect-95.c: Likewise.

        * gcc.dg/vect/vect-41.c: Test removed.
        * gcc.dg/vect/vect-47.c: Test removed.
        * gcc.dg/vect/vect-55.c: Test removed.
        * gcc.dg/vect/vect-59.c: Test removed.

From-SVN: r104448
2005-09-20 08:12:46 +00:00
Andreas Krebbel
39278c14cc tree-ssa-address.c (create_mem_ref): Put the symbol reference into the base register if possible.
2005-09-20  Andreas Krebbel  <krebbel1@de.ibm.com>

	* tree-ssa-address.c (create_mem_ref): Put the symbol reference into the
	base register if possible.

From-SVN: r104446
2005-09-20 07:53:11 +00:00
Dorit Nuzman
a417b48268 pr16105.c: Replace "aligned types" with regular types.
* gcc.dg/vect/pr16105.c: Replace "aligned types" with regular types.
        No longer vectorizable on vect_no_align targets.
        * gcc.dg/vect/pr20122.c: Likewise.
        * gcc.dg/vect/vect-74.c: Likewise.
        * gcc.dg/vect/vect-75.c: Likewise.
        * gcc.dg/vect/vect-76.c: Likewise.

        * gcc.dg/vect/vect-37.c: Replace "aligned types" with regular types.
        Will not be vectorizable on vect_no_align targets once aliasing issues
        are resolved.
        * gcc.dg/vect/vect-79.c: Likewise.

        * gcc.dg/vect/vect-77.c: Replace "aligned types" with regular types.
        * gcc.dg/vect/vect-78.c: Likewise.
        * gcc.dg/vect/vect-97.c: Likewise.

From-SVN: r104445
2005-09-20 07:40:41 +00:00
Andreas Jaeger
da8f5fd92e * socket.c: Add string.h for memcpy.
From-SVN: r104444
2005-09-20 09:23:46 +02:00
Zdenek Dvorak
2282a0e6d4 re PR tree-optimization/18463 (suboptimal use of fancy x86 addressing modes)
PR tree-optimization/18463
	* tree-chrec.c (chrec_convert): Return fold_converted chrec if
	converting it directly is not possible.
	(chrec_convert_aggressive): New function.
	* tree-chrec.h (chrec_convert_aggressive): Declare.
	* tree-scalar-evolution.c (instantiate_parameters_1, resolve_mixers):
	Fold chrec conversions aggressively if asked to.
	(instantiate_parameters): Modified because of changes in
	instantiate_parameters_1.

From-SVN: r104443
2005-09-20 07:09:20 +00:00
David Edelsohn
3a3c28db24 configure.in (powerpc-*-aix*): Add target-libssp to noconfigdirs.
* configure.in (powerpc-*-aix*): Add target-libssp to noconfigdirs.
        (rs6000-*-aix*): Same.
        * configure: Regenerate.

From-SVN: r104439
2005-09-19 21:24:46 -04:00
GCC Administrator
bd50a8c5a9 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104435.2
2005-09-20 00:16:19 +00:00
Richard Henderson
e20524fa80 sse.md (reduc_splus_v4sf): Rename from reduc_plus_v4sf.
* config/i386/sse.md (reduc_splus_v4sf): Rename from reduc_plus_v4sf.
        (reduc_splus_v2df): New.

From-SVN: r104432
2005-09-19 12:22:10 -07:00
Richard Sandiford
20de58d91e aof.h (REGISTER_NAMES): Add missing backslash.
* config/arm/aof.h (REGISTER_NAMES): Add missing backslash.
	(ADDITIONAL_REGISTER_NAMES): Add missing comma.  Remove final comma.

From-SVN: r104430
2005-09-19 18:27:17 +00:00
Richard Henderson
2a23f9a7c5 sse.md (vcondu<SSEMODE124>): Rename from vcondu<SSEMODE12>.
* config/i386/sse.md (vcondu<SSEMODE124>): Rename from
        vcondu<SSEMODE12>.

From-SVN: r104429
2005-09-19 10:31:38 -07:00
Richard Henderson
e898620c39 ia64.c (ia64_expand_widen_sum): New.
* config/ia64/ia64.c (ia64_expand_widen_sum): New.
        (ia64_expand_dot_prod_v8qi): New.
        * config/ia64/ia64-protos.h: Update.
        * config/ia64/vect.md (pmpy2_r, pmpy2_l, widen_usumv8qi3,
        widen_usumv4hi3, widen_ssumv8qi3, widen_ssumv4hi3, udot_prodv8qi,
        sdot_prodv8qi, sdot_prodv4hi): New.
        (reduc_splus_v2sf): Rename from reduc_plus_v2sf.

From-SVN: r104426
2005-09-19 10:20:02 -07:00
Richard Henderson
a220ee348d alpha.c (alpha_rtx_costs): Cost 0 for a memory source.
* config/alpha/alpha.c (alpha_rtx_costs) <FLOAT_EXTEND>: Cost 0
        for a memory source.

From-SVN: r104425
2005-09-19 10:05:44 -07:00
Richard Henderson
d289e37a26 re PR rtl-optimization/23941 (compress_float_constant creates denormals)
PR 23941
        * real.c (exact_real_truncate): Return false if the format cannot
        represent the number as a normal.

From-SVN: r104424
2005-09-19 10:01:40 -07:00
Dorit Nuzman
3c7d0735f5 tree-ssa-operands.c (swap_tree_operands): Export.
* tree-ssa-operands.c (swap_tree_operands): Export.
        * tree.h (swap_tree_operands): Declare.
        * tree-vectorizer.c (vect_is_simple_reduction): Remove ATTRIBUTE_UNUSED.
        Call swap_tree_operands.

From-SVN: r104421
2005-09-19 14:54:28 +00:00
Richard Henderson
99c09897c2 tree-flow.h (merge_alias_info): Declare.
* tree-flow.h (merge_alias_info): Declare.
        * tree-ssa-copy.c (merge_alias_info): Export.
        * tree-vect-transform.c (vect_create_index_for_vector_ref): Remove.
        (vect_create_data_ref_ptr): Use create_iv directly.
        (vectorizable_load): Use correct types for integer constants.
        (vect_generate_tmps_on_preheader): Likewise.
        (vect_gen_niters_for_prolog_loop): Likewise.

From-SVN: r104418
2005-09-19 02:02:23 -07:00
Steven Bosscher
31c304baef re PR rtl-optimization/23943 (segv in side_effects_p())
gcc/
	PR rtl-optimization/23943
	* cse.c (find_best_addr): Never propagate an EXPR_LIST rtx.

testsuite/
	* gcc.dg/pr23943.c: New test.

From-SVN: r104413
2005-09-19 05:04:58 +00:00
GCC Administrator
02c375d90d Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104409.2
2005-09-19 00:16:15 +00:00
James A. Morrison
c298ec4e20 builtins.c (max_builtin, [...]): Use fold_buildN.
2005-09-18  James A. Morrison  <phython@gcc.gnu.org>

        * builtins.c (max_builtin, min_builtin, abs_builtin,
        java_build_function_call_expr): Use fold_buildN.
        * class.c (layout_class_method): Likewise.
        * expr.c (java_truthvalue_conversion, build_java_jsr,
        build_java_arrayaccess, expand_java_arrayload, expand_iinc,
        build_java_binop, build_field_ref, expand_compare,
        build_known_method_ref, build_invokevirtual,
        process_jvm_instruction): Likewise.
        * parse.y (patch_binop, patch_exit_expr): Likewise.
        * typeck.c (convert_ieee_real_to_integer): Likewise.
        (convert): Don't call fold after convert_ieee_real_to_integer.

From-SVN: r104407
2005-09-18 19:10:15 +00:00
Francois-Xavier Coudert
2c05c0dad5 * Make-lang.in: Make check-fortran alias for check-gfortran.
From-SVN: r104406
2005-09-18 17:33:40 +00:00
Jan Hubicka
e238ccac47 * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK.
From-SVN: r104405
2005-09-18 17:14:24 +00:00
Eric Botcazou
f7952e0ac2 varasm.c (output_constant): Do not abort on conversions to union types between different sizes.
* varasm.c (output_constant): Do not abort on conversions to union
	types between different sizes.

From-SVN: r104404
2005-09-18 17:11:11 +00:00
Paul Thomas
30bf3b40e6 re PR fortran/19181 (ICE and segmentation fault with pointer member in user defined type)
2005-09-18  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/19181
	* gfortran.dg/derived_pointer_null_1.f90: New test.

From-SVN: r104403
2005-09-18 15:58:58 +00:00
Richard Guenther
c295372571 re PR middle-end/23944 (segv in fold_indirect_ref_1 in fold-const.c:11505)
2005-09-18  Richard Guenther  <rguenther@suse.de>

	PR middle-end/23944
	* gimplify.c (fold_indirect_ref_rhs): Fix thinko in
	fallback.

	* gcc.c-torture/compile/pr23944.c: New testcase.

From-SVN: r104402
2005-09-18 14:15:19 +00:00
Paolo Carlini
3d480e2f81 PR libstdc++/23417 (cont)
2005-09-18  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/23417 (cont)
	* include/bits/stl_tree.h (_Rb_tree_impl<true>): Use member
	initialization list for -Weffc++.

From-SVN: r104401
2005-09-18 13:39:25 +00:00
Andreas Jaeger
1ed09f0225 module.c (read_module): Add missed line from last patch.
2005-09-18  Andreas Jaeger  <aj@suse.de>

	* module.c (read_module): Add missed line from last patch.

From-SVN: r104391
2005-09-18 09:51:04 +02:00
Erik Edelmann
630b708642 re PR fortran/15975 ([4.0 only] ICE in trans-array.c pointer array initialization stuff)
2005-09-18  Erik Edelmann  <erik.edelmann@iki.fi>

	PR fortran/15975
	* resolve.c (resolve_symbol): Don't assign default
	initializer to pointers.

2005-09-18  Erik Edelmann  <erik.edelmann@iki.fi>

	PR fortran/15975
	* gfortran.dg/der_pointer_2.f90: New test.

From-SVN: r104389
2005-09-18 05:50:04 +00:00
Paul Thomas
6cda231ed9 re PR fortran/16861 ([4.0 only] segfault with doubly used module)
2005-09-18  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/16861
	* module.c (read_module): Give symbols from module procedures
	different true_name entries to those from the module proper.

2005-09-18  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/16861
	* gfortran.dg/nested_modules_2.f90: New test.

From-SVN: r104388
2005-09-18 05:18:54 +00:00
GCC Administrator
b695055179 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104385.2
2005-09-18 00:16:15 +00:00
Paul Brook
798d7d9d13 fpgnuib.c (__floatsidf): Don't rely on signed overflow.
2005-09-18  Paul Brook  <paul@codesourcery.com>

	* config/m68k/fpgnuib.c (__floatsidf): Don't rely on signed overflow.

From-SVN: r104383
2005-09-18 00:11:30 +00:00
Richard Henderson
b1e8be1060 tree-pass.h, [...]: Revert last change.
* tree-pass.h, tree-flow.h, tree-ssa-dce.c: Revert last change.
        * tree-ssa-loop.c (pass_vect_dce): Remove.
        * passes.c (init_optimization_passes): Add pass_dce as a sub-pass
        of pass_vectorize.

From-SVN: r104382
2005-09-17 17:03:26 -07:00
David Edelsohn
5e839bc820 Add comment to expand_mult max_cost change.
From-SVN: r104379
2005-09-17 19:08:03 -04:00
Volker Reichelt
579ad6bf42 re PR c++/18368 (C++ error message regression)
PR c++/18368
	* g++.dg/other/semicolon.C: New test.

From-SVN: r104378
2005-09-17 22:05:39 +00:00
Richard Henderson
8fe07c4206 tree-pass.h (pass_vect_dce): Declare.
* tree-pass.h (pass_vect_dce): Declare.
        * passes.c (init_optimization_passes): Add it.
        * tree-flow.h (tree_ssa_dce): Declare.
        * tree-ssa-dce.c (tree_ssa_dce): Export.
        * tree-ssa-loop.c (tree_vectorize): Move current_loops check ...
        (gate_tree_vectorize): ... here.
        (pass_vect_dce): New.

From-SVN: r104376
2005-09-17 14:46:20 -07:00
Jan Hubicka
0856ee98d3 except.c (struct eh_status): Turn region_array into vec.
2005-09-17  Jan Hubicka  <jh@suse.cz>

	* except.c (struct eh_status): Turn region_array into vec.
	(expand_resx_expr, collect_eh_region_array, remove_unreachable_regions,
	convert_from_eh_region_ranges, find_exception_handler_labels,
	current_function_has_exception_handlers, assign_filter_values,
	build_post_landing_pads, dw2_build_landing_pads,
	sjlj_find_directly_reachable_regions, sjlj_mark_call_sites,
	sjlj_emit_dispatch_table, remove_eh_handler, for_each_eh_region,
	foreach_reachable_handler, can_throw_internal_1,
	convert_to_eh_region_ranges, verify_eh_tree): Update uses of
	region_array.
	(duplicate_eh_region_1): Update region_array.
	(duplicate_eh_regions): Resize region_array and avoid recomputing.

From-SVN: r104375
2005-09-17 20:58:14 +00:00
David Edelsohn
53c4ca47ae re PR middle-end/22067 (Inconsistent multiply by immediate)
PR middle-end/22067
        * expmed.c (expand_mult): Substitute simple register for op0 when
        computing max_cost.

From-SVN: r104373
2005-09-17 16:17:54 -04:00
Francois-Xavier Coudert
31043f6cfc re PR fortran/15586 (gfortran should support i18n in its compiler messages)
PR fortran/15586

	* arith.c (gfc_arith_error): Add translation support
	for error messages.
	* array.c (gfc_match_array_ref): Likewise.
	(gfc_match_array_spec): Likewise.
	* check.c (must_be): Add msgid convention to third argument.
	(same_type_check): Add translation support for error message.
	(rank_check): Likewise.
	(kind_value_check): Likewise.
	(gfc_check_associated): Correct typo.
	(gfc_check_reshape): Add translation support for error message.
	(gfc_check_spread): Likewise.
	* error.c (error_printf): Add nocmsgid convention to argument.
	(gfc_warning, gfc_notify_std, gfc_warning_now, gfc_warning_check)
	(gfc_error, gfc_error_now): Likewise.
	(gfc_status): Add cmsgid convention to argument.
	* expr.c (gfc_extract_int): Add translation support
        for error messages.
	(gfc_check_conformance): Add msgid convention to argument.
	(gfc_check_pointer_assign): Correct tabbing.
	* gfortran.h: Include intl.h header. Remove prototype
	for gfc_article.
	* gfortranspec.c: Include intl.h header.
	(lang_specific_driver): Add translation support for --version.
	* io.c (check_format): Add translation support for
	error message.
	(format_item_1): Likewise.
	(data_desc): Likewise.
	* matchexp.c: Likewise.
	* misc.c (gfc_article): Remove function.
	* module.c (bad_module): Use msgid convention. Add
	translation support for error messages.
	(require_atom): Add translation support for error messages.
	* parse.c (gfc_ascii_statement): Likewise.
	(gfc_state_name): Likewise.
	* primary.c (match_boz_constant): Reorganise error
	messages for translations.
	* resolve.c (resolve_entries): Likewise.
	(resolve_operator): Add translation support for error messages.
	(gfc_resolve_expr): Use msgid convention. Reorganise error
        messages for translations.
	(resolve_symbol): Add translation support for error messages.
	* symbol.c (gfc_add_procedure): Remove use of gfc_article function.
	* trans-const.c (gfc_build_string_const): Use msgid convention.

	* exgettext: Add a new nocmsgid convention for arguments
	that should be marked as no-c-format.
	* gcc.pot: Regenerate.

From-SVN: r104372
2005-09-17 18:58:01 +00:00
Richard Henderson
652b0932d7 expr.c (emit_move_via_integer): Add force argument, pass it on to emit_move_change_mode.
* expr.c (emit_move_via_integer): Add force argument, pass it on
        to emit_move_change_mode.  Update callers.
        (emit_move_complex): Pass true to new force argument.
        * function.c (expand_function_end): Move expand_eh_return call
        earlier.  Merge sub-word complex values into a pseudo before
        copying to the return hard register.

From-SVN: r104371
2005-09-17 11:38:36 -07:00
H.J. Lu
3fb90446b4 jni.exp (gcj_jni_invocation_test_one): Use libjava_find_lib to find the proper libgcj.
2005-09-17  H.J. Lu  <hongjiu.lu@intel.com>

	* testsuite/libjava.jni/jni.exp (gcj_jni_invocation_test_one):
	Use libjava_find_lib to find the proper libgcj.

From-SVN: r104370
2005-09-17 11:12:43 -07:00
Eric Botcazou
69fcfd68ce varasm.c (output_constant): Do not abort on VIEW_CONVERT_EXPRs between different sizes.
* varasm.c (output_constant): Do not abort on VIEW_CONVERT_EXPRs
	between different sizes.

From-SVN: r104368
2005-09-17 08:30:23 +00:00
Anthony Green
a49701f9e0 Correction. Committed wrong patch earlier today.
From-SVN: r104367
2005-09-17 04:20:26 +00:00
GCC Administrator
ee2400e380 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104364.2
2005-09-17 00:16:14 +00:00
Joseph Myers
8d86a53261 huge-val1.C: Disable tests on values of HUGE_VAL...
* g++.dg/warn/huge-val1.C: Disable tests on values of HUGE_VAL,
	HUGE_VALF and HUGE_VALL unless __GLIBC__ is defined.

From-SVN: r104361
2005-09-17 01:03:15 +01:00