Commit Graph

115112 Commits

Author SHA1 Message Date
Andrew MacLeod c51ec0a3d6 optabs.c (expand_atomic_load): Do not assume compare_and_swap will succeed for larger than word integers.
* optabs.c (expand_atomic_load): Do not assume compare_and_swap will
	succeed for larger than word integers.

From-SVN: r184009
2012-02-08 15:26:02 +00:00
Richard Guenther ea72cc1dca re PR rtl-optimization/52170 (ICE in trunc_int_for_mode, at explow.c:57 during simplify_plus_minus)
2012-02-08  Richard Guenther  <rguenther@suse.de>

	PR rtl-optimization/52170
	* simplify-rtx.c (simplify_plus_minus): Use CONSTM1_RTX to
	properly handle integer vector modes.

	* gcc.dg/torture/pr52170.c: New testcase.

From-SVN: r184007
2012-02-08 13:29:22 +00:00
Jakub Jelinek 9e66e106ab re PR gcov-profile/52150 (junk at end of line in Firefox PGO build)
PR gcov-profile/52150
	* coverage.c: Include target.h.
	(build_var): Call targetm.strip_name_encoding on the assembler name.
	Change one _ into . or $ if the target allows it.
	* Makefile.in (coverage.o): Depend on $(TARGET_H).

	* gcc.dg/tree-prof/pr52150.c: New test.

From-SVN: r184006
2012-02-08 14:27:31 +01:00
Jakub Jelinek bd73623c90 re PR rtl-optimization/52139 (ICE: in remove_insn, at emit-rtl.c:3960 with -O -fPIC -fno-tree-dominator-opts -fno-tree-fre)
PR rtl-optimization/52139
	* cfgrtl.c (cfg_layout_merge_blocks): If BB_END
	is a BARRIER after emit_insn_after_noloc, move BB_END
	to the last non-BARRIER insn before it.

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

From-SVN: r184005
2012-02-08 13:29:43 +01:00
Arnaud Charlet 7b50c4a3fa [multiple changes]
2012-02-08  Vincent Celier  <celier@adacore.com>

	* gcc-interface/Make-lang.in: Add g-byorma.o to gnatbind objects
	(g-buorma is now imported by sinput).
	Update dependencies.
	* scn.adb (Initialize_Scanner): Call Check_For_BOM
	* sinput-p.adb (Source_File_Is_Subunit): Call Check_For_BOM
	* sinput.adb: New procedure Check_For_BOM
	* sinput.ads: New procedure Check_For_BOM

2012-02-08  Vincent Pucci  <pucci@adacore.com>

	* impunit.adb: Dimension package names updated
	* Makefile.rtl: s-dim added
	* sem_dim.adb (Is_Procedure_Put_Call): minor changes
	(Is_Dim_IO_Package_Instantiation): minor changes
	* sem_dim.ads: minor changes in comments
	* snames.ads-tmpl: Name_Dim added Name_Dim_Float_IO and
	Name_Dim_Integer_IO removed
	* s-dim.ads: New package. Define the dimension terminology.
	* s-diflio.adb, s-diinio.adb, s-dimkio.ads, s-dimmks.ads,
	* s-dmotpr.ads: Package names updated.
	* s-diflio.ads, s-diinio.ads: Documentation added and package
	names updated.

2012-02-08  Gary Dismukes  <dismukes@adacore.com>

	* gcc-interface/utils2.c (build_call_alloc_dealloc_proc): Revise test
	for storage pools to test for an underlying record type rather than
	testing Is_Tagged_Type, so that simple storage pools will be handled
	the same as normal Ada storage pools.

From-SVN: r184004
2012-02-08 11:13:54 +01:00
Arnaud Charlet f62054146e [multiple changes]
2012-02-08  Yannick Moy  <moy@adacore.com>

	* gnat_rm.texi: Minor reshuffling to place restriction at
	appropriate place.

2012-02-08  Bob Duff  <duff@adacore.com>

	* warnsw.adb (Set_Warning_Switch): Set Warn_On_Suspicious_Modulus_Value
	False for '-gnatwA', to suppress these warnings.

2012-02-08  Vincent Celier  <celier@adacore.com>

	* sinput-p.adb (Source_File_Is_Subunit): Check for BOM before
	starting to scan, so that UTF8 encoding is taken into account.

