Commit graph

114289 commits

Author SHA1 Message Date
Jason Merrill
10574a9f5c re PR c++/51461 ([c++0x] [4.7 Regression] ICE with invalid initialization of static data member)
PR c++/51461
	* decl.c (check_static_variable_definition): Check COMPLETE_TYPE_P
	before literal_type_p.

From-SVN: r182415
2011-12-16 17:34:49 -05:00
Jason Merrill
a8c1d89997 re PR c++/51331 (bad code generated when explicitly calling auto-generated constructor of virtual base)
PR c++/51331
	* class.c (convert_to_base_statically): Just call
	build_simple_base_path.
	(build_simple_base_path): Check field offset.

From-SVN: r182414
2011-12-16 17:34:39 -05:00
Jakub Jelinek
20fb2c13c1 re PR testsuite/50803 (FAIL: gcc.dg/ipa/inline-5.c scan-ipa-dump-times inline "Will be eliminated" 4)
PR testsuite/50803
	* gcc.dg/ipa/inline-5.c: XFAIL for 32-bit hppa.

From-SVN: r182411
2011-12-16 21:16:23 +01:00
Kai Tietz
2ecb85c86b re PR target/51135 (SIGSEGV during exception cleanup on win32)
PR libstdc++/51135
        * libsupc++/unwind-cxx.h (__cxa_exception): Mark
        exceptionDestructor by _GLIBCXX_CDTOR_CALLABI.
        * libsupc++/eh_throw.cc (__cxa_throw): Mark destructor
        function argument by _GLIBCXX_CDTOR_CALLABI.
        * libsupc++/cxxabi.h (__cxa_throw): Likewise.
        (_GLIBCXX_CDTOR_CALLABI): Add empty default
        definition.
        * config/os/mingw32-w64/os_defines.h (_GLIBCXX_CDTOR_CALLABI): Define
        for IA-32 target as __thiscall.
        * config/os/mingw32/os_defines.h (_GLIBCXX_CDTOR_CALLABI): Likewise.

