Commit Graph

114132 Commits

Author SHA1 Message Date
Richard Guenther b200cc3fcc re PR lto/41159 ([LTO] ICE in insert_value_copy_on_edge, at tree-outof-ssa.c:225)
2011-12-21  Richard Guenther  <rguenther@suse.de>

	PR lto/41159
	* tree-outof-ssa.c (insert_value_copy_on_edge): Use the
	mode of the pseudo as destination mode.  Only assert that
	is equal to the promoted mode of the decl if it is a REG.

From-SVN: r182570
2011-12-21 09:22:58 +00:00
Tristan Gingold 8e1d97d43b fde-vms.c (UNW_IVMS_MODE): Define.
2011-12-21  Tristan Gingold  <gingold@adacore.com>

	* config/ia64/fde-vms.c (UNW_IVMS_MODE): Define.

From-SVN: r182568
2011-12-21 08:52:47 +00:00
Tristan Gingold b409555383 xm-vms.h (STANDARD_EXEC_PREFIX): Remove define.
2011-12-21  Tristan Gingold  <gingold@adacore.com>

	* config/vms/xm-vms.h (STANDARD_EXEC_PREFIX): Remove define.

From-SVN: r182567
2011-12-21 08:42:12 +00:00
Richard Henderson e6431744b2 ia64: Implement vec_perm_const.
* config/ia64/ia64.c (MAX_VECT_LEN): New.
        (struct expand_vec_perm_d): New.
        (TARGET_VECTORIZE_VEC_PERM_CONST_OK): New.
        (ia64_unpack_assemble): Use ia64_expand_vec_perm_const_1.
        (expand_vselect, expand_vselect_vconcat): New.
        (expand_vec_perm_identity, expand_vec_perm_shrp): New.
        (expand_vec_perm_1, expand_vec_perm_broadcast): New.
        (expand_vec_perm_interleave_2, expand_vec_perm_v4hi_5): New.
        (ia64_expand_vec_perm_const_1, ia64_expand_vec_perm_const): New.
        (ia64_vectorize_vec_perm_const_ok): New.
        (ia64_expand_vec_setv2sf, ia64_expand_vec_perm_even_odd): New.
        * config/ia64/ia64-protos.h: Update.
        * config/ia64/vect.md (VEC): New mode iterator.
        (vecint): New mode attribute.
        (vec_interleave_lowv8qi, vec_interleave_highv8qi): Privatize with '*'.
        (vec_interleave_lowv4hi, vec_interleave_highv4hi): Likewise.
        (vec_interleave_lowv2si, vec_interleave_highv2si): Likewise.
        (vec_interleave_lowv2sf, vec_interleave_highv2sf): Likewise.
        (mix1_even, mix1_odd, mux1_alt): Likewise.
        (mux1_brcst_qi): Remove '*' from name.
        (vec_extract_evenv8qi, vec_extract_oddv8qi): Remove.
        (vec_extract_evenv4hi, vec_extract_oddv4hi): Remove.
        (vec_extract_evenv2si, vec_extract_oddv2si): Remove.
        (vec_extract_evenv2sf, vec_extract_oddv2sf): Remove.
        (vec_extract_evenodd_helper): Remove.
        (vec_setv2sf): Use ia64_expand_vec_setv2sf.
        (vec_pack_trunc_v4hi): Use ia64_expand_vec_perm_even_odd.
        (vec_pack_trunc_v2si): Likewise.
        (vec_perm_const<VEC>): New.

From-SVN: r182564
2011-12-20 17:03:00 -08:00
Richard Henderson 0f3d6c10f4 Always simplify vector shifts by scalars.
Also decompose vectors in large integer modes.

        * tree-vect-generic.c (expand_vector_operations_1): Correct tests
        for vector types -- use the type not the mode.  Fix optab selection
        for vector shifts by a scalar.  Handle over-large integer modes
        like BLKmode.

