Commit Graph

97435 Commits

Author SHA1 Message Date
Jason Merrill
d35311a213 re PR middle-end/41611 (guard variable is emitted even when the guarded symbol isn't)
PR c++/41611
	* decl2.c (get_guard): Don't use the same comdat group as the decl.

From-SVN: r154965
2009-12-03 19:26:35 -05:00
Jason Merrill
4e3f6d8529 re PR c++/42266 ([C++0x] ICE with decltype and variadic templates)
PR c++/42266
	* cvt.c (convert_from_reference): Do nothing if TREE_TYPE is null.

From-SVN: r154964
2009-12-03 19:26:27 -05:00
GCC Administrator
8414ab1197 Daily bump.
From-SVN: r154963
2009-12-04 00:16:47 +00:00
Joseph Myers
6b34ab4104 * gcc.pot: Regenerate.
From-SVN: r154958
2009-12-03 21:30:23 +00:00
David Edelsohn
be311914b8 re PR libffi/42243 (powerpc-apple-darwin9 libffi failures)
PR libffi/42243
        * src/powerpc/ffi_darwin.c (ffi_prep_args): Remove extra parentheses.

From-SVN: r154956
2009-12-03 14:09:29 -05:00
Richard Guenther
154885548c cgraphunit.c (assemble_thunk): Use DECL_ASSEMBLER_NAME instead of DECL_NAME for the entry point.
2009-12-03  Richard Guenther  <rguenther@suse.de>

	* cgraphunit.c (assemble_thunk): Use DECL_ASSEMBLER_NAME
	instead of DECL_NAME for the entry point.

From-SVN: r154954
2009-12-03 16:06:03 +00:00
Jakub Jelinek
762de626f7 re PR middle-end/42049 (ICE with -O2 - internal compiler error: in expand_expr_real_1, at expr.c:9314)
PR middle-end/42049
	* builtins.c (expand_builtin_strcpy_args): Handle COMPOUND_EXPRs
	potentially returned from folding strcpy.

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

From-SVN: r154952
2009-12-03 16:34:56 +01:00
Eric Botcazou
80fa46179c exp_util.adb (Make_CW_Equivalent_Type): Set the Is_Class_Wide_Equivalent_Type flag here in lieu of...
* exp_util.adb (Make_CW_Equivalent_Type): Set the
	Is_Class_Wide_Equivalent_Type flag here in lieu of...
	(Make_Subtype_From_Expr): ...here.
	* exp_ch3.adb (Expand_Freeze_Record_Type): Do not set
	Has_Controlled_Component on class-wide equivalent types.
	* freeze.adb (Freeze_Record_Type): Likewise.
	* sem_ch3.adb (Record_Type_Definition): Likewise.

From-SVN: r154950
2009-12-03 15:10:58 +00:00
Richard Earnshaw
cf9eb56580 linux-atomic.c (SYNC_LOCK_RELEASE): Place memory barrier before the lock release.
* arm/linux-atomic.c (SYNC_LOCK_RELEASE): Place memory barrier
	before the lock release.

From-SVN: r154949
2009-12-03 14:26:46 +00:00
Paolo Carlini
bcaf576b83 re PR libstdc++/42261 (infinite recursion from string(string::size_type(6), string::size_type('f')))
2009-12-03  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42261
	* include/bits/basic_string.h (_S_construct_aux(_Integer, _Integer,
	const _Alloc&, __true_type)): Cast the second argument to value_type.
	* include/ext/sso_string_base.h (_M_construct_aux(_Integer, _Integer,
	std::__true_type)): Likewise.
	* include/ext/rc_string_base.h (_S_construct_aux(_Integer, _Integer,
	const _Alloc&, std::__true_type)): Likewise.
	* testsuite/21_strings/basic_string/cons/char/42261.cc: New.
	* testsuite/21_strings/basic_string/cons/wchar_t/42261.cc: Likewise.

From-SVN: r154948
2009-12-03 14:20:56 +00:00
Uros Bizjak
ddf6c18784 cls_longdouble_va.c (main): Fix format string.
* testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.
	Remove xfails for x86 linux targets.

From-SVN: r154946
2009-12-03 15:02:10 +01:00
Michael Matz
2bdbbe94ec re PR middle-end/38474 (compile time explosion in dataflow_set_preserve_mem_locs at -O3)
PR middle-end/38474
	* cfgexpand.c (struct stack_var): Add conflicts member.
	(stack_vars_conflict, stack_vars_conflict_alloc,
	n_stack_vars_conflict): Remove.
	(add_stack_var): Initialize conflicts member.
	(triangular_index, resize_stack_vars_conflict): Remove.
	(add_stack_var_conflict, stack_var_conflict_p): Rewrite in
	terms of new member.
	(union_stack_vars): Only run over the conflicts.
	(partition_stack_vars): Remove special case.
	(expand_used_vars_for_block): Don't call resize_stack_vars_conflict,
	don't create self-conflicts.
	(account_used_vars_for_block): Don't create any conflicts.
	(fini_vars_expansion): Free bitmaps, don't free or clear removed
	globals.

From-SVN: r154945
2009-12-03 13:36:32 +00:00
Bernd Schmidt
1f92467594 re PR middle-end/42202 (Revision 154688 caused many gfortran failures)
PR middle-end/42202
	* regrename.c (live_in_chains): New variable.
	(verify_reg_tracked): New static function.
	(scan_rtx_reg): Update live_in_chains.
	(scan_rtx): Only promote sets in COND_EXEC to OP_INOUT if
	we're already tracking the reg.
	(build_def_use): Likewise.  Initialize live_in_chains.

From-SVN: r154944
2009-12-03 12:58:30 +00:00
Ken Werner
75741fedc5 spu-elf.h (STARTFILE_SPEC): Add support for gprof startup files.
2009-12-03  Ken Werner  <ken.werner@de.ibm.com>

        * config/spu/spu-elf.h (STARTFILE_SPEC): Add support for gprof
        startup files.
        * config/spu/spu-protos.h (spu_function_profiler): Add prototype.
        * config/spu/spu.c (spu_function_profiler): New function.
        * config/spu/spu.h (FUNCTION_PROFILER): Invoke
        spu_function_profiler.
        (NO_PROFILE_COUNTERS): Define.
        (PROFILE_BEFORE_PROLOGUE): Likewise.

From-SVN: r154942
2009-12-03 11:47:11 +00:00
Uros Bizjak
a27c404027 cls_longdouble_va.c (main): Fix format string.
* testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.

From-SVN: r154941
2009-12-03 11:35:31 +01:00
Paolo Carlini
54d1aa1f64 ref.cc: Add.
2009-12-03  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/20_util/bind/ref.cc: Add.
	* testsuite/20_util/bind/all_bound.cc: Likewise.
	* testsuite/20_util/bind/nested.cc: Likewise.
	* testsuite/20_util/bind/placeholders.cc: Likewise.

From-SVN: r154939
2009-12-03 10:18:04 +00:00
Dodji Seketeli
84894f850f re PR c++/42217 (ICE with zero-length bit-field)
Fix PR c++/42217

gcc/cp/ChangeLog
	PR c++/42217
	* class.c (remove_zero_width_bit_fields): The width of the bit field is
	in DECL_SIZE, not in DECL_INITIAL.

gcc/testsuite/ChangeLog
	PR c++/42217
	* g++.dg/other/bitfield4.C: New test.

From-SVN: r154938
2009-12-03 09:33:03 +01:00
Jakub Jelinek
249ccaff22 re PR c++/42256 (483.xalancbmk fails to link)
PR c++/42256
	* optimize.c (maybe_clone_body): Call emit_associated_thunks
	after expand_or_defer_fn_1.

	* g++.dg/inherit/thunk11.C: New test.
	* g++.dg/inherit/thunk11.h: New file.
	* g++.dg/inherit/thunk11-aux.cc: New file.

From-SVN: r154937
2009-12-03 09:03:36 +01:00
Hans-Peter Nilsson
90df451fde mutex_extensions.cc: Adjust dg-error line number.
* testsuite/ext/profile/mutex_extensions.cc: Adjust dg-error line
	number.

From-SVN: r154936
2009-12-03 06:43:51 +00:00
Dave Korn
9957322df4 ggc-page.c (struct free_object): Pull definition out ...
* ggc-page.c (struct free_object): Pull definition out ...
	(struct globals): .. from here.

From-SVN: r154933
2009-12-03 02:04:16 +00:00
David Edelsohn
7837c24708 ffi_darwin.c (ffi_prep_args): Fix typo in INT64 case.
* src/powerpc/ffi_darwin.c (ffi_prep_args): Fix typo in INT64
        case.

From-SVN: r154932
2009-12-02 20:32:21 -05:00
GCC Administrator
315df37387 Daily bump.
From-SVN: r154931
2009-12-03 00:16:36 +00:00
Richard Guenther
793e86a71b fold-const.c (div_if_zero_remainder): Honor that sizetypes are sign-extending.
2009-12-02  Richard Guenther  <rguenther@suse.de>

	* fold-const.c (div_if_zero_remainder): Honor that sizetypes
	are sign-extending.  Simplify.

From-SVN: r154926
2009-12-02 22:49:43 +00:00
Richard Henderson
fc81a3692d re PR tree-optimization/42215 (internal compiler error: verify_stmts failed with -O2 -ftree-loop-distribution)
PR tree-opt/42215
        * tree-loop-distribution.c (build_size_arg_loc): Tidy.
        (generate_memset_zero): Convert to sizetype properly.  Tidy.

From-SVN: r154925
2009-12-02 14:35:21 -08:00
Richard Guenther
cdd0c4d3ff iinline-1.C: Adjust.
2009-12-02  Richard Guenther  <rguenther@suse.de>

	* g++.dg/ipa/iinline-1.C: Adjust.
	* g++.dg/template/cond2.C: Likewise.
	* g++.dg/template/pr35240.C: Likewise.

From-SVN: r154924
2009-12-02 20:33:25 +00:00
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