2012-02-08  Arnaud Charlet  <charlet@adacore.com>

	* s-tasren.adb, s-tasren.ads (Internal_Complete_Rendezvous): New
	function.
	(Complete_Rendezvous): Now call Internal_Complete_Rendezvous.
	(Exceptional_Complete_Rendezvous): Mark No_Return.

2012-02-08  Eric Botcazou  <ebotcazou@adacore.com>

	* exp_aggr.adb (Compile_Time_Known_Composite_Value):
	New predicate to compute whether a composite value can be
	evaluated at compile time.
	(Component_Not_OK_For_Backend): Use Compile_Time_Known_Value for all
	expressions of elementary type and Compile_Time_Known_Composite_Value
	for all other expressions.
	(Expand_Record_Aggregate): Convert to assignments in the case
	of a type with mutable components if the aggregate cannot be
	built statically.

2012-02-08  Gary Dismukes  <dismukes@adacore.com>

	* aspects.ads (type Aspect_Id): Add Simple_Storage_Pool_Type.
	(Impl_Defined_Aspects): Add association for
	Aspect_Simple_Storage_Pool_Type.
	(Aspect_Names): Add
	association for Aspect_Simple_Storage_Pool_Type.
	* aspects.adb:
	(Canonical_Aspect): Add association for Simple_Storage_Pool_Type.
	* exp_attr.adb (Expand_N_Attribute_Reference):
	Change name to Name_Simple_Storage_Pool_Type.
	* exp_ch4.adb (Expand_N_Allocator): Change
	name to Name_Simple_Storage_Pool_Type.
	* exp_intr.adb (Expand_Unc_Deallocation): Change name to
	Name_Simple_Storage_Pool_Type.	* freeze.adb (Freeze_Entity):
	Change names to Name_Simple_Storage_Pool_Type.	* par-prag.adb:
	Change names to Name_Simple_Storage_Pool_Type.	* sem_attr.adb:
	(Analyze_Attribute): Change name to Name_Simple_Storage_Pool_Type.
	* sem_ch13.adb (Analyze_Attribute_Definition_Clause):
	Change name to Name_Simple_Storage_Pool_Type.
	* sem_prag.adb:
	(Analyze_Pragma): Change name to Name_Simple_Storage_Pool_Type.
	(Sig_Flags): Change name to Name_Simple_Storage_Pool_Type.
	* sem_res.adb (Resolve_Allocator): Change name to
	Name_Simple_Storage_Pool_Type.	* snames.ads-tmpl:
	(Name_Simple_Storage_Pool_Type): New name constant.
	(type Pragma_Id): Change name to Name_Simple_Storage_Pool_Type and
	move to main pragma section because it no longer matches the
	attribute name.
	* snames.adb-tmpl (Get_Pragma_Id): Remove test for
	Name_Simple_Storage_Pool.
	(Is_Pragma_Name): Remove test for Name_Simple_Storage_Pool.

2012-02-08  Robert Dewar  <dewar@adacore.com>

	* gnat_ugn.texi: Add some clarification to -gnatwA and -gnatws.

From-SVN: r184003
2012-02-08 11:04:46 +01:00
Jason Merrill 88f7a9f691 re PR c++/51675 ([C++11][4.7 Regression] Cannot create constexpr unions)
PR c++/51675
	* semantics.c (cx_check_missing_mem_inits): Handle unions.
	Fix constexpr default constructor logic.

From-SVN: r184001
2012-02-08 04:52:19 -05:00
Jason Merrill 84d594c648 re PR c++/52035 (internal compiler error: tree code ‘template_type_parm’ is not supported in LTO streams)
PR c++/52035
	* pt.c (tsubst): Strip uninstantiated typedef.

From-SVN: r184000
2012-02-08 04:52:11 -05:00
Pascal Obry 75685ef74d prj.adb (Compute_All_Imported_Projects): Use new For_Project_And_Aggregated_Context to ensure proper context is used for...
2012-02-08  Pascal Obry  <obry@adacore.com>

	* prj.adb (Compute_All_Imported_Projects): Use new
	For_Project_And_Aggregated_Context to ensure proper context is
	used for encapsulated aggregate libraries.
	* prj-proc.adb (Recursive_Process): Call
	Process_Aggregated_Projects earlier to ensure that all dependent
	projects are set with the proper encapsulated status.

