Commit Graph

97460 Commits

Author SHA1 Message Date
Richard Guenther 57e37d2645 lto-streamer-out.c (pack_ts_decl_common_value_fields): Do not pretend we have value exprs.
2009-12-02  Richard Guenther  <rguenther@suse.de>

	* lto-streamer-out.c (pack_ts_decl_common_value_fields):
	Do not pretend we have value exprs.

From-SVN: r154921
2009-12-02 19:35:37 +00:00
Richard Guenther 8e281a8d56 re PR middle-end/41491 (ICE in set_value_range, at tree-vrp.c:386)
2009-12-02  Richard Guenther  <rguenther@suse.de>

	PR middle-end/41491
	* fold-const.c (try_move_mult_to_index): Do not leak
	domain types into the IL.

From-SVN: r154920
2009-12-02 18:15:17 +00:00
Taras Glek 4b90314e2c parser.c (cp_parser_class_specifier): Back out my previous change.
* parser.c (cp_parser_class_specifier): Back out my previous change.
	* semantics.c (begin_class_definition): Back out my previous change.

From-SVN: r154919
2009-12-02 17:50:41 +00:00
Richard Guenther a881cad635 re PR lto/42088 (flag_gtoggle in free_lang_data hides -fcompare-debug errors)
2009-12-02  Richard Guenther  <rguenther@suse.de>

	PR middle-end/42088
	* tree.c (free_lang_data): Disable if not using LTO.

From-SVN: r154918
2009-12-02 17:13:51 +00:00
Paolo Carlini 29a8405af1 2009-12-02 Paolo Carlini <paolo.carlini@oracle.com>
* Adjust last ChangeLog entry, mention Make-lang.in.

From-SVN: r154916
2009-12-02 15:53:39 +00:00
Paolo Bonzini 4cd5a50a09 re PR c++/29917 (%s substituted with actual words can not be translated correctly (op_error))
2009-12-02  Paolo Bonzini  <bonzini@gnu.org>
	    Shujing Zhao  <pearly.zhao@oracle.com>

	PR c++/29917
	* call.c (op_error): Accept a boolean to indicate no match/ambiguous
	match, instead of a string. Callers adjusted.

	PR c++/34836
	* cp-tree.h (readonly_error_kind): New type.
	(readonly_error): Adjust prototype with new argument.
	* typeck2.c (readonly_error): Accept readonly_error_kind as argument
	and add macro ERROR_FOR_ASSIGNMENT to emit diagnostics.
	* semantics.c (finish_asm_stmt): Adjust readonly_error call.
	* typeck.c (cp_build_unary_op, cp_build_modify_expr): Likewise.

	* decl.c (grokparms, grok_op_properties): Put the diagnostics in full
	sentences for easy translation and wrap the diagnostics into G_() when
	needed.
	(create_array_type_for_decl): Likewise.
	* pt.c (tsubst): Likewise.
	* typeck2.c (cp_build_unary_op): Wrap diagnostic into _().
	* rtti.c (build_dynamic_cast_1): Likewise.

Co-Authored-By: Shujing Zhao <pearly.zhao@oracle.com>

From-SVN: r154915
2009-12-02 15:49:20 +00:00
Richard Guenther 2f697bc476 re PR middle-end/42229 (cancel_loop_tree: bad read causes ice)
2009-12-02  Richard Guenther  <rguenther@suse.de>

	PR middle-end/42229
	* cfgloopmanip.c (remove_path): Avoid cancelling loops
	twice.

From-SVN: r154914
2009-12-02 15:22:01 +00:00
Joseph Myers ca6f617420 * gcc.pot: Regenerate.
From-SVN: r154911
2009-12-02 14:25:46 +00:00
Joseph Myers 816e8a6ade * cpplib.pot: Regenerate.
From-SVN: r154910
2009-12-02 14:24:09 +00:00
Ulrich Weigand 0878660338 Forgot to add file with last commit.
From-SVN: r154909
2009-12-02 13:58:02 +00:00
Ulrich Weigand 368a05d55d re PR middle-end/42224 (32bit pointers to 32bit pointers abort on 64bit VMS and S390X)
gcc/
	PR middle-end/42224
	* tree.h (int_or_pointer_precision): Remove.
	* tree.c (int_or_pointer_precision): Remove.
	(integer_pow2p): Use TYPE_PRECISION instead.
	(tree_log2): Likewise.
	(tree_floor_log2): Likewise.
	(signed_or_unsigned_type_for): Likewise.
	* fold-const.c (fit_double_type): Likewise.
	* varasm.c (initializer_constant_valid_p): Likewise.