From-SVN: r182410
2011-12-16 19:43:06 +01:00
Jakub Jelinek
134f529521 re PR tree-optimization/51575 (ICE: verify_gimple failed: statement marked for throw, but doesn't with -fnon-call-exceptions and placement new)
PR tree-optimization/51575
	* g++.dg/opt/pr51575.C: New test.

From-SVN: r182409
2011-12-16 17:36:49 +01:00
Tristan Gingold
d3702b4f3f vms.h (USE_TM_CLONE_REGISTRY): Define.
2011-12-16  Tristan Gingold  <gingold@adacore.com>

	* config/alpha/vms.h (USE_TM_CLONE_REGISTRY): Define.

From-SVN: r182408
2011-12-16 16:29:52 +00:00
Tristan Gingold
39420b1a23 alpha.c (alpha_use_linkage): Follow transparent alias.
2011-12-16  Tristan Gingold  <gingold@adacore.com>

	* config/alpha/alpha.c (alpha_use_linkage): Follow transparent alias.
	(alpha_write_one_linkage): Use assemble_name to emit linkage name.

From-SVN: r182407
2011-12-16 15:50:11 +00:00
Tristan Gingold
c675ab909a t-vms (vms.o, vms-c.o): Force output filename.
2011-12-16  Tristan Gingold  <gingold@adacore.com>

	* config/vms/t-vms (vms.o, vms-c.o): Force output filename.

From-SVN: r182406
2011-12-16 15:33:18 +00:00
Tristan Gingold
7481209d17 vms.c (VMS_CRTL_GLOBAL): Define.
2011-12-16  Tristan Gingold  <gingold@adacore.com>

	* config/vms/vms.c (VMS_CRTL_GLOBAL): Define.
	(vms_patch_builtins): Handle.
	* config/vms/vms-crtlmap.map: Add an entry for environ.

From-SVN: r182405
2011-12-16 15:25:30 +00:00
Jakub Jelinek
d734e6c466 re PR tree-optimization/51557 (ICE: in maybe_record_trace_start, at dwarf2cfi.c:2244 with custom flags)
PR debug/51557
	* sel-sched-ir.c (create_copy_of_insn_rtx): Copy all notes
	other than REG_EQUAL, REG_EQUIV and REG_LABEL_OPERAND.

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

From-SVN: r182404
2011-12-16 16:21:48 +01:00
Jakub Jelinek
511b44365a re PR tree-optimization/51576 (Bootstrap failure with go)
PR tree-optimization/51576
	* tree-cfg.c (replace_uses_by): Call maybe_clean_or_replace_eh_stmt
	even if fold_stmt didn't change anything.

From-SVN: r182403
2011-12-16 16:20:35 +01:00
Ian Lance Taylor
a84bd8ba19 os: Fix fileInfoFromStat for Solaris.
From Rainer Orth.

From-SVN: r182402
2011-12-16 14:45:49 +00:00
Richard Guenther
271d01dfbb re PR bootstrap/51572 (LTO bootstrap failed with bootstrap-profiled)
2011-12-16  Richard Guenther  <rguenther@suse.de>

	PR lto/51572
	* dwarf2out.c (gen_type_die_with_usage): Use the context of
	the TYPE_DECL as well if it is file-scope.

	* gcc.dg/lto/pr51572-1_0.c: New testcase.

From-SVN: r182401
2011-12-16 14:31:14 +00:00
GCC Administrator
002aad3fca Daily bump.
From-SVN: r182398
2011-12-16 00:19:07 +00:00
Paolo Carlini
92637e93ed re PR libstdc++/51558 (Declaration of unspecialized std::hash<_Tp>::operator()(_Tp) turns compile-time errors into link-time errors)
2011-12-15  Paolo Carlini  <paolo.carlini@oracle.com>
	    Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/51558
	* include/bits/functional_hash.h (struct hash): Add static_assert.
	* src/compatibility-c++0x.cc: Adjust compatibility definitions.
	* testsuite/23_containers/unordered_map/erase/51142.cc: Adjust.
	* testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
	* testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.

Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>

From-SVN: r182392
2011-12-15 22:15:21 +00:00
Jason Merrill
5058651d63 re PR c++/51458 (Accepts invalid designated initializers)
PR c++/51458
	* decl.c (has_designator_problem): New.
	(reshape_init_r): Check for improper use of
	designated initializers.

From-SVN: r182391
2011-12-15 16:55:31 -05:00
DJ Delorie
794f3386b6 rl78.md (return): Rename to rl78_return.
* config/rl78/rl78.md (return): Rename to rl78_return.
* config/rl78/rl78.c (rl78_expand_epilogue): Use new name.
(rl78_expand_eh_epilogue): Use new name.
(rl78_calculate_death_notes): Likewise.

From-SVN: r182390
2011-12-15 15:58:15 -05:00
Paul Thomas
1b26c26bb0 trans-expr.c (gfc_walk_function_expr): Detect elemental procedure components as well as elemental procedures.
2011-12-15  Paul Thomas  <pault@gcc.gnu.org>

	* trans-expr.c (gfc_walk_function_expr): Detect elemental
	procedure components as well as elemental procedures.
	* trans-array.c (gfc_conv_procedure_call): Ditto.
	* trans-decl.c (gfc_trans_deferred_vars): Correct erroneous
	break for class pointers to continue.

2011-12-15  Paul Thomas  <pault@gcc.gnu.org>

	* gfortran.dg/class_array_3.f03: Remove explicit indexing of
	A%disp() to use scalarizer.
	* gfortran.dg/class_array_9.f03: New.

From-SVN: r182389
2011-12-15 20:51:19 +00:00
Jakub Jelinek
363477c0bd tree-vectorizer.h (struct _stmt_vec_info): Remove pattern_def_stmt field, add pattern_def_seq.
* tree-vectorizer.h (struct _stmt_vec_info): Remove pattern_def_stmt
	field, add pattern_def_seq.
	(STMT_VINFO_PATTERN_DEF_STMT): Remove.
	(STMT_VINFO_PATTERN_DEF_SEQ): Define.
	(NUM_PATTERNS): Bump to 10.
	* tree-vect-loop.c (vect_determine_vectorization_factor,
	vect_transform_loop): Adjust for pattern def changing from a single
	gimple stmt to gimple_seq.
	* tree-vect-stmts.c (vect_analyze_stmt, new_stmt_vec_info,
	free_stmt_vec_info): Likewise.
	* tree-vect-patterns.c (vect_recog_over_widening_pattern,
	vect_recog_vector_vector_shift_pattern,
	vect_recog_mixed_size_cond_pattern, adjust_bool_pattern_cast,
	adjust_bool_pattern, vect_mark_pattern_stmts): Likewise.
	(vect_recog_sdivmod_pow2_pattern): New function.
	(vect_vect_recog_func_ptrs): Add it.

	* config/i386/sse.md (vcond<V_256:mode><VI_256:mode>,
	vcond<V_128:mode><VI124_128:mode>, vcond<VI8F_128:mode>v2di):
	Use general_operand instead of nonimmediate_operand for
	operand 5 and no predicate for operands 1 and 2.
	* config/i386/i386.c (ix86_expand_int_vcond): Optimize
	x < 0 ? -1 : 0 and x < 0 ? 1 : 0 into vector arithmetic
	resp. logical shift.

	* gcc.dg/vect/vect-sdivmod-1.c: New test.

From-SVN: r182388
2011-12-15 21:47:29 +01:00
Jakub Jelinek
e1b750d87f re PR c++/51463 ([c++0x] [4.7 Regression] ICE declaring a member function virtual and static)
PR c++/51463
	* decl.c (grokdeclarator): Set DECL_INITIAL of decl
	to error_mark_node to disallow NSDMI if declspecs->storage_class
	is sc_static.
	* parser.c (cp_parser_late_parse_one_default_arg): Return early
	if default_arg is error_mark_node.

	* g++.dg/cpp0x/pr51463.C: New test.

From-SVN: r182387
2011-12-15 21:45:53 +01:00
Georg-Johann Lay
666b67b1b9 avr-protos.h (print_operand): Remove.
* config/avr/avr-protos.h (print_operand): Remove.
	(print_operand_address): Remove.
	* config/avr/avr.h (PRINT_OPERAND): Remove.
	(PRINT_OPERAND_ADDRESS): Remove.
	(PRINT_OPERAND_PUNCT_VALID_P): Remove.
	* config/avr/avr.c (TARGET_PRINT_OPERAND): New hook define.
	(TARGET_PRINT_OPERAND_ADDRESS): New hook define.
	(TARGET_PRINT_OPERAND_PUNCT_VALID_P): New hook define.
	(print_operand_address): Rename to...
	(avr_print_operand_address): ...this and make static.
	(print_operand): Rename to...
	(avr_print_operand): ...this and make static.
	(avr_print_operand_punct_valid_p): New static function.

From-SVN: r182386
2011-12-15 19:30:08 +00:00
Benjamin Kosnik
faf81b1a18 9780-2.cc: Add test for "C" locale, add sanity checks in case of grouping.
2011-12-15  Benjamin Kosnik  <bkoz@redhat.com>

        * testsuite/22_locale/num_put/put/char/9780-2.cc: Add test for "C"
        locale, add sanity checks in case of grouping.

From-SVN: r182385
2011-12-15 19:02:51 +00:00
Toon Moene
a3fd80eade re PR fortran/51310 (-finit-bla doesn't initialize *all* items of type bla to the requested constant.)
2011-12-15  Toon Moene  <toon@moene.org>

	PR fortran/51310
	* resolve.c (build_default_init_expr): Allow non-allocatable,
	non-compile-time-constant-shape arrays to have a default
	initializer.
	* invoke.texi: Delete the restriction on automatic arrays not

From-SVN: r182384
2011-12-15 18:26:02 +00:00
Andreas Tobler
fb38bcf435 freebsd.h (TARGET_ASM_FILE_END): Define.
2011-12-15  Andreas Tobler  <andreast@fgznet.ch>

	* config/i386/freebsd.h (TARGET_ASM_FILE_END): Define.

From-SVN: r182382
2011-12-15 18:52:02 +01:00
Jakub Jelinek
7d1362bcd6 re PR c/51360 (spurious unused-but-set-variable warning for var used in OpenMP pragma)
PR c/51360
	* c-parser.c (c_parser_omp_clause_num_threads,
	c_parser_omp_clause_schedule): Call mark_exp_read.

	* semantics.c (finish_omp_clauses): For OMP_CLAUSE_NUM_THREADS_EXPR
	and OMP_CLAUSE_SCHEDULE_CHUNK_EXPR call mark_rvalue_use.

	* c-c++-common/gomp/pr51360.c: New test.
	* g++.dg/gomp/pr51360.C: New test.

From-SVN: r182381
2011-12-15 18:29:25 +01:00
Jakub Jelinek
323492f6f9 re PR middle-end/49806 (FAIL: gcc.dg/tree-ssa/vrp47.c)
PR middle-end/49806
	* gcc.dg/tree-ssa-vrp47.c: Add -fdump-tree-dom2 to dg-options.
	Check for x_? & y in dom2 dump and xfail the check in dom1 dump.

From-SVN: r182380
2011-12-15 18:27:45 +01:00
Jakub Jelinek
e0bb3f1897 re PR tree-optimization/51117 (rev.181172 causes glibc build failure)
PR tree-optimization/51117
	* g++.dg/opt/pr51117.C: New test.

From-SVN: r182379
2011-12-15 18:27:08 +01:00
Romain Geissler
f3fc9b804a builtins.def (BUILT_IN_STPNCPY_CHK): New definition.
* builtins.def (BUILT_IN_STPNCPY_CHK): New definition.
	* builtins.c (expand_builtin, fold_builtin_4, maybe_emit_chk_warning):
	Add BUILT_IN_STPNCPY_CHK case.
	* gimple-fold.c (gimple_fold_builtin): Likewise.
	* tree-object-size.c (pass_through_call): Likewise.
	* tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
	call_may_clobber_ref_p_1): Likewise.
	* tree-ssa-structalias.c (find_func_aliases_for_builtin_call,
	find_func_clobbers): Likewise.
	* tree.h (fold_builtin_strncpy_chk): Rename to fold_builtin_stxncpy_chk
	* builtins.c (fold_builtin_strncpy_chk): Likewise.
	Rewrite stpncpy_chk calls to strncpy_chk calls if returned value is
	ignored.

	* gcc.c-torture/execute/builtins/chk.h (stpncpy, stpncpy_disallowed):
	New definitions.
	* gcc.c-torture/execute/builtins/lib/chk.c (stpncpy_disallowed):
	Likewise.
	(stpncpy, __stpncpy_chk): New functions.
	* gcc.c-torture/execute/builtins/stpncpy-chk-lib.c: New file.
	* gcc.c-torture/execute/builtins/stpncpy-chk.c: Likewise.

From-SVN: r182378
2011-12-15 18:26:10 +01:00
Richard Guenther
ee7a54c550 re PR debug/51567 (ICE in splice_child_die, at dwarf2out.c:5009 with -flto -g)
2011-12-15  Richard Guenther  <rguenther@suse.de>

	PR lto/51567
	* gimple.c (compare_type_names_p): Also compare the TREE_CODE.
	(iterative_hash_name): Also hash the TREE_CODE.
	(gimple_types_compatible_p_1): For types with a TYPE_DECL
	name and a type DECL_CONTEXT recurse to that type.
	(iterative_hash_gimple_type): Likewise.

	* g++.dg/lto/pr51567-1_0.C: New testcase.

From-SVN: r182377
2011-12-15 16:38:08 +00:00
Iain Sandoe
6a2045bfd3 rs6000.c (rs6000_emit_prologue): Move update of VRSave mask to save_world() when that is in use.
gcc:

	* config/rs6000/rs6000.c  (rs6000_emit_prologue): Move update of
	VRSave mask to save_world() when that is in use.

libgcc:

	* config/rs6000/darwin-world.S (toplevel): Make it clear that this
	function is not used for PPC64.  
	(save_world): Amend comments.  Update the VRsave mask to reflect the
	saved regs.
	(rest_world): Update comments, do not  clobber r10, do not use r8.
	(eh_rest_world_r10): Amend comments, do not use r8.
	(rest_world_eh_r7r8): Rename as local Lrest_world_eh_r7, since r8 is
	no longer used, move restore of CR and target address to the end of
	the routine.

From-SVN: r182376
2011-12-15 15:52:08 +00:00
Dodji Seketeli
f03e689a9d PR c++/51473 - ICE with invalid auto
gcc/cp/

	PR c++/51473
	* decl.c (check_tag_decl): Error out on auto specifier with no
	declarator.

gcc/testsuite/

	PR c++/51473
	* g++.dg/cpp0x/auto30.C: New test.

From-SVN: r182375
2011-12-15 16:40:25 +01:00
Arnaud Charlet
90376fadb8 a-numaux-vms.ads, [...]: New files.
2011-12-15  Arnaud Charlet  <charlet@adacore.com>

        * a-numaux-vms.ads, s-asthan-vms-ia64.adb, s-auxdec-vms-ia64.adb,       
        s-memory-vms_64.adb, s-memory-vms_64.ads, s-osinte-vms-ia64.adb,
        s-osinte-vms-ia64.ads, s-tasdeb-vms.adb: New files.

From-SVN: r182374
2011-12-15 16:28:47 +01:00
Tobias Burnus
0c5c7b003e re PR fortran/51550 (ICE in gfc_get_derived_type, at fortran/trans-types.c:2401)
2011-12-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51550
        PR fortran/47545
        PR fortran/49050
        PR fortran/51075
        * resolve.c (resolve_fl_derived0): Print not-implemented error
        for deferred-length character components.

From-SVN: r182372
2011-12-15 16:18:33 +01:00
Tobias Burnus
492792ed9b primary.c (gfc_match_varspec): Match array spec for polymorphic coarrays.
2011-12-15  Tobias Burnus  <burnus@net-b.de>

        * primary.c (gfc_match_varspec): Match array spec for
        polymorphic coarrays.
        (gfc_match_rvalue): If a symbol of unknown flavor has a
        codimension, mark it as a variable.
        * simplify.c (gfc_simplify_image_index): Directly call
        simplify_cobound.
        * trans-intrinsic.c (trans_this_image): Fix handling of
        corank = 1 arrays.

2011-12-15  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray/poly_run_3.f90: New.
        * gfortran.dg/coarray/poly_run_2.f90: Enable comment-out test.

From-SVN: r182371
2011-12-15 15:53:55 +01:00
Richard Guenther
9d69847d6e lto-wrapper.c (run_gcc): In non-parallel mode remove ltrans inputs immediately after processing them.
2011-12-15  Richard Guenther  <rguenther@suse.de>

	* lto-wrapper.c (run_gcc): In non-parallel mode remove
	ltrans inputs immediately after processing them.  In parallel
	mode truncate the ltrans inputs in the make rule that processes
	them if temporary files are not to be preserved.

From-SVN: r182370
2011-12-15 14:50:25 +00:00
Anatoly Sokolov
7598036b5a arm.h (REGISTER_MOVE_COST, [...]): Remove.
* config/arm/arm.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
	* config/arm/arm.c (arm_memory_move_cost, arm_register_move_cost):
	New functions.
	(TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.

From-SVN: r182369
2011-12-15 18:43:02 +04:00
Arnaud Charlet
dec6faf1db [multiple changes]
2011-12-15  Vincent Pucci  <pucci@adacore.com>

	* aspects.adb, aspects.ads Aspect_Dimension and
	Aspect_Dimension_System added
	* exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_String
	case added
	* gcc-interface/Make-lang.in: s-llflex, sem_dim added.
	* impunit.adb :s-diflio and s-diinio defined as GNAT Defined
	Additions to System.
	* Makefile.rtl: s-diflio, s-diinio and s-llflex added
	* par-prag.adb, sem_prag.adb: Pragma_Dimension removed
	* rtsfind.ads: Expon_LLF added
	* sem_aggr.adb (Resolve_Aggregate): handles aggregate for
	Aspect_Dimension case
	* sem_attr.adb (Resolve_Attribute): analyze dimension for
	attribute
	* sem_ch10.adb (Analyze_With_Clause): Avoid the warning messages
	due to the use of a GNAT library for Dimension packages
	* sem_ch13.adb (Analyze_Aspect_Specifications):
	Aspect_Dimension and Aspect_Dimension_System cases added
	(Check_Aspect_At_Freeze_Point): Aspect_Dimension and
	Aspect_Dimension_System cases added
	* sem_ch2.adb (Analyze_Identifier): analyze dimension for
	identifier
	* sem_ch3.adb (Analyze_Component_Declaration): analyze dimension
	for component declaration (Analyze_Object_Declaration): analyze
	dimension for object declaration (Analyze_Subtype_Declaration):
	analyze dimension for subtype declaration
	* sem_ch4.adb (Operator_Check): checks exponent is a rational
	for dimensioned operand for a N_Op_Expon
	* sem_ch5.adb (Analyze_Assignment): analyze dimension for
	assignment (Analyze_Statements): removal of dimensions in all
	statements
	* sem_ch6.adb (Analyze_Return_Statement): analyze dimension for
	return statement
	* sem_ch8.adb (Analyze_Object_Renaming): analyze dimension for
	object renaming
	* sem_dim.adb, sem_dim.ads (Analyze_Aspect_Dimension):
	analyze the expression for aspect dimension and store the
	values in a Htable.
	(Analyze_Aspect_Dimension_System): analyze
	the expression for aspect dimension system and store the new
	system in a Table.
	(Analyze_Dimension): propagates dimension
	(Expand_Put_Call_With_Dimension_String): add the dimension
	string as a suffix of the numeric value in the output
	(Has_Dimension): return True if the node has a dimension
	(Remove_Dimension_In_Declaration): removal of dimension in the
	expression of the declaration.
	(Remove_Dimension_In_Statement): removal of dimension in statement
	* sem_res.adb (Resolve): analyze dimension if the node
	has already been analyzed.
	(Resolve_Arithmetic_Op): analyze
	dimension for arithmetic op.
	(Resolve_Call): analyze dimension for function call.
	(Resolve_Comparison_Op): analyze dimension for comparison op.
	(Resolve_Equality_Op): analyze dimension for equality op.
	(Resolve_Indexed_Component): analyze dimension for indexed component.
	(Resolve_Op_Expon): analyze dimension for op expon.
	(Resolve_Selected_Component): analyze dimension
	for selected component.
	(Resolve_Slice): analyze dimension for slice.
	(Resolve_Unary_Op): analyze dimension for unary op
	(Resolve_Type_Conversion): analyze dimension for type conversion
	(Resolve_Unchecked_Type_Conversion): analyze dimension for
	unchecked type conversion
	* snames.ads-tmpl Name_Dimension, Name_Dimension_System,
	Name_Dim_Float_IO, Name_Dim_Integer_IO,
	Name_Generic_Elementary_Functions, Name_Sqrt added.
	Pragma_Dimension removed
	* s-diflio.adb, s-diflio.ads New GNAT library generic package
	for dimensioned float type IO
	* s-diinio.adb, s-diinio.ads New GNAT library generic package
	for dimensioned integer type IO
	* s-llflex.ads (Expon_LLF): exponentiation routine for long long
	floats operand and exponent

2011-12-15  Robert Dewar  <dewar@adacore.com>

	* sem_aggr.adb: Minor comment addition.

2011-12-15  Bob Duff  <duff@adacore.com>

	* s-tasren.adb (Task_Count): Do not call Yield; E'Count is not a
	task dispatching point.
	* s-taprop-mingw.adb (Yield): Do not yield if Do_Yield is False.

From-SVN: r182368
2011-12-15 15:33:46 +01:00
Richard Guenther
ca814625c9 re PR debug/51564 (ICE in force_type_die, at dwarf2out.c:19288)
2011-12-15  Richard Guenther  <rguenther@suse.de>

	PR lto/51564
	* tree.h (REGISTER_DEFS_IN_THIS_STMT, NECESSARY,
	STMT_IN_SSA_EDGE_WORKLIST): Remove no longer existing flag
	uses documentation.
	(TREE_ASM_WRITTEN): Update documentation to mention its use
	on TYPE_DECLs from debug info generation.
	* tree-streamer-out.c (pack_ts_base_value_fields): Stream
	TREE_ASM_WRITTEN as always zero for TYPE_DECLs, similar to
	all other types.

	* g++.dg/lto/pr51564-1_0.C: New testcase.

From-SVN: r182367
2011-12-15 12:43:48 +00:00
Robert Dewar
ba986b7d2b sigtramp-ppcvxw.c, sigtramp.h: Fix header.
2011-12-15  Robert Dewar  <dewar@adacore.com>

	* sigtramp-ppcvxw.c, sigtramp.h: Fix header.

From-SVN: r182366
2011-12-15 12:54:53 +01:00
Arnaud Charlet
d9937d1b3e [multiple changes]
2011-12-15  Javier Miranda  <miranda@adacore.com>

	* exp_attr.adb (Expand_N_Attribute_Reference): For 'alignment
	applied to a class-wide type under VM targets generate code which
	invokes the function Get_Alignment to retrieve the value of the
	alignment from the TSD.
	* rtsfind.ads (RE_Get_Alignment): New entity.

2011-12-15  Robert Dewar  <dewar@adacore.com>

	* g-comlin.adb: Fix header.

From-SVN: r182365
2011-12-15 12:52:26 +01:00
Arnaud Charlet
887d102a5e [multiple changes]
2011-12-15  Tristan Gingold  <gingold@adacore.com>

	* gnatls.adb: Fix typo.

2011-12-15  Ed Falis  <falis@adacore.com>

	* s-tpopsp-vxworks.adb: Update comment.

2011-12-15  Ed Schonberg  <schonberg@adacore.com>

	* sem_aggr.adb (Resolve_Array_Aggregate, Resolve_Aggr_Expr); If
	the component type has predicates, generate corresponding check.
	(Resolve_Record_Aggregate, Resolve_Aggr_Expr): Ditto.

From-SVN: r182364
2011-12-15 12:48:25 +01:00
Georg-Johann Lay
4e15cee6c7 re PR target/51050 ([AVR, attiny26] ICE: invalid rtl sharing found in the insn)
PR target/51050
	* config/avr/avr.c (expand_epilogue): Don't build SUBREG of fp.
	(avr_prologue_setup_frame): Ditto.

From-SVN: r182363
2011-12-15 11:10:32 +00:00
Jakub Jelinek
0c1e1df880 re PR debug/51517 (Wrong debug information for pointers with negative strides.)
PR debug/51517
	* trans-decl.c (gfc_get_symbol_decl): Don't set DECL_INITAL on span.
	(gfc_trans_deferred_vars): Instead add its runtime initialization
	here.

	* tree-ssa-coalesce.c (coalesce_ssa_name): For !optimize, test
	!DECL_IGNORED_P instead of !DECL_ARTIFICIAL.

From-SVN: r182362
2011-12-15 12:05:37 +01:00
Jonathan Wakely
b3908fcc0d re PR libstdc++/51365 (cannot use final empty class in std::tuple)
c-family:
	PR libstdc++/51365
	* c-common.c (RID_IS_FINAL): Add.
	* c-common.h (RID_IS_FINAL): Add.
cp:
	PR libstdc++/51365
	* cp-tree.h (CPTK_IS_FINAL): Add.
	* parser.c (cp_parser_translation_unit): Handle RID_IS_FINAL.
	(cp_parser_primary_expression, cp_parser_trait_expr): Likewise.
	* semantics.c (trait_expr_value, finish_trait_expr): Handle
	CPTK_IS_FINAL.
	* cxx-pretty-print.c (pp_cxx_trait_expression): Likewise.
testsuite:
	PR libstdc++/51365
	* g++.dg/ext/is_final.C: New.

From-SVN: r182360
2011-12-15 10:02:45 +00:00
Jonathan Wakely
d36971dd86 re PR libstdc++/51540 (doxygen documentation for partial_sum misleading)
PR libstdc++/51540
	* include/bits/stl_numeric.h (partial_sum): Adjust doxygen comments.

From-SVN: r182359
2011-12-15 09:49:59 +00:00
Richard Guenther
2e537cdecb revert: re PR lto/48437 (LTO crashes with block-local function declarations)
2012-12-15  Richard Guenther  <rguenther@suse.de>

	Revert
	PR lto/48437
	* lto-streamer-out.c (tree_is_indexable): Exclude block-local
	extern declarations.

	PR lto/48508
	PR lto/48437
	* tree-streamer-out.c (streamer_write_chain): Stream DECL_EXTERNAL
	VAR_DECLs and FUNCTION_DECLs locally.

	* g++.dg/lto/pr48508-1_0.C: New testcase.
	* g++.dg/lto/pr48508-1_1.C: Likewise.

From-SVN: r182358
2011-12-15 09:44:11 +00:00
Uros Bizjak
4fde01bb0b ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
	* testsuite/ChangeLog: Ditto.

From-SVN: r182357
2011-12-15 09:04:08 +01:00
Ian Lance Taylor
5f8090a435 syscall: Move Errno into its own file, for RTEMS.
From-SVN: r182356
2011-12-15 07:12:03 +00:00
Richard Henderson
aebac0ca06 arm-linux: Add libitm support.
* config/arm/hwcap.h, config/arm/hwcap.cc: New files.
	* config/arm/sjlj.S, config/arm/target.h: New files.
	* config/generic/asmcfi.h (cfi_adjust_cfa_offset): New.
	(cfi_rel_offset): New.
	* config/linux/futex_bits.h: New file.
	* config/linux/futex.cc: Include futex_bits.h here...
	* config/linux/futex.h: ... not here.
	* Makefile.am (libitm_la_SOURCES) <ARCH_ARM>: Add hwcap.cc.
	* configure.ac (ARCH_AM): New conditional.
	* Makefile.in, configure: Rebuild.
	* configure.tgt: Handle ARM.

From-SVN: r182355
2011-12-14 19:24:05 -08:00
Richard Henderson
cc50a1e14e arm: Set predicable on more instructions.
Make sure its set for all CMP, CMN, TST instructions,
which do work inside IT blocks.

        * config/arm/arm.md (*addsi3_compare0_scratch): Set predicable.
        (*compare_negsi_si, *compare_addsi2_op0): Likewise.
        (*compare_addsi2_op1, *zeroextractsi_compare0_scratch): Likewise.
        (*compareqi_eq0, *arm_cmpsi_insn, *arm_cmpsi_negshiftsi_si): Likewise.

From-SVN: r182353
2011-12-14 16:23:32 -08:00