2012-02-08  Pascal Obry  <obry@adacore.com>

	* s-os_lib.adb (Normalize_Arguments): Properly escape last \ in null
	terminated string.

From-SVN: r183999
2012-02-08 10:31:12 +01:00
Pascal Obry 8364925760 prj.ads, prj.adb (For_Project_And_Aggregated_Context): New generic routine with a context parameter.
2012-02-08  Pascal Obry  <obry@adacore.com>

	* prj.ads, prj.adb (For_Project_And_Aggregated_Context): New
	generic routine with a context parameter.

From-SVN: r183998
2012-02-08 10:29:11 +01:00
Arnaud Charlet a8551b5f9c [multiple changes]
2012-02-08  Robert Dewar  <dewar@adacore.com>

	* a-coinve.adb, sem_util.adb, sem_ch8.adb, a-cobove.adb,
	a-convec.adb: Minor reformatting and code reorganization.

2012-02-08  Steve Baird  <baird@adacore.com>

	* sem_cat.adb (In_Preelaborated_Unit): A child
	unit instantiation does not inherit preelaboration requirements
	from its parent.

2012-02-08  Gary Dismukes  <dismukes@adacore.com>

	* aspects.ads (type Aspect_Id): Add Aspect_Simple_Storage_Pool.
	(Impl_Defined_Aspects): Add entry for Aspect_Simple_Storage_Pool.
	(Aspect_Argument): Add Name entry for Aspect_Simple_Storage_Pool.
	(Aspect_Names): Add entry for Aspect_Simple_Storage_Pool.
	* aspects.adb (Canonical_Aspect): Add entry for
	Aspect_Simple_Storage_Pool.
	* exp_attr.adb (Expand_N_Attribute_Reference): Handle case of
	Attribute_Simple_Storage_Pool in the same way as Storage_Pool
	(add conversion, analyze/resolve). For the Storage_Size attribute,
	for the simple pool case, locate and use the simple pool type's
	Storage_Size function (if any), otherwise evaluate to zero.
	* exp_ch4.adb (Expand_N_Allocator): In the case of an allocator
	for an access type with an associated simple storage pool,
	locate and use the pool type's Allocate.
	* exp_intr.adb (Expand_Unc_Deallocation): In the case where the
	access type has a simple storage pool, locate the pool type's
	Deallocate procedure (if present) and use it as the procedure
	to call on the Free operation.
	* freeze.adb (Freeze_Entity): In the case of a full type for
	a private type defined with pragma Simple_Storage_Pool, check
	that the full type is also appropriate for the pragma. For
	a simple storage pool type, validate that the operations
	Allocate, Deallocate (if present), and Storage_Size
	(if present) are defined with appropriate expected profiles.
	(Validate_Simple_Pool_Op_Formal): New procedure
	(Validate_Simple_Pool_Operation): New procedure Add with and
	use of Rtsfind.
	* par-prag.adb: Add Pragma_Simple_Storage_Pool to case statement
	(no action required).
	* sem_attr.adb (Analyze_Attribute): For the case of the
	Storage_Pool attribute, give a warning if the prefix type has an
	associated simple storage pool, and rewrite the attribute as a
	raise of Program_Error. In the case of the Simple_Storage_Pool
	attribute, check that the prefix type has an associated simple
	storage pool, and set the attribute type to the pool's type.
	* sem_ch13.adb (Analyze_Aspect_Specifications): Add
	Aspect_Simple_Storage_Pool case choice.
	(Analyze_Attribute_Definition_Clause): Add
	Aspect_Simple_Storage_Pool to case for Ignore_Rep_Clauses
	(no action). Add handling for Simple_Storage_Pool attribute
	definition, requiring the name to denote a simple storage pool
	object.
	(Check_Aspect_At_Freeze_Point): For a simple storage pool
	aspect, set the type to that of the name specified for the aspect.
	* sem_prag.adb (Analyze_Pragma): Add handling for pragma
	Simple_Storage_Pool, requiring that it applies to a library-level
	type declared in a package declaration that is a limited private
	or limited record type.
	* sem_res.adb (Resolve_Allocator): Flag an attempt to call a
	build-in-place function in an allocator for an access type with
	a simple storage pool as unsupported.
	* snames.ads-tmpl: Add Name_Simple_Storage_Pool.
	(type Attribute_Id): Add Attribute_Simple_Storage_Pool.
	(type Pragma_Id): Add Pragma_Simple_Storage_Pool.
	* snames.adb-tmpl (Get_Pragma_Id): Handle case of
	Name_Simple_Storage_Pool.
	(Is_Pragma_Name): Return True for Name_Simple_Storage_Pool.