gcc/testsuite/
	PR middle-end/42224
	* gcc.target/s390/pr42224.c: New test.

From-SVN: r154908
2009-12-02 13:50:52 +00:00
Ira Rosen ca0b0bf89d invoke.texi (-fdump-tree-slp): Document.
* doc/invoke.texi (-fdump-tree-slp): Document.
	(-ftree-vectorizer-verbose): Update.
	(-ftree-slp-vectorize): Document.

From-SVN: r154907
2009-12-02 13:36:47 +00:00
Nick Clifton 2a14229d98 Oops - omitted this part of xstormy16 patch to use __clzhi2() instead of __stormy16_count_leading_zeros.
From-SVN: r154905
2009-12-02 11:15:50 +00:00
Nick Clifton dafcb54e42 rx.c (rx_conditional_register_usage): Do not warn if no fixed registers are available for interrupt handlers.
* config/rx/rx.c (rx_conditional_register_usage): Do not warn if
        no fixed registers are available for interrupt handlers.  Do not
        fix normal registers.
        (MUST_SAVE_ACC_REGISTER): New macro.
        (rx_get_stack_layout): Create a stack frame for fast interrupt
        handlers, if necessary.  Push extra registers if needed in order
        to save the accumulator.
        (rx_expand_prologue): Create a stack frame for fast interrupt
        handlers, if necessary.
        (rx_expand_builtin_mvfc): Handle the case where there is no
        target.

From-SVN: r154903
2009-12-02 10:59:04 +00:00
Janne Blomqvist 57cdf653e3 Typo in ChangeLog entry for PR fortran/42131
From-SVN: r154900
2009-12-02 11:22:50 +02:00
Jakub Jelinek db80e34e82 g++spec.c (lang_specific_driver): Remove unused saw_verbose_flag variable.
* g++spec.c (lang_specific_driver): Remove unused saw_verbose_flag
	variable.
	* pt.c (tsubst_pack_expansion): Remove unused first_arg_pack variable.
	* init.c (build_vec_init): Remove unused size variable.
	* typeck2.c (check_narrowing): Remove unused was_decl variable.
	* decl.c (poplevel): Remove unused tmp and real_functionbody
	variables.
	(decls_match): Remove unused tree_name variable.
	(start_decl): Remove unused type variable.
	* parser.c (cp_parser_type_parameter): Remove unused parameter_list
	variable.
	(cp_parser_template_id, cp_parser_explicit_instantiation,
	cp_parser_declarator): Remove unused token variable.
	(cp_parser_simple_type_specifier): Remove unused id variable.
	(cp_parser_parameter_declaration): Remove unused
	greater_than_is_operator_p variable.
	(cp_parser_check_declarator_template_parameters): Remove unused
	member variable.
	(c_parse_file): Remove unused error_occurred variable.
	* cp-gimplify.c (cp_gimplify_init_expr): Remove unused slot variable.
	* typeck.c (cp_build_function_call_vec): Remove unused name variable.
	* class.c (resolve_address_of_overloaded_function): Remove unused
	is_reference variable.
	(build_rtti_vtbl_entries): Remove unused basetype variable.
	* mangle.c (write_template_param): Remove unused parm_level and
	parm_type variables.

From-SVN: r154899
2009-12-02 09:39:10 +01:00
Sebastian Pop ab0e4a354d lzcount intrinsics.
* config/i386/abmintrin.h (__lzcnt16): New.
	(__lzcnt): New.
	(__lzcnt64): New.
	* config/i386/i386-builtin-types.def (UINT16_FTYPE_UINT16): New.
	* config/i386/i386.c (IX86_BUILTIN_CLZS): New.
	(bdesc_special_args): Add __builtin_clzs.
	(ix86_expand_args_builtin): Handle UINT16_FTYPE_UINT16.