From-SVN: r182563
2011-12-20 16:41:24 -08:00
Richard Henderson 96e69fe20e arm: Split xorsi with constant after reload.
This puts xorsi3 in the same format as andsi3 and iorsi3.
This similarity fixes code generation issues with splitting
atomic_fetch_xor post-reload.

        * config/arm/arm.md (*arm_xorsi3): Match iorsi3 and perform
        post-reload splitting.

From-SVN: r182562
2011-12-20 16:35:41 -08:00
Richard Henderson 6cb2b9646d arm: Use arm_cmpdi_unsigned for thumb2 as well
This changes code generation from "eors; eors; orrs" (which ranges
from 6 to 12 bytes and requires three scratch registers), to
"cmp; it; cmp" (which is always 6 bytes for register inputs and
requires no scratch registers).

        * config/arm/arm.md (*arm_cmpdi_unsigned): Enable for thumb2.
        * config/arm/arm.c (arm_select_cc_mode): Use it.

From-SVN: r182561
2011-12-20 16:34:09 -08:00
GCC Administrator fa14fefd24 Daily bump.
From-SVN: r182560
2011-12-21 00:19:23 +00:00
Paolo Carlini 7ac37b9675 re PR c++/51621 ([c++0x] [4.6/4.7 Regression] ICE with invalid constexpr and array class member)
/cp
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51621
	* tree.c (diagnose_non_constexpr_vec_init): For value initialization
	pass void_type_node, not void_zero_node, to build_vec_init_elt.

/testsuite
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51621
	* g++.dg/cpp0x/constexpr-ice5.C: New.

From-SVN: r182556
2011-12-20 23:51:09 +00:00
Ian Lance Taylor a0c8d0c1e3 morestack.S (__morestack_non_split): If there is enough stack space already, don't split.
* config/i386/morestack.S (__morestack_non_split): If there is
	enough stack space already, don't split.  Ask for more stack space
	than we required.

From-SVN: r182555
2011-12-20 22:34:30 +00:00
Richard Sandiford 3752b2ab7c tree-ssa-math-opts.c (convert_plusminus_to_widen): Restrict handling of signedness differences to integer types.
gcc/
	* tree-ssa-math-opts.c (convert_plusminus_to_widen): Restrict
	handling of signedness differences to integer types.  Only build
	a new optype if type1 isn't correct.

From-SVN: r182554
2011-12-20 21:33:48 +00:00
Vladimir Makarov 9d19c7329c re PR target/49865 (Unnecessary reload causes small bloat)
2011-12-20  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/49865
	* ira-costs.c (find_costs_and_classes): Prefer registers even
          if the memory cost is the same.