2012-02-08  Cyrille Comar  <comar@adacore.com>

	* projects.texi: Clarify doc for interfaces.

From-SVN: r183997
2012-02-08 10:27:17 +01:00
Benjamin Kosnik 86c923c886 user.cfg.in: Update to doxygen 1.7.6.1.
2012-02-07  Benjamin Kosnik  <bkoz@redhat.com>

	    * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
	    * doc/xml/manual/documentation_hacking.xml: Update.


From-SVN: r183995
2012-02-08 07:20:09 +00:00
Ian Lance Taylor 047cff816d compiler, runtime: Check make int64 args for overflow.
From-SVN: r183994
2012-02-08 06:18:41 +00:00
Ian Lance Taylor 7f57843fbe runtime: System-specific hack fix for x86_64 Solaris 10.
Fixes problem in which setcontext changes all thread-specific
information.

From-SVN: r183993
2012-02-08 05:30:12 +00:00
GCC Administrator 3327318150 Daily bump.
From-SVN: r183991
2012-02-08 00:18:35 +00:00
Joseph Myers 0a337862a9 * de.po: Update.
From-SVN: r183987
2012-02-07 23:54:45 +00:00
John David Anglin eab08fec52 pr41558.f90: Use lp64 instead of hppa*64*-*-*.
* gfortran.dg/guality/pr41558.f90: Use lp64 instead of hppa*64*-*-*.
	* gcc.dg/special/weak-1.c: Likewise.
	* gcc.dg/ucnid-12.c: Likewise.
	* gcc.dg/torture/pr45678-1.c: Likewise.
	* gcc.dg/torture/pr45678-2.c: Likewise.
	* gcc.dg/vector-4.c: Likewise.
	* gcc.dg/ipa/inline-5.c: Likewise.
	* gcc.dg/ucnid-11.c: Likewise.
	* gcc.misc-tests/gcov-13.c: Likewise.
	* gcc.misc-tests/gcov-14.c: Likewise.
	* g++.dg/ext/label13.C: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-31.c: Use dg-additional-options for extra
	hppa*-*-hpux* options.
	* gcc.dg/tree-ssa/ssa-fre-33.c: Likewise.
	* gcc.dg/tree-ssa/ssa-fre-34.c: Likewise.
	* gcc.dg/pr48616.c: Likewise.
	* gcc.dg/pr17957.c: Likewise.
	* gcc.dg/pr17055-1.c: Likewise.
	* gcc.dg/pr32912-1.c: Likewise.
	* gcc.dg/tm/pr51472.c: Likewise.
	* c-c++-common/fold-bitand-4.c: Likewise.
	* c-c++-common/Wunused-var-12.c: Use lp64 instead of hppa*64*-*-*.
	Use dg-additional-options for extra options.

From-SVN: r183985
2012-02-07 22:28:18 +00:00
Jonathan Wakely b8a8c70309 39909.cc: Remove duplicate target selector.
* testsuite/30_threads/call_once/39909.cc: Remove duplicate target
	selector.
	* testsuite/30_threads/call_once/49668.cc: Likewise.
	* testsuite/30_threads/call_once/call_once1.cc: Likewise.
	* testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/cons/1.cc: Likewise.
	* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
	* testsuite/30_threads/mutex/lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
	* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
	* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
	* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
	* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
	* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.

From-SVN: r183984
2012-02-07 22:26:16 +00:00
Eric Botcazou f95c653970 Make-lang.in (GCC_LINKERFLAGS): New variable.
* gcc-interface/Make-lang.in (GCC_LINKERFLAGS): New variable.
	(GCC_LINK): Use it.