From-SVN: r154895
2009-12-02 05:49:34 +00:00
Sebastian Pop 6a72cb46b2 ABM popcount intrinsics.
* config/i386/abmintrin.h (_mm_popcnt_u32): New.
	(_mm_popcnt_u64): New.

From-SVN: r154894
2009-12-02 05:48:18 +00:00
Sebastian Pop 13c0eb433c ABM intrinsics file.
* config/i386/abmintrin.h: New.
	 * config/i386/i386-c.c (ix86_target_macros_internal): Defined __ABM__.
	 * config/i386/x86intrin.h: Include abmintrin.h when __ABM__ is defined.

From-SVN: r154893
2009-12-02 05:47:26 +00:00
David Edelsohn 6d518d3b72 aix.S (ffi_call_AIX): Convert to more standard register usage.
* src/powerpc/aix.S (ffi_call_AIX): Convert to more standard
        register usage.  Call ffi_prep_args directly.  Add long double
        return value support.
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Double arg increment
        applies to FFI_TYPE_DOUBLE.  Correct fpr_base increment typo.
        Separate FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases.
        (ffi_prep_cif_machdep): Only 16 byte stack alignment in 64 bit
        mode.
        (ffi_closure_helper_DARWIN): Remove nf and ng counters.  Move temp
        into case.
        * src/powerpc/aix_closure.S: Maintain 16 byte stack alignment.
        Allocate result area between params and FPRs.

From-SVN: r154892
2009-12-01 23:21:08 -05:00
Taras Glek 5e87bf4a14 * parser.c (cp_parser_class_specifier): Set class location to that of IDENTIFIER_NODE instead of '{' when possible.\n* semantics.c (begin_class_definition): Do not overide locations with less precise ones.
From-SVN: r154890
2009-12-02 01:00:39 +00:00
GCC Administrator 9ffd118377 Daily bump.
From-SVN: r154889
2009-12-02 00:16:40 +00:00
Ben Elliston dcaec9662d natVMURLConnection.cc (guessContentTypeFromBuffer): Mark `bytes' and `valid' parameters as potentially unused.
* java/net/natVMURLConnection.cc (guessContentTypeFromBuffer):
	Mark `bytes' and `valid' parameters as potentially unused.

