Commit Graph

113276 Commits

Author SHA1 Message Date
Jason Merrill
6d87092d19 re PR c++/35688 (template visibility not overridden by template arguments)
PR c++/35688
	* decl2.c (constrain_visibility): Return void.  Add tmpl parm
	which gives the constraint priority over an attribute.
	(constrain_visibility_for_template, determine_visibility): Adjust.
	* pt.c (instantiate_class_template_1): Call determine_visibility.

From-SVN: r181102
2011-11-07 12:51:40 -05:00
Jason Merrill
c7e6757f2a add PR tag
From-SVN: r181101
2011-11-07 12:51:32 -05:00
Jason Merrill
4c627087f5 re PR c++/33255 (A warning for "unused" typedefs?)
PR c++/33255
	* decl.c (save_function_data): Clear local_typedefs.

From-SVN: r181100
2011-11-07 12:51:24 -05:00
Jason Merrill
b12e4c4292 decl.c (cp_finish_decl): Only make_tree_vector if we're calling check_initializer.
* decl.c (cp_finish_decl): Only make_tree_vector if we're calling
	check_initializer.

From-SVN: r181099
2011-11-07 12:51:16 -05:00
Rainer Orth
200feb074b Append to HOST_LIBGCC2_CFLAGS in libgcc
* config.host (tmake_file): Correct comment.
	(bfin*-elf*): Remove bfin/t-elf from tmake_file, add
	t-libgcc-pic.
	(bfin*-uclinux*): Likewise.
	(bfin*-linux-uclibc*): Likewise.
	(xstormy16-*-elf): Add stormy16/t-stormy16 to tmake_file.

	* config/arm/t-elf (HOST_LIBGCC2_CFLAGS): Append instead of
	assigning.
	* config/arm/t-strongarm-elf (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/avr/t-avr (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/c6x/t-elf (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/h8300/t-h8300 (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/lm32/t-elf (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/m32r/t-m32r (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/mcore/t-mcore (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/mips/t-elf (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/mmix/t-mmix (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/pdp11/t-pdp11 (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/picochip/t-picochip (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/stormy16/t-stormy16 (HOST_LIBGCC2_CFLAGS): Likewise.
	* config/t-openbsd-thread (HOST_LIBGCC2_CFLAGS): Likewise.

	* config/bfin/t-elf: Remove.
	* config/t-vxworks (HOST_LIBGCC2_CFLAGS): Remove.

From-SVN: r181098
2011-11-07 17:14:32 +00:00
Rainer Orth
c9cd1a07b0 Consistently use t-rtems in libgcc
* config.host (*-*-rtems*): Add t-rtems to tmake_file.
	(i[34567]86-*-rtems*): Remove t-rtems from tmake_file.
	(lm32-*-elf*, lm32-*-rtems*): Split into ...
	(lm32-*-elf*): ... this.
	(lm32-*-rtems*): ... and this.
	Add to tmake_file.
	(m32r-*-rtems*): Add to tmake_file.
	(moxie-*-rtems*): Likewise.
	(sparc-*-rtems*): Likewise.
	Remove t-rtems from tmake_file.
	(sparc64-*-rtems*): Likewise.
	* config/t-rtems (HOST_LIBGCC2_CFLAGS): Use LIBGCC2_INCLUDES
	instead.

From-SVN: r181097
2011-11-07 17:12:33 +00:00
H.J. Lu
7b4d559576 Check HARD_FRAME_POINTER_REGNUM.
2011-11-07  H.J. Lu  <hongjiu.lu@intel.com>

	* dwarf2cfi.c (dwarf2out_frame_debug_expr): Check
	HARD_FRAME_POINTER_REGNUM instead of hard_frame_pointer_rtx
	in Rule 18.

From-SVN: r181096
2011-11-07 08:38:24 -08:00
Rainer Orth
9fbcc75d56 Return gthr-posix.h to libgcc (PR bootstrap/50982)
libgcc:
	PR bootstrap/50982
	* config/gthr-posix.h: Move ...
	* gthr-posix.h: ... here.
	* config/gthr-lynx.h: Reflect this.
	* config/gthr-vxworks.h: Likewise.
	* config/rs6000/gthr-aix.h: Likewise.
	* configure.ac (target_thread_file): Likewise.
	* configure: Regenerate.

	libstdc++-v3:
	PR bootstrap/50982
	* include/Makefile.am (${host_builddir}/gthr-posix.h): Reflect
	gthr-posix.h move.
	* include/Makefile.in: Regenerate.

From-SVN: r181095
2011-11-07 16:34:31 +00:00
Arnaud Charlet
b5bf33351a [multiple changes]
2011-11-07  Olivier Hainque  <hainque@adacore.com>

	* sigtramp-ppcvxw.c: Add general comments.
	(CFI_COMMON_REGS): Remove rule for r1, as in other unwinders. Add
	rules for r2 to r13, plus CTR and XER.
	(CFA_REG): New, register number used to hold the local CFA.
	(CFI_DEF_CFA, SIGTRAMP_BODY): Use it.
	Make that 15, not 14, with documentation.
	(TCR): Undef before definition, preventing conflict with reg number in
	VxWorks headers.

2011-11-07  Robert Dewar  <dewar@adacore.com>

	* exp_util.ads, exp_alfa.adb, a-cohama.adb, a-cohama.ads, sem_ch4.adb,
	aspects.ads, exp_ch8.adb, exp_ch8.ads, atree.ads: Minor reformatting.
	* gcc-interface/Make-lang.in: Update dependencies. 

2011-11-07  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb: A tagged type is a legal actual for an aliased
	formal.

2011-11-07  Pascal Obry  <obry@adacore.com>

	* g-socket.adb, g-socket.ads: Minor reformatting.

2011-11-07  Robert Dewar  <dewar@adacore.com>

	* sem_res.adb (Resolve_Actuals): Minor error message improvement.

2011-11-07  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Add discussion of default mode handling of
	source representation with no -gnatW option given, in particular
	noting that NEL (next line) is not recognized in this context.

From-SVN: r181094
2011-11-07 17:30:55 +01:00
Arnaud Charlet
9ee76313c4 [multiple changes]
2011-11-07  Yannick Moy  <moy@adacore.com>

	* sem_util.adb (Note_Possible_Modification): In Alfa mode,
	generate a reference for a modification even when the modification
	does not come from source.

2011-11-07  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch5.adb (Expand_Iterator_Loop): For the "of" iterator form,
	use the indexing attributes rather than the Element function,
	to obtain variable references.
	* sem_ch4.adb (Try_Container_Indexing): Code cleanup. Use
	Find_Aspect rather than iterating over representation
	items. Improve error message.
	* a-cohama.adb, a-cohama.ads Update to latest RM, with two versions
	of Reference functions.

From-SVN: r181093
2011-11-07 17:25:32 +01:00
Arnaud Charlet
7b7a0c2bdd [multiple changes]
2011-11-07  Yannick Moy  <moy@adacore.com>

	* sem_util.adb (Unique_Entity): For a parameter on a subprogram
	body that has a corresponding parameter on the subprogram
	declaration, define the unique entity as being the declaration
	one.

2011-11-07  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb (Analyze_Return_Type): In Ada 2012 mode, if the
	return type of a function is the class-wide type of an incomplete
	type T, T can be a Taft-amendment type and does not have to be
	completed in the current private part.

2011-11-07  Ed Schonberg  <schonberg@adacore.com>

	* aspects.ads (Inherited_Aspect): Map that indicates type aspects
	that are inherited by default, and apply to the class-wide type
	as well.
	* aspects.adb (Find_Aspect): If the entity is class-wide and the
	aspect is inherited, use the aspect of the specific type.

From-SVN: r181092
2011-11-07 17:22:28 +01:00
Arnaud Charlet
cc570be693 [multiple changes]
2011-11-07  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_alfa.adb: Remove with and use clause for
	Exp_Ch8. Add with and use clause for Exp_Util.
	Remove local constant Disable_Processing_Of_Renamings.
	(Expand_Alfa_N_Object_Renaming_Declaration): The expansion of
	object renamings has been reenabled.
	(Expand_Possible_Renaming):
	The expansion of identifier and expanded names has been
	reenabled. Perform the substitutions only for entities that
	denote an object.
	* exp_ch8.ads, exp_ch8.adb (Evaluate_Name): Moved to Exp_Util.
	* exp_util.adb (Evaluate_Name): Moved from Exp_Ch8.
	(Remove_Side_Effects): Alphabetize local variables. Add a guard
	to avoid the infinite expansion of an expression in Alfa mode. Add
	processing for function calls in Alfa mode.
	* exp_util.ads (Evaliate_Name): Moved from Exp_Ch8.

2011-11-07  Ed Schonberg  <schonberg@adacore.com>

	* freeze.adb (Freeze_Entity): If the entity is an access to
	subprogram whose designated type is itself a subprogram type,
	its own return type must be decorated with size information.

From-SVN: r181091
2011-11-07 17:20:14 +01:00
Jakub Jelinek
da80a6464e i386.c (ix86_expand_builtin): If gather mask argument is known to have all high bits set...
* config/i386/i386.c (ix86_expand_builtin): If gather mask
	argument is known to have all high bits set, pass pc_rtx as
	second argument to the expander instead of op0.
	* config/i386/sse.md (*avx2_gathersi<mode>_2,
	*avx2_gatherdi<mode>_2): New patterns.
	* config/i386/avx2intrin.h (_mm256_i32gather_pd,
	_mm256_i64gather_pd, _mm256_i32gather_ps): Set mask using
	_mm256_cmp_pd with zero vector arguments and _CMP_EQ_OQ instead of
	_mm256_set1_pd.

From-SVN: r181090
2011-11-07 17:00:08 +01:00
Jakub Jelinek
aec7ae7dea re PR tree-optimization/50789 (Gather vectorization)
PR tree-optimization/50789
	* tree-vect-stmts.c (process_use): Add force argument, avoid
	exist_non_indexing_operands_for_use_p check if true.
	(vect_mark_stmts_to_be_vectorized): Adjust callers.  Handle
	STMT_VINFO_GATHER_P.
	(gen_perm_mask): New function.
	(perm_mask_for_reverse): Use it.
	(reverse_vec_element): Rename to...
	(permute_vec_elements): ... this.  Add Y and MASK_VEC arguments,
	generalize for any permutations.
	(vectorizable_load): Adjust caller.  Handle STMT_VINFO_GATHER_P.
	* target.def (TARGET_VECTORIZE_BUILTIN_GATHER): New hook.
	* doc/tm.texi.in (TARGET_VECTORIZE_BUILTIN_GATHER): Document it.
	* doc/tm.texi: Regenerate.
	* tree-data-ref.c (initialize_data_dependence_relation,
	compute_self_dependence): No longer static.
	* tree-data-ref.h (initialize_data_dependence_relation,
	compute_self_dependence): New prototypes.
	* tree-vect-data-refs.c (vect_check_gather): New function.
	(vect_analyze_data_refs): Detect possible gather load data
	refs.
	* tree-vectorizer.h (struct _stmt_vec_info): Add gather_p field.
	(STMT_VINFO_GATHER_P): Define.
	(vect_check_gather): New prototype.
	* config/i386/i386-builtin-types.def: Add types for alternate
	gather builtins.
	* config/i386/sse.md (AVXMODE48P_DI): Remove.
	(VEC_GATHER_MODE): Rename mode_attr to...
	(VEC_GATHER_IDXSI): ... this.
	(VEC_GATHER_IDXDI, VEC_GATHER_SRCDI): New mode_attrs.
	(avx2_gathersi<mode>, *avx2_gathersi<mode>): Use <VEC_GATHER_IDXSI>
	instead of <VEC_GATHER_MODE>.
	(avx2_gatherdi<mode>): Use <VEC_GATHER_IDXDI> instead of
	<<AVXMODE48P_DI> and <VEC_GATHER_SRCDI> instead of VEC_GATHER_MODE
	on src and mask operands.
	(*avx2_gatherdi<mode>): Likewise.  Use VEC_GATHER_MODE iterator
	instead of AVXMODE48P_DI.
	(avx2_gatherdi<mode>256, *avx2_gatherdi<mode>256): Removed.
	* config/i386/i386.c (enum ix86_builtins): Add
	IX86_BUILTIN_GATHERALTSIV4DF, IX86_BUILTIN_GATHERALTDIV8SF,
	IX86_BUILTIN_GATHERALTSIV4DI and IX86_BUILTIN_GATHERALTDIV8SI.
	(ix86_init_mmx_sse_builtins): Create those builtins.
	(ix86_expand_builtin): Handle those builtins and adjust expansions
	of other gather builtins.
	(ix86_vectorize_builtin_gather): New function.
	(TARGET_VECTORIZE_BUILTIN_GATHER): Define.

	* gcc.target/i386/avx2-gather-1.c: New test.
	* gcc.target/i386/avx2-gather-2.c: New test.
	* gcc.target/i386/avx2-gather-3.c: New test.
	* gcc.target/i386/avx2-gather-4.c: New test.

From-SVN: r181089
2011-11-07 16:59:07 +01:00
Janne Blomqvist
571b34b25e clock and time are part of the C standard library.
2011-11-07  Janne Blomqvist  <jb@gcc.gnu.org>

	* intrinsic.texi (MCLOCK, MCLOCK8, TIME, TIME8): Functions clock
	and time are part of the C standard library.

From-SVN: r181087
2011-11-07 17:31:31 +02:00
Uros Bizjak
ed377f02a6 pr49781-1.c (dg-options): Add -mtune=generic.
* gcc.target/i386/pr49781-1.c (dg-options): Add -mtune=generic.

From-SVN: r181086
2011-11-07 16:21:35 +01:00
Janne Blomqvist
0948d15384 Revert previous fix for PR 45723.
libgfortran ChangeLog:

2011-11-07  Janne Blomqvist  <jb@gcc.gnu.org>

        PR libfortran/45723
        * io/open.c (new_unit): Don't check file size before attempting
        seek.


testsuite ChangeLog:

2011-11-07  Janne Blomqvist  <jb@gcc.gnu.org>

        PR libfortran/45723
        * gfortran.dg/open_dev_null.F90: Remove testcase.

From-SVN: r181085
2011-11-07 16:32:50 +02:00
Jonathan Wakely
5ee360d069 acinclude.m4 (GLIBCXX_CHECK_SC_NPROC_ONLN): Define.
* acinclude.m4 (GLIBCXX_CHECK_SC_NPROC_ONLN): Define.
	(GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP): Define.
	(GLIBCXX_CHECK_SYSCTL_HW_NCPU): Define.
	* configure.ac: Use new checks.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* src/thread.cc: Check new config macros.
	* testsuite/lib/libstdc++.exp: Likewise.

From-SVN: r181084
2011-11-07 13:45:03 +00:00
Uros Bizjak
51e674b7f1 target-supports.exp (check_effective_target_sync_int_128): Don't cache the result.
* lib/target-supports.exp (check_effective_target_sync_int_128):
	Don't cache the result.
	(check_effective_target_sync_long_long): Ditto.

From-SVN: r181082
2011-11-07 14:09:09 +01:00
Jonathan Wakely
3cc227e5bf * config/abi/pre/gnu.ver: Fix exports for string::pop_back.
From-SVN: r181081
2011-11-07 11:36:04 +00:00
Uros Bizjak
6f2cc91cc4 f16cintrin: Remove extra _X86INTRIN_H_INCLUDED check.
* config/i386/f16cintrin: Remove extra _X86INTRIN_H_INCLUDED check.

From-SVN: r181080
2011-11-07 11:23:56 +01:00
Tristan Gingold
c750e76857 config.gcc (*-*-*vms*): Set c_target_objs, cxx_target_objs.
2011-11-07  Tristan Gingold  <gingold@adacore.com>

	* config.gcc (*-*-*vms*): Set c_target_objs, cxx_target_objs.
	* config/vms/t-vms: Add vms-c.o rule.
	* config/vms/vms-c.c: New file.
	* config/vms/vms-protos.h (vms_c_register_pragma): New prototype.
	* config/vms/vms.h (REGISTER_TARGET_PRAGMAS): Define.

From-SVN: r181079
2011-11-07 10:17:44 +00:00
Tristan Gingold
ba89fcb672 vms.h (TARGET_OBJECT_SUFFIX, [...]): Move to config/vms/vms.h
2011-11-07  Tristan Gingold  <gingold@adacore.com>

	* config/alpha/vms.h (TARGET_OBJECT_SUFFIX,
	TARGET_EXECUTABLE_SUFFIX, TARGET_OS_CPP_BUILTINS,
	TARGET_ABI_OPEN_VMS, LONG_TYPE_SIZE, ADA_LONG_TYPE_SIZE,
	POINTER_SIZE, POINTERS_EXTEND_UNSIGNED): Move to config/vms/vms.h
	(SUBTARGET_OS_CPP_BUILTINS): Define.
	(TARGET_DEFAULT): Tune according to POINTER_SIZE.
	(MASK_RETURN_ADDR): Define in 64 bit mode.
	* config/ia64/vms.h: Likewise.
	* config/vms/vms.h: New file.
	* config/vms/vms64.h: New file.
	* config/alpha/vms64.h: Removed.
	* config/ia64/vms64.h: Removed.
	* config.gcc (alpha64-dec-*vms*, alpha*-dec-*vms*, ia64-hp-*vms*):
	Adjust for above change.

From-SVN: r181078
2011-11-07 09:03:20 +00:00
Enkovich Ilya
f3b61b784d re PR target/50962 (Additional opportunity for AGU stall avoidance optimization for Atom processor)
gcc/
	PR target/50962
	* config/i386/i386-protos.h (ix86_use_lea_for_mov): New.
	* config/i386/i386.c (ix86_use_lea_for_mov): Likewise.
	* config/i386/i386.md (movsi_internal): Emit lea if profitable.
	(movdi_internal_rex64): Likewise.

From-SVN: r181077
2011-11-07 08:47:15 +00:00
Jonathan Wakely
e0f0ee74f0 acinclude.m4: Check for <stdalign.h>
* acinclude.m4: Check for <stdalign.h>
	* configure: Regenerate.
	* config.h.in: Likewise.
	* include/Makefile.am: Add <cstdalign>.
	* include/Makefile.in: Regenerate.
	* include/c_global/cstdalign: New.
	* testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New.
	* doc/xml/manual/backwards_compatibility.xml: Update.
	* doc/xml/manual/status_cxx2011.xml: Update.

From-SVN: r181076
2011-11-07 08:46:58 +00:00
Sergey Ostanevich
b3242a4c75 re PR rtl-optimization/47698 (CMOV accessing volatile memory with read side effect)
gcc/
	PR rtl-optimization/47698
	* ifconv.c (noce_operand_ok): prevent CMOV generation
	for volatile mem.

gcc/testsuite/
	PR rtl-optimization/47698
	* gcc.target/i386/47698.c: New test.

From-SVN: r181075
2011-11-07 08:41:55 +00:00
Tristan Gingold
f7a57cdc35 alpha-common.c (alpha_option_init_struct): New function.
2011-11-07  Tristan Gingold  <gingold@adacore.com>

	* common/config/alpha/alpha-common.c (alpha_option_init_struct):
	New function.
	(TARGET_OPTION_INIT_STRUCT): Define.
	* config/alpha/alpha.c (TARGET_MIN_ANCHOR_OFFSET)
	(TARGET_MAX_ANCHOR_OFFSET)
	(TARGET_USE_BLOCKS_FOR_CONSTANT_P): Redefine.

From-SVN: r181074
2011-11-07 08:33:14 +00:00
Jonathan Wakely
ff02a38bc6 re PR libstdc++/50982 (AIX libstdc++ GTHREADS incompatibility)
PR libstdc++/50982
	* include/std/mutex (__once_proxy): Use void parameter list to
	work on implicit extern "C" systems.

From-SVN: r181072
2011-11-07 07:54:06 +00:00
Xinliang David Li
b9b8c6ae39 make __stl_prime_list in comdat
From-SVN: r181071
2011-11-07 07:43:46 +00:00
Quentin Neill
e97764b893 Fix r180999, update ChangeLog
2011-11-06  Quentin Neill  <quentin.neill@amd.com>

	Fix r180999, update ChangeLog
	* config.gcc: Add f16cintrin.h.
	* f16cintrin.h: Add missing endif.

From-SVN: r181070
2011-11-07 04:59:47 +00:00
Jason Merrill
8e7860a17b re PR c++/35688 (template visibility not overridden by template arguments)
PR c++/35688
gcc/c-common/
	* c-common.c (decl_has_visibility_attr): Split out from...
	(c_determine_visibility): ...here.
	* c-common.h: Declare it.
gcc/cp/
	* decl2.c (constrain_visibility): Check decl_has_visibility_attr
	rather than DECL_VISIBILITY_SPECIFIED.

From-SVN: r181069
2011-11-06 23:40:14 -05:00
Quentin Neill
c0baa6dc73 Fix r180999.
2011-11-05  Quentin Neill  <quentin.neill@amd.com>

	Fix r180999.
	* config.gcc: Add f16cintrin.h.

From-SVN: r181068
2011-11-07 04:22:14 +00:00
Sebastian Huber
76644b6874 config.host (arm*-*-rtemseabi*): New target.
2011-11-06  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* config.host (arm*-*-rtemseabi*): New target.

From-SVN: r181065
2011-11-07 04:22:39 +01:00
Sebastian Huber
e36c5271e3 config.gcc (arm*-*-rtemseabi*): New target.
2011-11-06  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* config.gcc (arm*-*-rtemseabi*): New target.
	* config/arm/rtems-eabi.h: New.
	* config/arm/t-rtems-eabi: New.

From-SVN: r181064
2011-11-07 04:21:19 +01:00
David S. Miller
6e25d659c1 Get rid of sparc's UNSPEC_SHORT_LOAD.
* config/sparc/sparc.md (UNSPEC_SHORT_LOAD): Delete.
	(zero_extend_v8qi_vis, zero_extend_v4hi_vis,
	*zero_extend_v8qi_<P:mode>_insn,
	*zero_extend_v4hi_<P:mode>_insn): Express using vec_merge
	and vec_duplicate instead of using an UNSPEC.

From-SVN: r181063
2011-11-06 18:22:40 -08:00
Terry Guo
2805cc271b wmul-1.c: Adjust optimization level.
2011-11-07  Terry Guo  <terry.guo@arm.com>

        * gcc.target/arm/wmul-1.c: Adjust optimization level.
        * gcc.target/arm/wmul-2.c: Ditto.
        * gcc.target/arm/wmul-3.c: Ditto.
        * gcc.target/arm/wmul-4.c: Ditto.

From-SVN: r181062
2011-11-07 02:20:35 +00:00
Alan Modra
d85087f6a0 re PR target/30282 (Optimization flag -O1 -fschedule-insns2 cause red zone to be used when there is none)
PR target/30282
	* config/rs6000/rs6000.c (rs6000_emit_stack_reset): Always emit
	blockage for ABI_V4.

From-SVN: r181056
2011-11-07 11:44:33 +10:30
Dave Korn
c5219bb0ec cygwin.h (LIBGCJ_SONAME): Updated to match recent libgcj version bump.
* config/i386/cygwin.h (LIBGCJ_SONAME): Updated to match recent
	libgcj version bump.
	* config/i386/mingw32.h (LIBGCJ_SONAME): Likewise.

From-SVN: r181055
2011-11-07 00:30:29 +00:00
Eric Botcazou
43c8a04391 gcse.c: Adjust outdated comments throughout.
* gcse.c: Adjust outdated comments throughout.
	(struct mem_conflict_info): New structure.
	(mems_conflict_for_gcse_p): Use it to communicate with caller.
	(load_killed_in_block_p): Pass it to note_stores.
	(hash_expr): Remove superfluous line break.
	(hash_scan_set): Rename PAT parameter into SET.
	(hash_scan_insn): Reorder cases.
	(canon_list_insert): Fix long line.
	(edge_list): Delete.
	(prune_expressions): Rename E local variable into EXPR.
	(compute_pre_data): Return struct edge_list * object.
	(pre_expr_reaches_here_p_work): Fix formatting.
	(process_insert_insn): Move around comment.
	(pre_edge_insert): Fix long line.
	(pre_insert_copies): Likewise.
	(gcse_emit_move_after): Swap SRC and DEST parameters.
	(pre_delete): Adjust call to gcse_emit_move_after.
	(pre_gcse): Take struct edge_list * parameter.  Fix long line.
	(one_pre_gcse_pass): Use flag_gcse_lm condition for all routines.
	Use a local list of edges.
	(hoist_code): Fix long line.  Adjust call to gcse_emit_move_after.
	(pre_ldst_expr_hash): Fix long line.
	(free_ldst_mems): Rename into...
	(free_ld_motion_mems): ...this.
	(first_ls_expr): Delete.
	(next_ls_expr): Likewise.
	(print_ldst_list): Do not use above two functions.
	(simple_mem): Adjust interface.
	(compute_ld_motion_mems): Fix formatting.
	(update_ld_motion_stores): Reuse local variable.

From-SVN: r181054
2011-11-07 00:22:18 +00:00
GCC Administrator
c8772697e1 Daily bump.
From-SVN: r181053
2011-11-07 00:18:36 +00:00
Jonathan Wakely
f1e09f0d14 basic_string.h (basic_string::at): Move adjacent to other overload.
* include/bits/basic_string.h (basic_string::at): Move adjacent to other
	overload.
	(basic_string::pop_back): Define.
	* include/debug/string (__gnu_debug::basic_string::pop_back): Likewise.
	* include/ext/vstring.h (__versa_string::pop_back): Likewise.
	* config/abi/pre/gnu.ver: Add new symbols.
	* testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New.
	* testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New.
	* testsuite/21_strings/basic_string/range_access.cc: Split to ...
	* testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ...
	* testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here.
	* testsuite/ext/vstring/modifiers/char/pop_back.cc: New.
	* testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New.

From-SVN: r181049
2011-11-07 00:06:23 +00:00
Joseph Myers
d19fa6b5f1 c-decl.c (shadow_tag_warned, [...]): Handle _Alignas specifiers.
* c-decl.c (shadow_tag_warned, grokdeclarator): Handle _Alignas
	specifiers.
	(build_null_declspecs): Initialize align_log and alignas_p fields.
	(declspecs_add_alignas): New.
	* c-parser.c (c_token_starts_declspecs): Handle RID_ALIGNAS.
	(c_parser_declspecs): Handle _Alignas specifiers.
	(c_parser_alignas_specifier): New.
	(c_parser_alignof_expression): Diagnose alignof use for non-C1X.
	Diagnose _Alignof (expression).
	* c-tree.h (struct c_declspecs): Add align_log and alignas_p
	fields.
	(declspecs_add_alignas): Declare.
	* ginclude/stddef.h (max_align_t): Define for C1X and C++11.
	* ginclude/stdalign.h: New.
	* Makefile.in (USER_H): Add stdalign.h.

c-family:
	* c-common.c (c_common_reswords): Add _Alignas and _Alignof.
	(c_sizeof_or_alignof_type): Diagnose alignof applied to a function
	type.
	(check_user_alignment): New.  Split out of
	handle_aligned_attribute.  Disallow integer constants with
	noninteger types.  Conditionally allow zero.
	(handle_aligned_attribute): Use check_user_alignment.
	* c-common.h (RID_ALIGNAS, check_user_alignment): New.

testsuite:
	* g++.dg/cpp0x/alignof3.C, gcc.dg/c1x-align-1.c,
	gcc.dg/c1x-align-2.c, gcc.dg/c1x-align-3.c, gcc.dg/c1x-align-4.c,
	gcc.dg/c90-align-1.c, gcc.dg/c99-align-1.c: New tests.
	* gcc.dg/gnu89-const-expr-1.c, gcc.dg/gnu90-const-expr-1.c,
	gcc.dg/gnu99-const-expr-1.c, gcc.dg/gnu99-static-1.c: Update
	expected diagnostics.

From-SVN: r181048
2011-11-06 23:51:19 +00:00
Jonathan Wakely
55d2e499d6 backwards_compatibility.xml: Fix autoconf tests for C++11 compiler features and library headers.
* doc/xml/manual/backwards_compatibility.xml: Fix autoconf tests for
	C++11 compiler features and library headers. Add stable id
	attributes. Use <filename> element for headers and surround in angle
	brackets. Use <classname> for classes.
	* doc/html/*: Regenerate.

From-SVN: r181047
2011-11-06 23:25:25 +00:00
Joern Rennecke
9e582b1da0 regset.h (fixed_reg_set_regset): Declare.
* regset.h (fixed_reg_set_regset): Declare.
        * dse.c: Include regset.h .
        (struct insn_info): Add member fixed_regs_live.
        (note_add_store_info): New typedef.
        (note_add_store): New function.
        (emit_inc_dec_insn_before): Expect arg to be of type insn_info_t .
        Use gen_add3_insn / gen_move_insn.
        Check new insn for unwanted clobbers before emitting it.
        (check_for_inc_dec): Rename to...
        (check_for_inc_dec_1:) ... this.  Return bool.  Take insn_info
        parameter.  Changed all callers in file.
        (check_for_inc_dec, copy_fixed_regs): New functions.
        (scan_insn): Set fixed_regs_live field of insn_info.
        * rtl.h (check_for_inc_dec): Update prototype.
        * postreload.c (reload_cse_simplify): Take new signature of
        check_ind_dec into account.
        * reginfo.c (fixed_reg_set_regset): New variable.
        (init_reg_sets_1): Initialize it.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>

From-SVN: r181046
2011-11-06 22:58:54 +00:00
Jonathan Wakely
57899d2fc5 status_cxx2011.xml: Document <cuchar> and <cstdalign> as missing.
* doc/xml/manual/status_cxx2011.xml: Document <cuchar> and
	<cstdalign> as missing.

From-SVN: r181045
2011-11-06 22:10:41 +00:00
Janus Weil
eaee02a520 gfortran.h (gfc_extend_expr): Modified prototype.
2011-11-06  Janus Weil  <janus@gcc.gnu.org>

	* gfortran.h (gfc_extend_expr): Modified prototype.
	* interface.c (gfc_extend_expr): Return 'match' instead of 'gfc_try'.
	Remove argument 'real_error'.
	* resolve.c (resolve_operator): Modified call to 'gfc_extend_expr'.

From-SVN: r181044
2011-11-06 22:36:54 +01:00
Paolo Carlini
9965f21f9c re PR c++/47695 ([C++0X] Calling a deleted function fails twice)
2011-11-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/47695
	* decl2.c (mark_used): Early return false after error or sorry.
	* cp-tree.h (mark_used): Adjust declaration.
	* semantics.c (finish_id_expression): Check mark_used return value.

From-SVN: r181042
2011-11-06 21:05:44 +00:00
Jonathan Wakely
f25481f470 faq.xml: Replace references to C++0x with C++11.
* doc/xml/faq.xml: Replace references to C++0x with C++11.
	* doc/xml/manual/intro.xml: Likewise.
	* doc/xml/manual/backwards_compatibility.xml: Likewise.
	* doc/xml/manual/shared_ptr.xml: Likewise.
	* doc/xml/manual/configure.xml: Likewise.
	* doc/xml/manual/evolution.xml: Likewise.
	* doc/xml/manual/using.xml: Likewise.
	* doc/xml/manual/strings.xml: Likewise.
	* doc/xml/manual/debug_mode.xml: Likewise.
	* doc/xml/manual/policy_data_structures.xml: Likewise.
	* doc/xml/manual/extensions.xml: Likewise.
	* doc/xml/manual/diagnostics.xml: Likewise.
	* doc/xml/manual/test.xml: Likewise.
	* doc/xml/manual/status_cxx200x.xml: Likewise, and rename to...
	* doc/xml/manual/status_cxx2011.xml: Here.
	* doc/Makefile.am: Rename status_cxx200x.xml.
	* doc/Makefile.in: Regenerate.
	* doc/html/*: Regenerate.

From-SVN: r181041
2011-11-06 20:15:53 +00:00
Jakub Jelinek
4a7ab00c25 tree-cfg.c (gimple_can_merge_blocks_p): For -O0 don't remove any user labels.
* tree-cfg.c (gimple_can_merge_blocks_p): For -O0 don't remove
	any user labels.

From-SVN: r181040
2011-11-06 20:43:32 +01:00
John David Anglin
5e490f2a35 re PR other/50991 (crtstuff.c:65:23: fatal error: libgcc_tm.h: No such file or directory)
PR other/50991
	* Makefile.in: Make EXTRA_PARTS depend on libgcc_tm.h instead of
	extra-parts.

From-SVN: r181039
2011-11-06 19:24:19 +00:00