From-SVN: r183983
2012-02-07 21:09:39 +00:00
Joern Rennecke 1e4b5b0b29 * gcc.target/epiphany/interrupt-2.c: New test.
From-SVN: r183982
2012-02-07 20:37:23 +00:00
Ian Lance Taylor b806269c9b compiler, libgo: Use //extern comments rather than __asm__.
From-SVN: r183981
2012-02-07 19:26:30 +00:00
Richard Sandiford 85dcef0d41 Fix last entry.
From-SVN: r183980
2012-02-07 19:24:10 +00:00
Richard Sandiford 584cf8c713 re PR target/52155 (loongson.h requires -flax-vector-conversions with newlib targets)
gcc/testsuite/
	PR target/52155
	* gcc.target/mips/mips.exp (mips-dg-options): Handle xfail and target.
	* gcc.target/mips/loongson-shift-count-truncated-1.c: Force -mlong64
	for MIPS ELF.

From-SVN: r183979
2012-02-07 19:23:35 +00:00
Richard Sandiford 040af979a4 re PR target/52152 (MIPS ELF targets should use dbxelf.h)
gcc/testsuite/
	PR target/52152
	* objc.dg/stabs-1.m: XFAIL for mips*-*-elf*.

From-SVN: r183978
2012-02-07 19:18:27 +00:00
Richard Sandiford 4566de104d re PR middle-end/24306 (va_arg gets confused when skipping over certain zero-sized types with -msse)
gcc/
	PR middle-end/24306
	* config/mips/mips.c (mips_std_gimplify_va_arg_expr): New function.
	(mips_gimplify_va_arg_expr): Call it instead of
	std_gimplify_va_arg_expr.

gcc/testsuite/
	PR middle-end/24306
	PR target/52154
	* lib/target-supports.exp (check_effective_target_mips_eabi): New.
	* gcc.target/mips/va-arg-1.c: New test.

From-SVN: r183977
2012-02-07 19:15:10 +00:00
Michael Meissner 7cb5ce1a2d rs6000.c (rs6000_trampoline_init): Fix error message for -mno-pointers-to-nested-function.
[gcc]
2012-02-07  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/rs6000.c (rs6000_trampoline_init): Fix error
	message for -mno-pointers-to-nested-function.

[gcc/testsuite]
2012-02-07  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/no-r11-3.c (outer_func): Fix error message
	for -mno-pointers-to-nested-functions.

From-SVN: r183976
2012-02-07 18:39:52 +00:00
Eric Botcazou f22cfd73cd re PR middle-end/51994 (git-1.7.8.3 miscompiled due to negative bitpos from get_inner_reference)
PR middle-end/51994
	* expr.c (get_inner_reference): If there is an offset, add a negative
	bit position to it (if any).

From-SVN: r183974
2012-02-07 17:21:36 +00:00
Jakub Jelinek 13a72c0ba3 re PR rtl-optimization/52060 (Invalid constant simplification in combine with parallel result)
PR rtl-optimization/52060
	* combine.c (try_combine): Add i0src_copy and i0src_copy2 variables,
	copy i1src to i1src_copy whenever added_sets_2 && i1_feeds_i2_n already
	before i1dest -> i1src substitution in newpat, copy i0src to i0src_copy
	and/or i0src_copy2 when needed.

	* gcc.dg/torture/pr52060.c: New test.

From-SVN: r183972
2012-02-07 16:48:52 +01:00
Jakub Jelinek 117cb2bc98 gcc.c (main): Don't look for lto-wrapper or lto-wrapper or LTOPLUGINSONAME if have_c.
* gcc.c (main): Don't look for lto-wrapper or lto-wrapper
	or LTOPLUGINSONAME if have_c.

From-SVN: r183971
2012-02-07 16:17:42 +01:00
Jakub Jelinek deb3f362b3 freebsd-spec.h: Add comment about what macros can be defined in this header.
* config/freebsd-spec.h: Add comment about what macros can be defined
	in this header.
	(LINK_EH_SPEC, LINK_SSP_SPEC, USE_LD_AS_NEEDED): Don't define here.
	* config/freebsd.h (LINK_EH_SPEC, LINK_SSP_SPEC, USE_LD_AS_NEEDED): But
	here instead.

From-SVN: r183970
2012-02-07 16:16:45 +01:00
Ira Rosen 9c9e39ddda MAINTAINERS (Various Maintainers): Remove myself as auto-vectorizer maintainer.
* MAINTAINERS (Various Maintainers): Remove myself as
        auto-vectorizer maintainer.