From-SVN: r182553
2011-12-20 21:29:36 +00:00
Sergio Durigan Junior 6904889880 unwind-arm-common.inc: Include `tconfig.h', `tsystem.h' and `sys/sdt.h'.
2011-12-20  Sergio Durigan Junior  <sergiodj@redhat.com>

	* unwind-arm-common.inc: Include `tconfig.h', `tsystem.h' and
	`sys/sdt.h'.
	(_Unwind_DebugHook): New function.
	(uw_restore_core_regs): New define.
	(unwind_phase2): Use uw_restore_core_regs instead of
	restore_core_regs.
	(unwind_phase2_forced): Likewise.
	(__gnu_Unwind_Resume): Likewise.

From-SVN: r182552
2011-12-20 20:54:25 +00:00
Joseph Myers 48b0b19630 gcc:
* c-decl.c (diagnose_mismatched_decls, grokdeclarator, grokfield)
	(finish_struct): Refer to C11 in comments.  Use flag_isoc11.
	* c-parser.c (c_parser_static_assert_declaration)
	(c_parser_static_assert_declaration_no_semi, c_parser_declspecs)
	(c_parser_alignas_specifier, c_parser_alignof_expression): Refer
	to C11 in comments.  Use flag_isoc11.
	* c-typeck.c (comptypes_check_different_types): Refer to C11 in
	comment.
	* doc/cpp.texi (Overview): Refer to -std=c11 instead of -std=c1x.
	* doc/cppopts.texi (-std=c11, -std=gnu11): Document in preference
	to -std=c1x and -std=gnu1x.
	* doc/extend.texi (Inline, Alternate Keywords, Other Builtins)
	(__builtin_complex, Unnamed Fields): Refer to -std=c11 and C11
	instead of -std=c1x and C1X.
	* doc/invoke.texi (-std=c11, -std=iso9899:2011): Document in
	preference to -std=c1x.
	(-std=gnu11): Document in preference to -std=gnu1x.
	* doc/standards.texi: Document C11 instead of C1X.  Document C11
	as actual standard.  Document headers required from freestanding
	C11 implementations.
	* ginclude/float.h, ginclude/stddef.h: Test __STDC_VERSION__ >=
	201112L for C11.  Update comments to refer to C11.

gcc/c-family:
	* c-common.c (flag_isoc99): Update comment to refer to C11.
	(flag_isoc1x): Change to flag_isoc11.
	* c-common.h (flag_isoc99): Update comment to refer to C11.
	(flag_isoc1x): Change to flag_isoc11.
	* c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
	C11.
	* c-opts.c (set_std_c1x): Change to set_std_c11.
	(c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
	Call set_std_c11.
	(set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
	(set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
	* c.opt (std=c1x): Change to std=c11.  Document as non-draft
	standard.
	(std=c1x, std=iso9899:2011): Add as aliases of std=c11.
	(std=gnu1x): Change to std=gnu11.  Refer to non-draft standard.
	(std=gnu1x): Make alias of std=gnu11.

gcc/testsuite:
	* gcc.dg/c11-version-1.c, gcc.dg/c11-version-2.c,
	gcc.dg/c94-version-1.c, gcc.dg/c99-version-1.c,
	gcc.dg/gnu11-version-1.c: New tests.

libcpp:
	* include/cpplib.h (CLK_GNUC1X): Change to CLK_GNUC11.
	(CLK_STDC1X): Change to CLK_STDC11.
	* init.c (lang_defaults): Update comments.
	(cpp_init_builtins): Update language tests.  Use 201112L for C11
	__STDC_VERSION__.

From-SVN: r182551
2011-12-20 20:44:13 +00:00
Ian Lance Taylor d8fa39bfc8 libgo/runtime: Don't define _GNU_SOURCE in source code.
From-SVN: r182550
2011-12-20 18:49:40 +00:00
Ian Lance Taylor e44d7e3917 syscall: Don't define IPMreq in socket_irix.go.
From Rainer Orth.

From-SVN: r182549
2011-12-20 18:17:21 +00:00
Ian Lance Taylor d48be5dfaf libgo: Fix use of -D_GNU_SOURCE and friends when building libgo.
From-SVN: r182548
2011-12-20 18:14:30 +00:00
Andreas Schwab 4a5e00ca50 warnings.m4 (ACX_PROG_CC_WARNING_OPTS): Avoid leading dash in expr call.
config/:
	* warnings.m4 (ACX_PROG_CC_WARNING_OPTS): Avoid leading dash in
	expr call.
fixincludes/:
	* configure: Regenerate.
gcc/:
	* configure: Regenerate.
libcpp/:
	* configure: Regenerate.
libdecnumber/:
	* configure: Regenerate.
libiberty/:
	* configure: Regenerate.
lto-plugin/:
	* configure: Regenerate.

From-SVN: r182546
2011-12-20 16:54:12 +00:00
Bernd Schmidt 36acc1a242 expr.c (store_field): Avoid a direct store if the mode is larger than the size of the bit field.
gcc/
	* expr.c (store_field): Avoid a direct store if the mode is larger
	than the size of the bit field.
	* stor-layout.c (layout_decl): If flag_strict_volatile_bitfields,
	treat non-volatile bit fields like volatile ones.
	* toplev.c (process_options): Disallow combination of
	-fstrict-volatile-bitfields and ABI versions less than 2.
	* config/arm/arm.c (arm_option_override): Don't enable
	flag_strict_volatile_bitfields if the ABI version is less than 2.
	* config/h8300/h8300.c (h8300_option_override): Likewise.
	* config/rx/rx.c (rx_option_override): Likewise.
	* config/m32c/m32c.c (m32c_option_override): Likewise.
	* config/sh/sh.c (sh_option_override): Likewise.

	gcc/testsuite/
	* gcc.target/arm/volatile-bitfields-4.c: New test.
	* c-c++-common/abi-bf.c: New test.

From-SVN: r182545
2011-12-20 16:46:22 +00:00
Arnaud Charlet 51e641f8ef [multiple changes]
2011-12-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch12.adb (Insert_Freeze_Node_For_Instance):  Further
	refinements on the placement of a freeze node for a package
	instantiation, when the generic appears within a previous
	instantiation in the same unit.If the current instance is within
	the one that contains the generic, the freeze node for the
	current one must appear in the current declarative part. Ditto
	if the current instance is within another package instance. In
	these cases the freeze node of the previous instance is is not
	relevant. New predicate Enclosing_Body simplifies the process.
	(Freeze_Subprogram_Body): Rename Enclosing_Body to
	Enclosing_Package_Body, to prevent confusion with subprogram of
	same name elsewhere.
	(Install_Body): Recognize enclosing subprogram bodies to determine
	whether freeze_node belongs in current declarative list.

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

	* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Allow
	attribute definition clause for renaming if generated internally
	and generate duplicate clause to apply to renamed object.
	(Rep_Item_Too_Late): Only diagnose source level entities
	* prj-nmsc.adb: Minor reformatting.
	* gcc-interface/Make-lang.in: Update dependencies.

From-SVN: r182542
2011-12-20 15:09:26 +01:00
Arnaud Charlet b2009d4681 [multiple changes]
2011-12-20  Bob Duff  <duff@adacore.com>

	* opt.ads (List_Inherited_Aspects): Default to False
	(i.e. -gnatw.L is the default).
	* usage.adb: Document new default for -gnatw.L.
	* gnat_ugn.texi: Document -gnatw.l and -gnatw.L switches.
	* warnsw.adb (Set_Warning_Switch): Do not include
	List_Inherited_Aspects in -gnatwa.

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

	* checks.adb (Apply_Type_Conversion_Checks): For a discrete type
	with predicates, indicate unconditionally that a range check
	is needed.
	* exp_ch4.adb (Expand_N_In): When the membership test is rewritten
	to incorporate a call to a predicate function, analyze expression
	with checks suppressed, to prevent infinite recursion.

From-SVN: r182540
2011-12-20 15:04:19 +01:00
Arnaud Charlet 2f7b74678b [multiple changes]
2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch11.adb (Find_Local_Handler): Guard the
	search over individual exception choices in case the list of
	handlers contains other (possibly illegal) constructs.

2011-12-20  Gary Dismukes  <dismukes@adacore.com>

	* sem_ch8.adb (Find_Type): Test taggedness
	of the Available_Type when checking for an illegal use of an
	incomplete type, when the incomplete view is a limited view of
	a type. Remove redundant Is_Tagged test.

2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_util.adb: Add with and use clause for Aspects.
	(Is_Finalizable_Transient): Objects which denote Ada containers
	in the context of iterators are not considered transients. Such
	object must live for as long as the loop is around.
	(Is_Iterated_Container): New routine.

2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_imgv.adb (Expand_Width_Attribute): Add a
	type conversion from the enumeration subtype to its base subtype.

From-SVN: r182539
2011-12-20 15:00:46 +01:00
Arnaud Charlet b26f70a095 Minor reformatting.
From-SVN: r182538
2011-12-20 14:56:21 +01:00
Hristian Kirtchev 15954beb2b sem_ch4.adb (Operator_Check): Update the call to Is_Dimensioned_Type.
2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch4.adb (Operator_Check): Update the call to
	Is_Dimensioned_Type.
	* sem_dim.adb: Remove with and use clause for Namet.Sp. Reorganize
	all type declarations and datastructures involved. Propagate
	all changes involving data structures and types throughout
	the pakage. Alphabetize all subprograms. Add ??? comments.
	(AD_Hash): Removed.
	(Analyze_Aspect_Dimension): Rewritten. This
	routine now does all its checks in one pass rather than
	two. Refactor code. The error message are now in a more GNAT-ish style.
	(Create_Rational_From_Expr): This is now a function.
	(Get_Dimensions): Removed.
	(Get_Dimensions_String_Id): Removed.
	(Dimensions_Of): New rouitne.
	(Exists): New routines.
	(Is_Invalid): New routine.
	(Permits_Dimensions): Removed.
	(Present): Removed.
	(Set_Symbol): New routine.
	(System_Of): New routine.
	* sem_dim.ads: Rewrite the top level description of the
	package. Alphabetize subprograms. Add various comments on
	subprogram usage. Add ??? comments.
	(Is_Dimensioned_Type):
	Renamed to Has_Dimension_System.
	* sem_res.adb (Resolve_Op_Expon): Update the call to Is_Dimensioned_Type

From-SVN: r182537
2011-12-20 14:55:31 +01:00
Ed Schonberg 76d49f494a sem_ch13.adb (Check_Indexing_Functions): The return type of an indexing function can be the default element type...
2011-12-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb (Check_Indexing_Functions): The return type of an
	indexing function can be the default element type, and does not
	need to be a reference type.
	* sem_ch4.adb (Try_Container_Indexing): Ditto.

From-SVN: r182536
2011-12-20 14:53:42 +01:00
Arnaud Charlet a68d415b1d [multiple changes]
2011-12-20  Robert Dewar  <dewar@adacore.com>

	* a-cdlili.ads, sem_cat.adb, sem_ch10.adb: Minor reformatting.

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

	* s-taprop-mingw.adb (Yield): Do_Yield is no longer Unreferenced.

2011-12-20  Vincent Pucci  <pucci@adacore.com>

	* impunit.adb: s-dimkio, s-dimmks and s-dmotpr defined as GNAT
	Defined Additions to System.
	* Makefile.rtl: s-dimkio, s-dimmks and s-dmotpr added.
	* s-dimkio.ads, s-dimmks.ads, s-dmotpr.ads: New files.

2011-12-20  Gary Dismukes  <dismukes@adacore.com>

	* sem_ch4.adb (Traverse_Homonyms): Allow a homonym to match when
	within an instance, even if the homonym is marked Is_Hidden at
	this point.

From-SVN: r182535
2011-12-20 14:52:22 +01:00
Arnaud Charlet 54c04d6ca5 [multiple changes]
2011-12-20  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb, sem_ch5.adb, s-diinio.adb, s-diinio.ads, sem_dim.adb,
	sem_dim.ads, sem_res.adb, s-stposu.adb, s-stposu.ads, sem_ch4.adb,
	s-diflio.adb, s-diflio.ads, exp_disp.adb, s-llflex.ads: Minor
	reformatting.
	* aspects.ads: Dimension[_Aspects] are GNAT defined.

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

	* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Check
	renaming case.

2011-12-20  Thomas Quinot  <quinot@adacore.com>

	* sem_cat.adb, sem_ch10.adb (Analyze_With_Clause): For a WITH clause on
	a child unit that is an illegal instantiation, mark the WITH clause in
	error.
	(Install_Siblings, Validate_Categorization_Dependency): Guard
	against WITH clause marked as in error.

From-SVN: r182534
2011-12-20 14:47:44 +01:00
Hristian Kirtchev 7b2aafc959 sem_res.adb (Resolve_Allocator): Warning on allocation of tasks on a subpool and rewrite the allocator into a...
2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_res.adb (Resolve_Allocator): Warning on allocation
	of tasks on a subpool and rewrite the allocator into a raise
	Program_Error statement.
	* s-stposu.ads, s-stposu.adb: Code reformatting.
	(Create_Subpool): Remove formal parameter Storage_Size.
	(Default_Subpool_For_Pool): Add the default implementation of this
	routine.
	(Set_Pool_Of_Subpool): Rename formal parameter Pool to To. Update
	all the uses of the parameter.

From-SVN: r182533
2011-12-20 14:41:00 +01:00
Dodji Seketeli 9a417f117e PR debug/49951 - jumpy stepping at end of scope in C++
gcc/cp/

	PR debug/49951
	* decl.c (cxx_maybe_build_cleanup): Don't set location of the call
	to the destructor.

gcc/testsuite/

	PR debug/49951
	* g++.dg/gcov/gcov-2.C: Adjust.

From-SVN: r182532
2011-12-20 14:36:04 +01:00
Rainer Orth 08b2f8e637 Support 64-bit libjava multilib for i?86-linux
* configure.ac (i?86-*-linux*): Set SIGNAL_HANDLER_AUX.
	* configure: Regenerate.
	* include/i386-signal.h: Wrap in __i386__, include
	java-signal-aux.h otherwise.

From-SVN: r182528
2011-12-20 12:18:26 +00:00
Rainer Orth 6b302f9720 Support 64-bit libgnat multilib on i?86-linux
* gcc-interface/Makefile.in (%86 linux%):
	(LIBGNAT_TARGET_PAIRS_32): Split off from LIBGNAT_TARGET_PAIRS.
	(LIBGNAT_TARGET_PAIRS_64): New.
	(LIBGNAT_TARGET_PAIRS): Add either depending on multilib.

From-SVN: r182527
2011-12-20 12:16:43 +00:00
Paolo Carlini f0bc5f840f re PR c++/51612 ([c++0x] [4.6/4.7 Regression] ICE with constexpr constructor and virtual base class)
/cp
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51612
	* semantics.c (is_valid_constexpr_fn): In case of constexpr
	constructors also check for virtual base classes.

/testsuite
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51612
	* g++.dg/cpp0x/constexpr-ice4.C: New.

From-SVN: r182526
2011-12-20 10:38:44 +00:00
Richard Guenther 336e404f9f re PR debug/46796 (debug info missing builtin type names with lto)
2011-12-20  Richard Guenther  <rguenther@suse.de>

	PR lto/46796
	* dwarf2out.c (modified_type_die): When the type variant
	chain is corrupt use the types name, if available, instead
	of __unknown__.

From-SVN: r182524
2011-12-20 09:49:17 +00:00
Jonathan Wakely d8ab827382 re PR libstdc++/51365 (cannot use final empty class in std::tuple)
PR libstdc++/51365
	* include/std/tuple (_Tuple_impl): Check __is_final as well as
	is_empty.
	* testsuite/20_util/tuple/51365.cc: New.

From-SVN: r182523
2011-12-20 09:09:50 +00:00
Uros Bizjak 1bb4b6a35a linux-unwind.h: Update copyright years.
* config/alpha/linux-unwind.h: Update copyright years.
	(MD_FROB_UPDATE_CONTEXT): New define.
	(alpha_frob_update_context): New function.

From-SVN: r182522
2011-12-20 09:46:38 +01:00
Tristan Gingold cf45cd09af alpha.c (alpha_start_function): Adjust condition to create VMS trampoline entry point.
2011-12-20  Tristan Gingold  <gingold@adacore.com>

	* config/alpha/alpha.c (alpha_start_function): Adjust condition to
	create VMS trampoline entry point.

From-SVN: r182521
2011-12-20 08:35:12 +00:00
Tristan Gingold 8c3db96e64 aclocal.m4: Assume strncmp works in cross case.
2011-12-20  Tristan Gingold  <gingold@adacore.com>

	* aclocal.m4: Assume strncmp works in cross case.
	* configure: Regenerate

From-SVN: r182520
2011-12-20 08:08:30 +00:00
GCC Administrator 0f172beec4 Daily bump.
From-SVN: r182516
2011-12-20 00:18:56 +00:00
Benjamin Kosnik d50fb67123 eh_tm.cc (free_any_cxa_exception): Use __GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.
2011-12-19  Benjamin Kosnik  <bkoz@redhat.com>

	* libsupc++/eh_tm.cc (free_any_cxa_exception): Use
	__GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.

From-SVN: r182512
2011-12-20 00:16:25 +00:00
Benjamin Kosnik 31785b29ee search_n.cc: Disambiguate local variable.
2011-12-19  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/performance/25_algorithms/search_n.cc: Disambiguate
	local variable.

From-SVN: r182510
2011-12-19 23:29:14 +00:00
Paolo Carlini eded273670 re PR c++/51328 (ICE on invalid template parameter)
/cp
2011-12-19  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51328
	* pt.c (convert_template_argument): Early error out and return
	error_mark_node for invalid uses of destructors as types.

/testsuite
2011-12-19  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51328
	* g++.dg/template/crash109.C: New.

From-SVN: r182508
2011-12-19 22:40:11 +00:00
Richard Sandiford 77a748f887 Add a PR reference.
From-SVN: r182506
2011-12-19 22:23:42 +00:00
Jason Merrill 4f7002c581 re PR c++/51530 ([C++0x] internal compiler error: in unify, at cp/pt.c:16854)
PR c++/51530
	* pt.c (unify): Handle NULLPTR_TYPE.

From-SVN: r182505
2011-12-19 17:08:29 -05:00
Richard Sandiford 7a61392921 fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND optimization if the source register is already extended.
gcc/
	* fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND
	optimization if the source register is already extended.

From-SVN: r182504
2011-12-19 22:05:28 +00:00
Richard Sandiford 373203331a mult-1.c: Require -O2.
gcc/testsuite/
	* gcc.target/mips/mult-1.c: Require -O2.

From-SVN: r182502
2011-12-19 21:45:21 +00:00
Richard Sandiford da3507d0a4 ext-2.c: Add NOMIPS16.
gcc/testsuite/
	* gcc.target/mips/ext-2.c: Add NOMIPS16.

From-SVN: r182501
2011-12-19 21:42:12 +00:00
Richard Sandiford 488c8379f4 lower-subreg.c (can_decompose_p): Check every word of a hard register.
gcc/
	* lower-subreg.c (can_decompose_p): Check every word of a hard
	register.

From-SVN: r182500
2011-12-19 21:19:13 +00:00
Jason Merrill 176fcc5d18 re PR c++/51526 ([C++11][constexpr] constexpr delegating constructor should be accepted)
PR c++/51526
	* semantics.c (build_data_member_initialization): Handle
	delegating constructor.
	(build_constexpr_constructor_member_initializers): Likewise.

From-SVN: r182499
2011-12-19 16:06:44 -05:00
Sandra Loosemore 8f1ad6b6bf re PR rtl-optimization/50380 ([4.6 only] cc1 hangs eating 100% CPU)
2011-12-19  Sandra Loosemore  <sandra@codesourcery.com>
	    Tom de Vries <tom@codesourcery.com>

	PR rtl-opt/50380

	gcc/
	* cse.c (find_comparison_args): Detect fixed point and
	bail early.

	gcc/testsuite/
	* gcc.c-torture/compile/pr50380.c: New testcase.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r182498
2011-12-19 15:29:21 -05:00
Tobias Burnus 1e815d3221 re PR fortran/51605 (internal compiler error gfc_trans_block_construct, at fortran/trans-stmt.c:984)
2011-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51605
        * parse.c (gfc_fixup_sibling_symbols): Regard FL_LABEL as
        local symbol.

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

        PR fortran/51605
        * gfortran.dg/block_10.f90: New.

From-SVN: r182497
2011-12-19 21:18:18 +01:00