1. 24 Oct, 2011 20 commits
    • re PR tree-optimization/50838 (ice in refs_may_alias_p_1 with -O3) · 0a500dd3
      2011-10-24  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/50838
      	* tree-data-ref.c (dr_analyze_indices): Properly canonicalize
      	a MEM_REF base if we change it.
      
      	* gcc.dg/torture/pr50838.c: New testcase.
      
      From-SVN: r180381
      Richard Guenther committed
    • Fix date. · 30e1709c
      From-SVN: r180380
      Arnaud Charlet committed
    • re PR rtl-optimization/50833 (ICE: in maybe_record_trace_start, at… · eec8a31a
      re PR rtl-optimization/50833 (ICE: in maybe_record_trace_start, at dwarf2cfi.c:2243 with -fshrink-wrap)
      
      	PR rtl-optimization/50833
      	* function.c (thread_prologue_and_epilogue_insns): Expect the
      	return insn optimization only if optimize.
      
      From-SVN: r180377
      Bernd Schmidt committed
    • re PR bootstrap/50836 (bootstrap fails due to error: no previous prototype for… · 9f02e6a5
      re PR bootstrap/50836 (bootstrap fails due to error: no previous prototype for 'find_all_hard_reg_sets')
      
      	PR bootstrap/50836
      	* rtlanal.c: Swap includes of "hard-reg-set.h" and "rtl.h".
      
      From-SVN: r180376
      Bernd Schmidt committed
    • [multiple changes] · b3c33641
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* sem.adb (Initialize): Fix bug that blew up if called a second
      	time.
      
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* tb-alvxw.c, tracebak.c, expect.c, initflt.c, tb-alvms.c,
      	tb-ivms.c, tb-gcc.c: Update headers to GPL 3.
      
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma, case Debug): Give proper pragma
      	name in error msg.
      
      2011-10-24  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* gnat_rm.texi Add an entry for restriction No_Finalization.
      
      2011-10-24  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Insert_Freeze_Node_For_Instance):  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 both of these cases the freeze node of the
      	previous instance is not relevant.
      
      2011-10-24  Gary Dismukes  <dismukes@adacore.com>
      
      	* switch-m.adb (Normalize_Compiler_Switches): Add recognition
      	of AAMP-specific switches -univ and -aamp_target.
      
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* a-tienau.adb (Put): Deal properly with limited line length.
      
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* sem_warn.adb, sem_ch12.adb: Minor reformatting.
      
      From-SVN: r180375
      Arnaud Charlet committed
    • Makefile.in: Use GNU ld switches to generate map files on AIX. · 8263e17a
      2011-10-16  Tristan Gingold  <gingold@adacore.com>
      
              * gcc-interface/Makefile.in: Use GNU ld switches to generate map files
              on AIX.
      
      From-SVN: r180374
      Tristan Gingold committed
    • [multiple changes] · 12b4d338
      2011-10-24  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Earlier): make available globally. If both
      	nodes have the same sloc, the freeze node that does not come
      	from source is the later one.
      	(True_Parent): Make available globally.
      	(Previous_Instance): Subsidiary of
      	Insert_Freeze_Node_For_Instance, to check whether the generic
      	parent of the current instance is declared within a previous
      	instance in the same unit or declarative  part, in which case the
      	freeze nodes of both instances must appear in order to prevent
      	elaboration problems in gigi.
      	* sem_ch12.adb (Insert_Freeze_Node_For_Instance): A stub is a
      	freeze point, and the freeze node of a preceding instantiation
      	must be inserted before it.
      
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* checks.ads, checks.adb: Add handling of Synchronization_Check
      	* debug.adb: Add doc for -gnatd.d and -gnatd.e (disable/enable
      	atomic sync).
      	* exp_ch2.adb (Expand_Entity_Reference): Set Atomic_Sync_Required
      	flag Minor code reorganization.
      	* opt.ads (Warn_On_Atomic_Synchronization): New switch.
      	* par-prag.adb: Add dummy entries for pragma
      	Disable/Enable_Atomic_Synchronization.
      	* sem_prag.adb (Process_Suppress_Unsuppress): Handle
      	case of Atomic_Synchronization specially (not suppressed
      	by All_Checks, cannot be set from Source).
      	(Pragma Disable/Enable_Atomic_Synchronization): Add processing.
      	* sinfo.ads, sinfo.adb: Add Atomic_Sync_Required flag
      	* snames.ads-tmpl: Add entry for Atomic_Synchronization Add
      	entry for pragma Disable/Enable_Atomic_Synchronization
      	* switch-c.adb: The -gnatp switch does not disable
      	Atomic_Synchronization Add -gnatep switch to disable
      	Atomic_Synchronization.
      	* types.ads: Add entry for Synchronization_Check
      	* usage.adb: Add line for -gnated switch
      	* warnsw.adb: Settings for Warn_On_Atomic_Synchronization
      
      From-SVN: r180373
      Arnaud Charlet committed
    • [multiple changes] · 08ce7bb8
      2011-10-24  Geert Bosch  <bosch@adacore.com>
      
      	* s-gearop.adb (Back_Substitute): Avoid overflow if matrix
      	bounds start at Integer'First.
      
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch12.adb, s-gearop.adb: Minor reformatting
      
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* warnsw.adb: Add some missing warnings to Set_GNAT_Mode_Warnings
      	* warnsw.ads: Add comments to Set_GNAT_Mode_Warnings
      
      From-SVN: r180372
      Arnaud Charlet committed
    • avr.c: Break long lines. · d2111e2f
      	* config/avr/avr.c: Break long lines.
      	Define target hooks on the fly if applicable.
      	(TARGET_ASM_FUNCTION_RODATA_SECTION): Remove first definition
      	overridden later.
      	(targetm): Move definition to end of file.
      	(avr_can_eliminate): Make static on the fly.
      	(avr_frame_pointer_required_p): Ditto.
      	(avr_hard_regno_scratch_ok): Ditto.
      	(avr_builtin_setjmp_frame_value): Make static on the fly.
      	Indent according to coding rules.
      	(avr_case_values_threshold): Ditto.
      	(avr_attribute_table): Move down.
      
      From-SVN: r180371
      Georg-Johann Lay committed
    • [multiple changes] · 292689c2
      2011-10-24  Emmanuel Briot  <briot@adacore.com>
      
      	* prj-proc.adb (Process_Expression_Variable_Decl): No special
      	handling for Project_Path unless it is an attribute.
      
      2011-10-24  Javier Miranda  <miranda@adacore.com>
      
      	* sem_ch12.adb (Check_Hidden_Primitives): New subprogram.
      	(Install_Hidden_Primitives): New subprogram.
      	(Restore_Hidden_Primitives): New subprogram.
      	(Analyze_Formal_Package_Declaration,
      	Analyze_Package_Instantiation, Analyze_Subprogram_Instantiation):
      	Invoke Check_Hidden_Primitives after every call to
      	Analyze_Associations, and invoke Restore_Hidden_Primitives to
      	restore their visibility after processing the instantiation.
      	(Instantiate_Package_Body): Install visible primitives before
      	analyzing the instantiation and uninstall them to restore their
      	visibility when the instantiation has been analyzed.
      	* sem_util.ads, sem_util.adb (Add_Suffix): New subprogram
      	(Remove_Suffix): New subprogram
      	* sem_ch3.adb (Derive_Subprogram): When handling
      	a derived subprogram for the instantiation of a formal derived
      	tagged type, inherit the dispatching attributes from the actual
      	subprogram (not from the parent type).
      
      From-SVN: r180370
      Arnaud Charlet committed
    • [multiple changes] · db4b3c49
      2011-10-24  Vasiliy Fofanov  <fofanov@adacore.com>
      
      	* gnat_ugn.texi: Document explicit use of XDECGNAT library.
      
      2011-10-24  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch3.adb (Build_Assignment): Add local constant N_Loc and
      	update its uses.
      	(Build_Discriminant_Assignments): Add local variable D_Loc and update
      	its uses.
      	(Build_Init_Statements): Add local variables Comp_Loc, Decl_Loc and
      	Var_Loc and update their uses.
      	(Build_Record_Init_Proc): Code reformatting.
      	(Increment_Counter): Add formal parameter Loc.
      	(Make_Counter): Add formal parameter Loc.
      
      2011-10-24  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* sem_disp.adb (Covers_Some_Interface): Fix typo.
      
      2011-10-24  Matthew Heaney  <heaney@adacore.com>
      
      	* a-cuprqu.adb, a-cbprqu.adb (Dequeue_Only_High_Priority):
      	Predicate had wrong sense.
      
      2011-10-24  Yannick Moy  <moy@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications/Aspect_Test_Case):
      	Translate arguments in positional notation into pragma argument
      	association arguments for the generated pragma.
      
      2011-10-24  Arnaud Charlet  <charlet@adacore.com>
      
      	* exp_ch5.adb: Fix minor typo.
      
      2011-10-24  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Is_Visible_Component): Refine predicate for
      	the case of a component reference in an instance body, when the
      	enclosing type is private.
      
      From-SVN: r180369
      Arnaud Charlet committed
    • 2011-10-24 Sergey Rybin <rybin@adacore.com frybin> · 86f0e17a
      	* gnat_ugn.texi: For gnatelim, move the note about using the GNAT
      	driver for getting the project support into gnatelim section.
      
      2011-10-24  Robert Dewar  <dewar@adacore.com>
      
      	* gnat_rm.texi: Minor correction to documentation on address
      	clause.
      
      2011-10-24  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* s-finmas.adb (Attach): Synchronize and call the unprotected version.
      	(Attach_Unprotected): New routine.
      	(Delete_Finalize_Address): Removed.
      	(Delete_Finalize_Address_Unprotected): New routine.
      	(Detach): Synchronize and call the unprotected version.
      	(Detach_Unprotected): Remove locking.
      	(Finalize): Add various comment on synchronization. Lock the critical
      	region and call the unprotected versions of routines.
      	(Finalize_Address): Removed.
      	(Finalize_Address_Unprotected): New routine.
      	(Set_Finalize_Address): Synchronize and call
      	the unprotected version.
      	(Set_Finalize_Address_Unprotected): New routine.
      	(Set_Heterogeneous_Finalize_Address): Removed.
      	(Set_Heterogeneous_Finalize_Address_Unprotected): New routine.
      	(Set_Is_Heterogeneous): Add comment on synchronization and
      	locking.
      	* s-finmas.ads: Flag Finalization_Started is no longer atomic
      	because synchronization uses task locking / unlocking.
      	(Attach): Add comment on usage.
      	(Attach_Unprotected): New routine.
      	(Delete_Finalize_Address): Renamed to
      	Delete_Finalize_Address_Unprotected.
      	(Detach): Add comment on usage.
      	(Detach_Unprotected): New routine.
      	(Finalize_Address): Renamed to Finalize_Address_Unprotected.
      	(Set_Finalize_Address): Add comment on usage.
      	(Set_Finalize_Address_Unprotected): New routine.
      	(Set_Heterogeneous_Finalize_Address): Renamed to
      	Set_Heterogeneous_Finalize_Address_Unprotected.
      	* s-stposu.adb (Allocate_Any_Controlled): Add local variable
      	Allocation_Locked. Add various comments on synchronization. Lock
      	the critical region and call the unprotected version of
      	routines.
      	(Deallocate_Any_Controlled): Add various comments on
      	synchronization. Lock the critical region and call the unprotected
      	version of routines.
      
      2011-10-24  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (Set_Fixed_Range): The bounds of a fixed point type
      	are universal and must carry the corresponding type.
      	* sem_eval.adb (Check_Non_Static_Context): If the type of the
      	expression is universal real, as may be the case for a fixed point
      	expression with constant operands in the context of a conversion,
      	there is nothing to check.
      	* s-finmas.adb: Minor reformatting
      
      From-SVN: r180368
      Arnaud Charlet committed
    • re PR tree-optimization/50730 (SLP vectorization confused by unrelated DRs) · 02b76a8d
      
              PR tree-optimization/50730
              * tree-vect-data-refs.c (vect_analyze_data_refs): Stop basic
              block analysis if encountered unsupported data-ref.
      
      From-SVN: r180367
      Ira Rosen committed
    • Implement append([]byte, string...). · a1ee0aaf
      From-SVN: r180364
      Ian Lance Taylor committed
    • Some minor fixes to the rewritten syscall library. · 703f56e5
      From-SVN: r180363
      Ian Lance Taylor committed
    • Fix sol2 sparc -mv8 regression. · d377a5fb
      	* config/sparc/sparc.c (sparc_option_override): Remove -mv8plus
      	cpu adjustment.
      	* config/sparc/linux64.h (CC1_SPEC): When defaulting to 64-bit,
      	append -mcpu=v9 when -mv8plus is given.
      
      From-SVN: r180362
      David S. Miller committed
    • Rename is_open_array_type to is_slice_type. · b7190f2f
      From-SVN: r180361
      Ian Lance Taylor committed
    • Add support for sparc VIS3 fp<-->int moves. · bb12a72a
      	* config/sparc/sparc.h (SECONDARY_MEMORY_NEEDED): We can move
      	between float and non-float regs when VIS3.
      	* config/sparc/sparc.c (eligible_for_restore_insn): We can't
      	use a restore when the source is a float register.
      	(sparc_split_regreg_legitimate): When VIS3 allow moves between
      	float and integer regs.
      	(sparc_register_move_cost): Adjust to account for VIS3 moves.
      	(sparc_preferred_reload_class): On 32-bit with VIS3 when moving an
      	integer reg to a class containing EXTRA_FP_REGS, constrain to
      	FP_REGS.
      	(sparc_secondary_reload): On 32-bit with VIS3 when moving between
      	float and integer regs we sometimes need a FP_REGS class
      	intermediate move to satisfy the reload.  When this happens
      	specify an extra cost of 2.
      	(*movsi_insn): Rename to have "_novis3" suffix and add !VIS3
      	guard.
      	(*movdi_insn_sp32_v9): Likewise.
      	(*movdi_insn_sp64): Likewise.
      	(*movsf_insn): Likewise.
      	(*movdf_insn_sp32_v9): Likewise.
      	(*movdf_insn_sp64): Likewise.
      	(*zero_extendsidi2_insn_sp64): Likewise.
      	(*sign_extendsidi2_insn): Likewise.
      	(*movsi_insn_vis3): New insn.
      	(*movdi_insn_sp32_v9_vis3): New insn.
      	(*movdi_insn_sp64_vis3): New insn.
      	(*movsf_insn_vis3): New insn.
      	(*movdf_insn_sp32_v9_vis3): New insn.
      	(*movdf_insn_sp64_vis3): New insn.
      	(*zero_extendsidi2_insn_sp64_vis3): New insn.
      	(*sign_extendsidi2_insn_vis3): New insn.
      	(TFmode reg/reg split): Make sure both REG operands are float.
      	(*mov<VM32:mode>_insn): Add "_novis3" suffix and !VIS3 guard. Remove
      	easy constant to integer reg alternatives.
      	(*mov<VM64:mode>_insn_sp64): Likewise.
      	(*mov<VM64:mode>_insn_sp32_novis3): Likewise.
      	(*mov<VM32:mode>_insn_vis3): New insn.
      	(*mov<VM64:mode>_insn_sp64_vis3): New insn.
      	(*mov<VM64:mode>_insn_sp32_vis3): New insn.
      	(VM64 reg<-->reg split): New spliiter for 32-bit.
      
      From-SVN: r180360
      David S. Miller committed
    • re PR libstdc++/50834 (Documentation about STL thread safety is ambiguous) · ec8ab7c4
      	PR libstdc++/50834
      	* doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
      
      From-SVN: r180359
      Jonathan Wakely committed
    • Daily bump. · a0d90b97
      From-SVN: r180358
      GCC Administrator committed
  2. 23 Oct, 2011 19 commits
    • Factor out common tests in 8-byte reg/reg move splitters on 32-bit sparc. · b1fc9f8b
      	* config/sparc/sparc.c (sparc_split_regreg_legitimate): New
      	function.
      	* config/sparc/sparc-protos.h (sparc_split_regreg_legitimate):
      	Declare it.
      	* config/sparc/sparc.md (DImode reg/reg split): Use it.
      	(DFmode reg/reg split): Likewise.
      
      From-SVN: r180354
      David S. Miller committed
    • simplify.c (simplify_transformation_to_array): Fix memory leak. · 9c85d38b
      2011-10-23  Steven G. Kargl  <kargl@gcc.gnu.org>
      
          * simplify.c (simplify_transformation_to_array): Fix memory leak.
      
      From-SVN: r180353
      Steven G. Kargl committed
    • Add missing fzero/fone cases to DImode move on 32-bit v9 sparc. · 1255f800
      	* config/sparc/sparc.md (*movdi_insn_sp32_v9): Add alternatives for
      	generating fzero and fone instructions.
      	(DImode const_int --> reg splitter): Only trigger for integer regs.
      
      From-SVN: r180352
      David S. Miller committed
    • Fix sparc so that reload doesn't try to load non-trivial vector consts directly. · 4d1a8838
      	* config/sparc/predicates.md (input_operand): Disallow vector
      	constants other than 0 and -1.
      	* config/sparc/sparc.c (sparc_preferred_reload_class): Return
      	NO_REGS for vector constants other than 0 and -1.
      
      From-SVN: r180351
      David S. Miller committed
    • Use a macro instead of a constant to test for sparc integer regnos. · 5a53588f
      	* config/sparc/sparc.h (SPARC_FIRST_INT_REG, SPARC_LAST_INT_REG,
      	SPARC_INT_REG_P): Define.
      	(HARD_REGNO_NREGS): Use SPARC_INT_REG_P.
      	(REGNO_OK_FOR_INDEX_P): Likewise.
      	* config/sparc/sparc.c (gen_df_reg): Likewise.
      	(eligible_for_return_delay): Likewise.
      	(eligible_for_sibcall_delay): Likewise.
      	(sparc_legitimate_address_p): Likewise.
      	(emit_save_or_restore_regs): Likewise.
      	(registers_ok_for_ldd_peep): Likewise.
      	* config/spac/sparc.md (DI mode splitters): Likewise.
      	(SF mode const splitters): Likewise.
      	(DF mode splitters): Likewise.
      	(32-bit DI mode logical op splitters): Likewise.
      
      From-SVN: r180350
      David S. Miller committed
    • re PR c++/50841 (bootstrap failure: narrowing conversion of… · 0bcf216b
      re PR c++/50841 (bootstrap failure: narrowing conversion of '-0x00000000000000001' from 'int' in tree-object-size.c)
      
      /c-family
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50841
      	Revert:
      	2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
      	of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
      	Wnarrowing for C++0x and C++98.
      	* c.opt ([Wnarrowing]): Update.
      
      /cp
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50841
      	Revert:
      	2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* typeck2.c (check_narrowing): Adjust OPT_Wnarrowing diagnostics.
      	(digest_init_r): Call check_narrowing irrespective of the C++ dialect.
      	* decl.c (check_initializer): Likewise.
      	* semantics.c (finish_compound_literal): Likewise.
      
      /testsuite
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50841
      	Revert:
      	2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* g++.dg/cpp0x/warn_cxx0x2.C: New.
      	* g++.dg/cpp0x/warn_cxx0x3.C: Likewise.
      
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50841
      	Revert:
      	2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.
      
      From-SVN: r180349
      Paolo Carlini committed
    • re PR c++/50841 (bootstrap failure: narrowing conversion of… · 5f53c243
      re PR c++/50841 (bootstrap failure: narrowing conversion of '-0x00000000000000001' from 'int' in tree-object-size.c)
      
      /c-family
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50841
      	Revert:
      	2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
      	of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
      	Wnarrowing for C++0x and C++98.
      	* c.opt ([Wnarrowing]): Update.
      
      /cp
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50841
      	Revert:
      	2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* typeck2.c (check_narrowing): Adjust OPT_Wnarrowing diagnostics.
      	(digest_init_r): Call check_narrowing irrespective of the C++ dialect.
      	* decl.c (check_initializer): Likewise.
      	* semantics.c (finish_compound_literal): Likewise.
      
      /testsuite
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50841
      	Revert:
      	2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* g++.dg/cpp0x/warn_cxx0x2.C: New.
      	* g++.dg/cpp0x/warn_cxx0x3.C: Likewise.
      
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50841
      	Revert:
      	2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.
      
      From-SVN: r180348
      Paolo Carlini committed
    • sse.md (avx2_lshl<mode>3): Remove insn pattern. · 0d459eae
      	* config/i386/sse.md (avx2_lshl<mode>3): Remove insn pattern.
      	(VI248_256): Remove mode iterator.
      	* config/i386/i386.c (ix86_expand_vec_perm): Use gen_ashlv4di3
      	instead of gen_avx2_lshlv4di3.
      	(bdesc_args): Use CODE_FOR_ashl{v16hi,v8si,v4di}3 instead of
      	CODE_FOR_avx2_lshl{v16hi,v8si,v4di}3.
      
      From-SVN: r180346
      Uros Bizjak committed
    • Implement new syscall package. · de27caac
      Calls to library functions now use entersyscall and
      exitsyscall as appropriate.  This is a first step toward
      multiplexing goroutines onto threads.
      
      From-SVN: r180345
      Ian Lance Taylor committed
    • sse.md (sseintprefix): Rename from gthrfirstp. · 7b45b87f
      	* config/i386/sse.md (sseintprefix): Rename from gthrfirstp.
      	(<avx_avx2>_maskload<ssemodesuffix><avxsizesuffix>): Delete expander.
      	(<avx_avx2>_maskload<ssemodesuffix><avxsizesuffix>) Merge insn
      	pattern from *avx2_maskload<ssemodesuffix><avxsizesuffix> and
      	*avx_maskload<ssemodesuffix><avxsizesuffix> using V48_AVX mode
      	iterator.  Use sseintprefix mode attribute.
      	(<avx_avx2>_maskstore<ssemodesuffix><avxsizesuffix>): Delete expander.
      	(<avx_avx2>_maskstore<ssemodesuffix><avxsizesuffix>) Merge insn
      	pattern from *avx2_maskstore<ssemodesuffix><avxsizesuffix> and
      	*avx_maskstore<ssemodesuffix><avxsizesuffix> using V48_AVX mode
      	iterator.  Use sseintprefix mode attribute.
      	(*avx2_gathersi<mode>) Use sseintprefix and ssemodesuffix mode
      	attributes.
      	(*avx2_gatherdi<mode>): Ditto.
      	(*avx2_gatherdi<mode>256): Ditto.
      	(VI48_AVX2): Remove mode iterator.
      	(gthrlastfp): Remove mode attribute.
      
      From-SVN: r180344
      Uros Bizjak committed
    • re PR c++/50810 (c++0x-compat does not warn about narrowing conversions) · 263734e1
      /c-family
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* c-opts.c (c_common_handle_option): Enable -Wnarrowing as part
      	of -Wall; include -Wnarrowing in -Wc++0x-compat; adjust default
      	Wnarrowing for C++0x and C++98.
      	* c.opt ([Wnarrowing]): Update.
      
      /cp
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* typeck2.c (check_narrowing): Adjust OPT_Wnarrowing diagnostics.
      	(digest_init_r): Call check_narrowing irrespective of the C++ dialect.
      	* decl.c (check_initializer): Likewise.
      	* semantics.c (finish_compound_literal): Likewise.
      
      /testsuite
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* g++.dg/cpp0x/warn_cxx0x2.C: New.
      	* g++.dg/cpp0x/warn_cxx0x3.C: Likewise.
      
      2011-10-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50810
      	* doc/invoke.texi ([-Wnarrowing], [-Wc++0x-compat]): Update.
      
      From-SVN: r180343
      Paolo Carlini committed
    • re PR tree-optimization/50763 (ICE: verify_gimple failed: missing PHI def with -ftree-tail-merge) · 19b6a33d
      2011-10-23  Tom de Vries  <tom@codesourcery.com>
      
      	PR tree-optimization/50763
      	* gcc.dg/pr50763.c: New test.
      
      From-SVN: r180342
      Tom de Vries committed
    • re PR tree-optimization/50763 (ICE: verify_gimple failed: missing PHI def with -ftree-tail-merge) · 4cbdcd40
      2011-10-23  Tom de Vries  <tom@codesourcery.com>
      
      	PR tree-optimization/50763
      	* tree-ssa-tail-merge.c (same_succ_flush_bb): New function, factored out
      	of ...
      	(same_succ_flush_bbs): Use same_succ_flush_bb.
      	(purge_bbs): Remove argument.  Remove calls to same_succ_flush_bbs,
      	release_last_vdef and delete_basic_block.
      	(unlink_virtual_phi): New function.
      	(update_vuses): Add and use vuse1_phi_args argument.  Set var to
      	SSA_NAME_VAR of vuse1 or vuse2, and use var.  Handle case that def_stmt2
      	is NULL.  Use phi result as phi arg in case vuse1 or vuse2 is NULL_TREE.
      	Replace uses of vuse1 if vuse2 is NULL_TREE.  Fix code to limit
      	replacement of uses.  Propagate phi argument for phis with a single
      	argument.
      	(replace_block_by): Update vops if phi_vuse1 or phi_vuse2 is NULL_TREE.
      	Set vuse1_phi_args if vuse1 is a phi defined in bb1.  Add vuse1_phi_args
      	as argument to call to update_vuses.  Call release_last_vdef,
      	same_succ_flush_bb, delete_basic_block.  Update CDI_DOMINATORS info.
      	(tail_merge_optimize): Remove argument in call to purge_bbs.  Remove
      	call to free_dominance_info.  Only call calculate_dominance_info once.
      
      From-SVN: r180341
      Tom de Vries committed
    • re PR tree-optimization/44683 (Optimization bug with copysign builtin) · 4db183a2
      	* fold-const.c (invert_tree_comparison): Always invert EQ_EXPR/NE_EXPR.
      
      	PR tree-optimization/44683
      	* tree-ssa-dom.c (record_edge_info): Record simple equivalences only if
      	we can be sure that there are no signed zeros involved.
      
      From-SVN: r180340
      Eric Botcazou committed
    • re PR target/50788 (ICE: in merge_overlapping_regs, at regrename.c:318 with… · fe646a69
      re PR target/50788 (ICE: in merge_overlapping_regs, at regrename.c:318 with -mavx -fpeel-loops -fstack-protector-all and __builtin_ia32_maskloadpd256)
      
      	PR target/50788
      	* config/i386/sse.md (avx2_maskload<ssemodesuffix><avxsizesuffix>):
      	Remove (match_dup 0).
      	(*avx2_maskload<ssemodesuffix><avxsizesuffix>): New insn pattern.
      	(*avx_maskload<ssemodesuffix><avxsizesuffix>): Ditto.
      	(*avx2_maskstore<ssemodesuffix><avxsizesuffix>): Ditto.
      	(*avx_maskstore<ssemodesuffix><avxsizesuffix>): Ditto.
      	(*avx2_maskmov<ssemodesuffix><avxsizesuffix>): Remove insn pattern.
      	(*avx_maskmov<ssemodesuffix><avxsizesuffix>): Ditto.
      
      testsuite/ChangeLog:
      
      2011-10-23  Uros Bizjak  <ubizjak@gmail.com>
      
      	PR target/50788
      	* testsuite/gcc.target/i386/pr50788.c: New test.
      
      From-SVN: r180335
      Uros Bizjak committed
    • re PR tree-optimization/50819 (missed SLP vectorization) · 5bfdb7d8
      
              PR tree-optimization/50819
              * tree-vectorizer.h (vect_analyze_data_ref_dependences): Remove
              the last argument.
              * tree-vect-loop.c (vect_analyze_loop_2): Update call to
              vect_analyze_data_ref_dependences.
              * tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
              Remove the last argument.  Check load-after-store dependence
              for unknown dependencies in basic blocks.
              (vect_analyze_data_ref_dependences): Update call to
              vect_analyze_data_ref_dependences.
              * tree-vect-patterns.c (vect_recog_widen_shift_pattern): Fix
              typo.
              * tree-vect-slp.c (vect_bb_vectorizable_with_dependencies):
              Remove.
              (vect_slp_analyze_bb_1): Update call to
              vect_analyze_data_ref_dependences.  Don't call
              vect_bb_vectorizable_with_dependencies.
      
      From-SVN: r180334
      Ira Rosen committed
    • Daily bump. · b0ed0a6f
      From-SVN: r180333
      GCC Administrator committed
  3. 22 Oct, 2011 1 commit
    • re PR libstdc++/50196 ([C++0x] std::thread not available under macos) · 3b2eeb43
      	PR libstdc++/50196
      	* acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
      	* configure: Regenerate.
      	* include/std/mutex (timed_mutex, recursive_timed_mutex): Define
      	conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
      	* testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
      	* testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
      	* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
      	Use dg-require-gthreads-timed instead of dg-require-gthreads.
      	* testsuite/30_threads/recursive_timed_mutex/native_handle/
      	typesizes.cc: Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
      	Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
      	Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
      	Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
      	Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
      	Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
      	Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
      	Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
      	Likewise.
      	* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
      	Likewise.
      	* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
      	Likewise.
      	* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
      	Likewise.
      	* testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
      	* testsuite/30_threads/timed_mutex/try_lock_for/3.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/3.cc: Likewise.
      	* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
      
      From-SVN: r180329
      Jonathan Wakely committed