From-SVN: r183968
2012-02-07 13:42:34 +00:00
Richard Guenther b1edf2bc09 gimple-pretty-print.c (dump_gimple_phi): Avoid excessive newline in -alias dumps.
2012-02-07  Richard Guenther  <rguenther@suse.de>

	* gimple-pretty-print.c (dump_gimple_phi): Avoid excessive
	newline in -alias dumps.

From-SVN: r183966
2012-02-07 12:10:11 +00:00
Joern Rennecke be648db7d0 * config/epiphany/epiphany.h (LIB_SPEC): Link libc again after libgloss.
From-SVN: r183964
2012-02-07 11:32:10 +00:00
Kai Tietz 26cfb9ab3d re PR target/40068 (GCC fails to apply dllexport attribute to typeinfo.)
2012-02-07  Kai Tietz  <ktietz@redhat.com>
            Dave Korn  <dave.korn.cygwin@gmail.com>

        PR target/40068
        * config/i386/winnt-cxx.c (i386_pe_adjust_class_at_definition):
        Take care that typinfo gets dllexport-attribute.

Co-Authored-By: Dave Korn <dave.korn.cygwin@gmail.com>

From-SVN: r183962
2012-02-07 11:45:59 +01:00
Jakub Jelinek b1b95093ad re PR middle-end/52074 (ICE: RTL flag check: MEM_VOLATILE_P used with unexpected rtx code 'plus' in extract_fixed_bit_field, at expmed.c:1734)
PR middle-end/52074
	* expr.c (expand_expr_addr_expr_1): For CONSTANT_CLASS_P or CONST_DECL
	if modifier < EXPAND_SUM call force_operand on the result.

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

From-SVN: r183956
2012-02-07 10:22:51 +01:00
Jonathan Wakely b59cbd5034 re PR libstdc++/51296 (Several 30_threads tests FAIL on Tru64 UNIX)
libgcc/

	PR libstdc++/51296
	PR libstdc++/51906
	* gthr-posix.h: Allow static initializer macros to be disabled.
	(__gthrw_pthread_cond_init): Define weak reference unconditionally.

libstdc++-v3/

	PR libstdc++/51296
	* include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
	* src/c++11/condition_variable.cc (condition_variable): Use macro for
	initializer function.

	PR libstdc++/51906
	* config/os/bsd/darwin/os_defines.h: Disable static initializer for
	recursive mutexes.

From-SVN: r183955
2012-02-07 09:19:27 +00:00
Tobias Burnus 38cbc63a76 re PR fortran/51514 ([OOP] Wrong code when passing a scalar CLASS to a TYPE)
2012-02-07  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51514
        * trans-expr.c (gfc_conv_procedure_call): Add _data component
        for calls of scalar CLASS actuals to TYPE dummies.

2012-02-07  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51514
        * gfortran.dg/class_to_type_2.f90: New.

From-SVN: r183954
2012-02-07 09:15:14 +01:00
Joern Rennecke 6009801342 epiphany.h (ASM_DECLARE_FUNCTION_SIZE): Redefine...
* config/epiphany/epiphany.h (ASM_DECLARE_FUNCTION_SIZE): Redefine,
        adding __forwarder_dst__ prefix if a forwarder_section attribute is
        present.
        (epiphany_function_type): Replace types for specific interrupts with
        EPIPHANY_FUNCTION_INTERRUPT.
        (EPIPHANY_INTERRUPT_P): Update.
        * config/epiphany/epiphany.c (epiphany_handle_forwarder_attribute):
        New static function.
        (epiphany_attribute_table) <interrupt>: min_len is 0, max_len is 9.
        <disinterrupt>: Affects type identity.
        (epiphany_handle_interrupt_attribute): Handle variable number of
        arguments.
        (epiphany_compute_function_type): Update for new
        epiphany_function_type definition.
        (epiphany_expand_prologue): Don't save (reg:DI GPR_0) for interrupt
        handlers with a longcall forwarder.
        (epiphany_start_function): Handle multiple interrupt arguments and/or
        forwarder_section attribute.