From-SVN: r154886
2009-12-02 09:05:25 +11:00
Jason Merrill 0735734176 re PR middle-end/41611 (guard variable is emitted even when the guarded symbol isn't)
PR c++/41611
	* decl2.c (get_guard): Copy DECL_COMDAT.
	(comdat_linkage): Set DECL_COMDAT unconditionally.

From-SVN: r154885
2009-12-01 16:58:04 -05:00
Uros Bizjak e4ad8df086 vperm-v4sf-1.c (dg-options): Use -msse.
* gcc.target/i386/vperm-v4sf-1.c (dg-options): Use -msse.

From-SVN: r154884
2009-12-01 22:56:40 +01:00
Uros Bizjak 79564f1e93 i386.md (SWI124): Rename from CRC32MODE.
* config/i386/i386.md (SWI124): Rename from CRC32MODE.
	(crc32modesuffix): Remove.
	(crc32modeconstraint): Ditto.
	(sse4_2_crc32<mode>): Update for renamed mode iterator.  Use
	imodesuffix instead of crc32modesuffix and <r>m instead of
	crc32modeconstraint.

From-SVN: r154882
2009-12-01 22:23:55 +01:00
Jakub Jelinek 24b3ff2c53 re PR c++/3187 (gcc lays down two copies of constructors)
PR c++/3187
	* optimize.c (cdtor_comdat_group): New function.
	(maybe_clone_body): Also optimize DECL_COMDAT base/complete cdtors
	and in that case put also the deleting dtor in the same comdat group
	as base and complete dtor if dtor is virtual.

From-SVN: r154880
2009-12-01 21:09:37 +01:00
Jakub Jelinek 4f2eb765d7 re PR debug/42234 (internal compiler error: verify_ssa failed)
PR c++/42234
	* tree-cfgcleanup.c (cleanup_omp_return): Don't ICE if control_bb
	contains no statements.

	* g++.dg/gomp/pr42234.C: New test.

From-SVN: r154878
2009-12-01 20:41:52 +01:00
Grigori Fursin 090fa0ab61 cgraphunit.c (plugin.h): Include.
2009-12-01  Grigori Fursin  <grigori.fursin@inria.fr>
            Joern Rennecke  <amylaar@spamcop.net>

        * cgraphunit.c (plugin.h): Include.
        (ipa_passes): Invoke PLUGIN_ALL_IPA_PASSES_START /
        PLUGIN_ALL_IPA_PASSES_END at start / end of processing.
        * gcc-plugin.h (highlev-plugin-common.h, hashtab.h): Include.
        (enum plugin_event): Define by including plugin.def.
        Last enumerator is now called PLUGIN_EVENT_FIRST_DYNAMIC.
        (plugin_event_name): Change type to const char **.
        (get_event_last, get_named_event_id, unregister_callback): Declare.
        (register_callback): Change type of event argument to int.
        (highlev-plugin-common.h): New file.
        * Makefile.in (GCC_PLUGIN_H): Add highlev-plugin-common.h and
        $(HASHTAB_H)
        (tree-optimize.o passes.o): Depend on $(PLUGIN_H).
        (PLUGIN_HEADERS): Add opts.h, $(PARAMS_H) and plugin.def.
        (s-header-vars): New rule.
        (install-plugin): Depend on s-header-vars.  Install b-header-vars.
        * params.c (get_num_compiler_params): New function.
        * params.h (get_num_compiler_params): Declare.
        * passes.c (plugin.h): Include.
        (make_pass_instance): Invoke PLUGIN_NEW_PASS.
        (do_per_function_toporder, pass_init_dump_file): No longer static.
        (pass_fini_dump_file): Likewise.
        (execute_one_pass): Likewise.  Invoke PLUGIN_OVERRIDE_GATE and
        PLUGIN_PASS_EXECUTION.
        (execute_ipa_pass_list): Invoke PLUGIN_EARLY_GIMPLE_PASSES_START and
        PLUGIN_EARLY_GIMPLE_PASSES_END.
        * plugin.c (plugin_event_name_init): New array, defined by
        including plugin.def.
        (FMT_FOR_PLUGIN_EVENT): Update.
        (plugin_event_name): Change type to const char ** and initialize
        to plugin_event_name_init.
        (event_tab, event_last, event_horizon): New variable.
        (get_event_last): New function.
        (plugin_callbacks_init): New array.
        (plugin_callbacks: Change type to struct callback_info **.
        Initialize to plugin_callbacks_init.
        (htab_event_eq, get_named_event_id, unregister_callback): New function.
        (invoke_plugin_va_callbacks): Likewise.
        (register_callback): Change type of event argument to int.
        Handle new events.  Allow dynamic events.
        (invoke_plugin_callbacks): Likewise.  Return success status.
        (plugins_active_p): Allow dynamic callbacks.
        * plugin.def: New file.
        * plugin.h (invoke_plugin_callbacks): Update prototype.
        (invoke_plugin_va_callbacks): Declare.
        * tree-optimize.c (plugin.h): Include.
        (tree_rest_of_compilation): Invoke PLUGIN_ALL_PASSES_START and
        PLUGIN_ALL_PASSES_END.
        * tree-pass.h (execute_one_pass, pass_init_dump_file): Declare.
        (pass_fini_dump_file, do_per_function_toporder): Likewise.
        * doc/plugin.texi: Document new event types.

Co-Authored-By: Joern Rennecke <amylaar@spamcop.net>

From-SVN: r154877
2009-12-01 19:12:29 +00:00
Janne Blomqvist d0d565e1b0 PR fortran/42131 Sign test using ternary operator
From-SVN: r154876
2009-12-01 20:32:37 +02:00
Martin Jambor d557591da1 re PR tree-optimization/42237 (internal compiler error: verify_stmts failed)
2009-12-01  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/42237
	* tree-sra.c (sra_ipa_modify_assign): Split gimple_reg_type assignments
	in between references into two.

	* testsuite/gcc.c-torture/compile/pr42237.c: New test.

From-SVN: r154874
2009-12-01 18:39:44 +01:00
Richard Guenther ee0192a223 tree-inline.c (copy_tree_body_r): Do not set TREE_BLOCK to the block of the call when remapping a type.
2009-12-01  Richard Guenther  <rguenther@suse.de>

	* tree-inline.c (copy_tree_body_r): Do not set TREE_BLOCK
	to the block of the call when remapping a type.

From-SVN: r154873
2009-12-01 14:22:50 +00:00
Martin Jambor 6009ee7b41 cgraph.h (struct cgraph_edge): Reorder fields.
2009-12-01  Martin Jambor  <mjambor@suse.cz>

        * cgraph.h (struct cgraph_edge): Reorder fields.  Make loop_nest
	unsigned short int.
	* ipa-prop.h (struct ipa_param_call_note): Likewise.
	* ipa-prop.c (ipa_note_param_call): Initialize note->loop_nest.

From-SVN: r154872
2009-12-01 11:51:07 +01:00
Pascal Obry b27dc43154 s-osprim-mingw.adb (Get_Base_Time): Make sure that the base time is taken at a clock tick boundary.
2009-12-01  Pascal Obry  <obry@adacore.com>

	* s-osprim-mingw.adb (Get_Base_Time): Make sure that the base time is
	taken at a clock tick boundary.

From-SVN: r154871
2009-12-01 11:29:57 +01:00
Arnaud Charlet 4f08579c5e [multiple changes]
2009-12-01  Thomas Quinot  <quinot@adacore.com>

	* g-sechas.ads (GNAT.Secure_Hashes.H."=" on Context): Make abstract.

2009-12-01  Matthew Gingell  <gingell@adacore.com>

	* adadecode.c: Allow compilation when building the run time in the gnat
	runtime.
	(__gnat_decode): Strip the .nnnn suffix from names of nested functions.

	* gcc-interface/Makefile.in: Ada adadecode to LIBGNAT_SRCS and
	LIBGNAT_OBJS.

2009-12-01  Vincent Celier  <celier@adacore.com>

	* gnatcmd.adb (Check_Files): Quote the path names as they may include
	spaces.

2009-12-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Analyze_Object_Declaration): If the defining identifier
	has already been declared, it may have been rewritten as a renaming
	declaration.

From-SVN: r154870
2009-12-01 11:24:39 +01:00
Richard Guenther c7ba0cfb61 final.c (rest_of_clean_state): If -fcompare-debug is given dump final insns without UIDs.
2009-12-01  Richard Guenther  <rguenther@suse.de>

	* final.c (rest_of_clean_state): If -fcompare-debug is
	given dump final insns without UIDs.
	* tree-ssa-live.c (remove_unused_scope_block_p): Remove
	after_inlining checks.

From-SVN: r154869
2009-12-01 10:02:24 +00:00
Arnaud Charlet b7d5e87b07 [multiple changes]
2009-12-01  Ed Schonberg  <schonberg@adacore.com>

	* einfo.ads: Clarify use of Is_Private_Primitive.
	* sem_ch6.adb (Analyze_Subprogram_Declaration): An operation is a
	private primitive operation only if it is declared in the scope of the
	private controlling type.
	* exp_ch9.adb (Build_Wrapper_Spec): Build wrappers for private
	protected operations as well.

2009-12-01  Arnaud Charlet  <charlet@adacore.com>

	* gnat1drv.adb (Adjust_Global_Switches): Disable front-end
	optimizations in CodePeer mode, to keep the tree as close to the source
	code as possible, and also to avoid inconsistencies between trees when
	using different optimization switches.

2009-12-01  Thomas Quinot  <quinot@adacore.com>

	* scos.ads: Updated specification of source coverage obligation
	information.

2009-12-01  Thomas Quinot  <quinot@adacore.com>

	* g-sercom.ads, g-sercom-mingw.adb, g-sercom-linux.adb,
	a-ststio.adb, s-commun.adb, s-commun.ads, g-socket.adb,
	g-socket.ads (System.Communications.Last_Index): For the case where no
	element has been transferred and Item'First =
	Stream_Element_Offset'First, raise CONSTRAINT_ERROR.

2009-12-01  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch10.adb (Install_Siblings): A private with_clause on some child
	unit U in an ancestor of the current unit must be ignored if the
	current unit has a regular with_clause on U.

From-SVN: r154868
2009-12-01 10:52:51 +01:00
Paolo Carlini acb85bea1d re PR c++/42057 (ICE with invalid parameter of virtual function)
2009-12-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/42057
	* g++.dg/parse/crash54.C: New.

From-SVN: r154865
2009-12-01 09:19:47 +00:00
Chao-ying Fu 30093f0492 dsp-lhx.c: New test.
2009-11-30  Chao-ying Fu  <fu@mips.com>

	* gcc.target/mips/dsp-lhx.c: New test.
	* gcc.target/mips/dsp-no-lhx.c: New test.

From-SVN: r154862
2009-12-01 01:40:28 +00:00
Chao-ying Fu b5290908a2 mips-dsp.md (mips_lhx_<mode>): Use sign_extend.
2009-11-30  Chao-ying Fu  <fu@mips.com>

	* config/mips/mips-dsp.md (mips_lhx_<mode>): Use sign_extend.

From-SVN: r154861
2009-12-01 01:37:52 +00:00
GCC Administrator 4643ee6160 Daily bump.
From-SVN: r154859
2009-12-01 00:16:42 +00:00
Dave Korn 14c4d1271e libstdc++.exp (libstdc++_init): Add host-dependent settings for LC_ALL and LANG.
2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* testsuite/lib/libstdc++.exp (libstdc++_init): Add host-dependent
	settings for LC_ALL and LANG.

From-SVN: r154856
2009-12-01 00:09:30 +00:00
David Edelsohn 5751cf6fef re PR libffi/35484 (libffi doesn't support AIX 64bit)
2009-11-30  David Edelsohn  <edelsohn@gnu.org>

        PR target/35484
        * src/powerpc/ffitarget.h (POWERPC64): Define for PPC64 Linux and
        AIX64.
        * src/powerpc/aix.S: Implement AIX64 version.
        * src/powerpc/aix_closure.S: Implement AIX64 version.
        (ffi_closure_ASM): Use extsb, lha and displament addresses.
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Implement AIX64
        support.
        (ffi_prep_cif_machdep): Same.
        (ffi_call): Same.
        (ffi_closure_helper_DARWIN): Same.

From-SVN: r154855
2009-11-30 18:34:33 -05:00
Dave Korn 17f35e2332 libgomp.exp (libgomp_init): Add host-dependent settings for LC_ALL and LANG.
libgomp/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* testsuite/lib/libgomp.exp (libgomp_init): Add host-dependent
	settings for LC_ALL and LANG.

gcc/testsuite/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* lib/g++.exp (g++_init): Add host-dependent settings for
	LC_ALL and LANG.
	* lib/gcc-dg.exp: Likewise.
	* lib/options.exp: Likewise.
	* lib/objc.exp (objc_init): Likewise.
	* lib/gfortran.exp (gfortran_init): Likewise.

libjava/ChangeLog

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* testsuite/lib/libjava.exp (libjava_init):  Add host-dependent
	settings for LC_ALL and LANG.

From-SVN: r154854
2009-11-30 23:30:57 +00:00
Dave Korn f7e413e2d4 configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
gcc/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect
	status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
	* configure: Regenerate.
	* config.in: Regenerate.

	* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Define list of --wrap
	options for Cygwin DLL libstdc++ support wrappers.
	(CXX_WRAP_SPEC_OPT): Define spec to use wrappers or not by default
	according to defined value of USE_CYGWIN_LIBSTDCXX_WRAPPERS.
	(CXX_WRAP_SPEC): Define entire wrapper spec in or out according to
	whether USE_CYGWIN_LIBSTDCXX_WRAPPERS is even defined or not.
	(LINK_SPEC): Include CXX_WRAP_SPEC.
	* gcc/config/i386/winnt.c (wrapper_strcmp): New qsort helper function.
	(i386_find_on_wrapper_list): Check if a function is found on the list
	of libstdc++ wrapper options.
	(i386_pe_file_end): If we are importing a wrapped function, also emit
	an external declaration for the real version.
	* config/i386/cygming.opt (muse-libstdc-wrappers): New option for
	Cygwin targets. Update copyright year.

libstdc++-v3/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

	* libstdc++-v3/acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Don't disable
	on PE targets.
	* libstdc++-v3/configure: Regenerate.
	* libstdc++-v3/configure.host: Add libtool DLL options for Cygwin
	and MinGW platforms.

	* libstdc++-v3/include/bits/c++config (_GLIBCXX_VISIBILITY_ATTR): On
	platforms that don't support visibility, allow them to declare a macro
	_GLIBCXX_PSEUDO_VISIBILITY that is applied in place of visibility.
	(_GLIBCXX_PSEUDO_VISIBILITY): Supply empty default if not declared by
	CPU- or OS-specific headers.

	* libstdc++-v3/config/os/newlib/os_defines.h
	(_GLIBCXX_PSEUDO_VISIBILITY_default): New macro for dllimport.
	(_GLIBCXX_PSEUDO_VISIBILITY_hidden): New empty macro.
	(_GLIBCXX_PSEUDO_VISIBILITY): Evaluate to one of the above.
	* libstdc++-v3/config/os/mingw32/os_defines.h
	(_GLIBCXX_PSEUDO_VISIBILITY_default,
	_GLIBCXX_PSEUDO_VISIBILITY_hidden,
	_GLIBCXX_PSEUDO_VISIBILITY): Likewise.

From-SVN: r154853
2009-11-30 23:22:04 +00:00
Paolo Carlini 9c39ceab1a re PR c++/40371 (ICE with template operator)
cp/
2009-11-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/40371
	* call.c (add_template_candidate_real): Early return NULL if
	the arglist length is smaller than skip_without_in_chrg; tidy.

testsuite/
2009-11-30  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/40371
	* g++.dg/template/crash93.C: New.

From-SVN: r154852
2009-11-30 22:45:06 +00:00
Alexander Monakov ed807d06d9 Correct testcase
2009-11-29  Alexander Monakov <amonakov@gcc.gnu.org>

	* testsuite/g++.dg/graphite/pr42130.C: Correct testcase.

From-SVN: r154851
2009-11-30 22:08:35 +00:00
Tobias Grosser 7c246f5e3b Fix comments.
2009-11-24  Tobias Grosser  <grosser@fim.uni-passau.de>

	* graphite-clast-to-gimple.c (try_mark_loop_parallel,
	graphite_create_new_loop_guard, translate_clast_for): Fix comments.

From-SVN: r154850
2009-11-30 22:08:16 +00:00
Tobias Grosser 0dd91484ec Protect loops that might be executed zero times.
2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

	PR middle-end/42130
	* graphite-clast-to-gimple.c (graphite_create_new_loop_guard,
	translate_clast_for_loop): New.
	(translate_clast_for): Add a condition around the loop, to do not
	execute loops with zero iterations.
	* testsuite/g++.dg/graphite/pr42130.C: New.
	* testsuite/gcc.dg/graphite/pr35356-2.c: Adapt.

From-SVN: r154849
2009-11-30 22:07:59 +00:00
Tobias Grosser fd2d813d0c Remove context_loop and level from translate_clast_* methods.
2009-11-23  Tobias Grosser  <grosser@fim.uni-passau.de>

	* graphite-clast-to-gimple.c (try_mark_loop_parallel): New.
	(translate_clast_for, translate_clast_guard, translate_clast, gloog):
	Remove context_loop and level.

From-SVN: r154848
2009-11-30 22:07:38 +00:00