From-SVN: r183953
2012-02-07 02:28:06 +00:00
GCC Administrator 300f7e1640 Daily bump.
From-SVN: r183951
2012-02-07 00:18:53 +00:00
Alan Modra 30f0eb2d91 re PR target/52107 (IBM 128bit long double constant loaded inefficiently)
PR target/52107
	* config/rs6000/rs6000.c (rs6000_emit_move): Don't create DImode
	subregs of TFmode.

From-SVN: r183945
2012-02-07 08:39:13 +10:30
Bill Schmidt c5f14d626e re PR tree-optimization/50969 (17% degradation in 168.wupwise for interleave via permutation)
2012-02-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	PR tree-optimization/50969
	* tree-vect-stmts.c (vect_model_store_cost): Correct statement cost to
	use vec_perm rather than vector_stmt.
	(vect_model_load_cost): Likewise.
	* config/i386/i386.c (ix86_builtin_vectorization_cost): Change cost of
	vec_perm to be the same as other vector statements.
	* config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Revise
	cost of vec_perm for TARGET_VSX.

From-SVN: r183944
2012-02-06 21:39:34 +00:00
Thomas Koenig 9903b69dbd re PR fortran/32373 (not vectorized: can't determine dependence (equivalence))
2012-02-06  Thomas König  <tkoenig@gcc.gnu.org>

	PR fortran/32373
	* gfortran.dg/vect/vect-8.f90:  Use vect_double effective target.
	Remove module.

From-SVN: r183943
2012-02-06 21:24:54 +00:00
Jonathan Wakely 2caa135a20 re PR libstdc++/52128 (r183788 caused massive libstdc++ testsuite regression on i686-linux)
PR libstdc++/52128
	* src/c++11/future.cc: Add explicit instantiation.

From-SVN: r183942
2012-02-06 20:51:52 +00:00
François Dumont 74345dec22 2012-02-06 François Dumont <fdumont@gcc.gnu.org>
* include/debug/safe_iterator.h
	(_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
	creation of a _Safe_iterator instance to do the check.

From-SVN: r183941
2012-02-06 20:19:44 +00:00
Jason Merrill cb406914ff re PR c++/52088 (ICE in "delete" with template convertion operator)
PR c++/52088
	* cvt.c (build_expr_type_conversion): Check for template conversion.

From-SVN: r183940
2012-02-06 14:52:43 -05:00
Richard Guenther 973a39ae60 re PR tree-optimization/52115 (ICE: verify_ssa failed (missing definition for SSA_NAME))
2012-02-06  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52115
	* tree-sra.c (access_has_replacements_p): New function.
	(sra_modify_assign): Use it to decide whether a use is uninitialized.

	* gcc.c-torture/compile/pr52115.c: New testcase.

From-SVN: r183937
2012-02-06 14:54:47 +00:00
Patrick Marlier fe924d9ff0 re PR middle-end/52047 ([trans-mem] ICE: SIGSEGV in execute_tm_mark (trans-mem.c:2270) with -O -fgnu-tm -fprefetch-loop-arrays)
PR middle-end/52047
        * trans-mem.c (expand_call_tm): Add an assertion.
        * calls.c (flags_from_decl_or_type): Add ECF_TM_PURE to 'no vops'
        functions.

From-SVN: r183936
2012-02-06 14:42:07 +00:00
Richard Guenther 1d30a09a48 re PR tree-optimization/50955 (IVopts incorrectly rewrite the address of a global memory access into a local form.)
2012-02-06  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/50955
	* tree-ssa-loop-ivopts.c (get_computation_cost_at): Artificially
	raise cost of expressions that replace an address with an
	expression based on a different pointer.

From-SVN: r183934
2012-02-06 13:43:03 +00:00
Jakub Jelinek 2c8b5d61bc re PR target/52129 (wrong code to pass parameters to tail call function)
PR target/52129
	* calls.c (mem_overlaps_already_clobbered_arg_p): If val is
	CONST_INT_P, subtract resp. add crtl->args.pretend_args_size to it.

	* gcc.c-torture/execute/pr52129.c: New test.

From-SVN: r183933
2012-02-06 14:33:05 +01:00
Paolo Carlini 93286335bb re PR c/52118 (The explanation of Wunused-local-typedefs is truncated)
2012-02-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c/52118
	* c.opt ([Wunused-local-typedefs]): Fix description.

From-SVN: r183932
2012-02-06 10:31:18 +00:00