1. 25 Oct, 2011 11 commits
  2. 24 Oct, 2011 29 commits
    • re PR libstdc++/49894 ([C++0x] Uniform initialization in constructor) · b81e920e
      	PR libstdc++/49894
      	* include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
      	base classes to manage construction/destruction of native mutexes,
      	using NSDMI when INIT macros are defined.
      	(mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
      	new base classes.
      	* include/std/condition_variable (condition_variable): Use NSDMI when
      	INIT macro is defined. Use noexcept.
      	* src/condition_variable.cc (condition_variable): Explicitly-default
      	constructor/destructor when using NSDMI. Use noexcept.
      	(condition_variable_any): Likewise.
      
      From-SVN: r180411
      Jonathan Wakely committed
    • Segregate sparc FP/VEC constant constraints. · cca3f03d
      	* config/sparc/sparc.md: Only use F, G, and C constraints in FP
      	insns.  Only use D, Y, and Z constraints in vector insns.
      
      From-SVN: r180410
      David S. Miller committed
    • Remove extra newline added in October 11 change · ce835863
      From-SVN: r180408
      Michael Meissner committed
    • Consolidate some sparc insn patterns using "enabled". · 1b43bc82
      	* config/sparc/sparc.md (cpu_feature, enabled): New attributes.
      	(*movsi_insn_novis3, *movsi_insn_vis3): Consolidate into one pattern
      	called *movsi_insn.
      	(*movdi_insn_sp32_v9_novis3, *movdi_insn_sp32_v9_vis3): Consolidate
      	into *movdi_insn_sp32.
      	(*movdi_insn_sp64_novis3, *movdi_insn_sp64_vis3): Consolidate into
      	one pattern called *movdi_insn_sp64.
      	(*movsf_insn_novis3, *movsf_insn_vis3, *movsf_insn_no_fpu):
      	Consolidate into one pattern called *movsf_insn.
      	(*movdf_insn_sp32_no_fpu, *movdf_insn_sp32_v9_novis3,
      	*movdf_insn_sp32_v9_vis3, *movdf_insn_sp32_v9_no_fpu): Consolidate
      	into *movdf_insn_sp32.
      	(*movdf_insn_sp64_novis3, *movdf_insn_sp64_vis3,
      	*movdf_insn_sp64_no_fpu): Consolidate into one pattern called
      	*movdf_insn_sp64.
      	(*zero_extendsidi2_insn_sp64_novis3,
      	*zero_extendsidi2_insn_sp64_vis3): Consolidate into one pattern
      	called *zero_extendsidi2_insn_sp64.
      	(*sign_extendsidi2_insn_novis3, *sign_extendsidi2_insn_vis3):
      	Consolidate into one pattern named *sign_extendsidi2_insn.
      	(*mov<VM32:mode>_insn_novis3, *mov<VM32:mode>_insn_vis3):
      	Consolidate into one pattern named *mov<VM32:mode>_insn.
      	(*mov<VM64:mode>_insn_sp64_novis3,
      	*mov<VM64:mode>_insn_sp64_novis3): Consolidate into one pattern
      	named *mov<VM64:mode>_insn_sp64.
      	(*mov<VM64:mode>_insn_sp32_novis3,
      	*mov<VM64:mode>_insn_sp32_vis3): Consolidate into one pattern
      	named *mov<VM64:mode>_insn_sp32.
      
      From-SVN: r180407
      David S. Miller committed
    • MAINTAINERS (Write After Approval): Add myself. · 3c5bc77d
              * MAINTAINERS (Write After Approval): Add myself.
      
      From-SVN: r180405
      Teresa Johnson committed
    • tree-ssa-strlen.c (get_string_length): Change assertion to STPCPY. · 93a90db6
      2011-10-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* tree-ssa-strlen.c (get_string_length): Change assertion to STPCPY.
      	(zero_length_string): Change assertion to accept strinfo without
      	length but with stmt instead.
      	Set the endptr pointer also if starting a new chain.
      	(adjust_related_strinfos): Ignore strinfos marked for delayed
      	length computation.
      	(handle_builtin_strcpy): Mark earlier strinfo elements also for
      	delayed length computation.
      
      2011-10-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* gcc.dg/strlenopt-22.c: New testcase.
      	* gcc.dg/strlenopt-4.c: Change scan value for s390(x).
      
      From-SVN: r180402
      Andreas Krebbel committed
    • Error if naked return when result variables are shadowed. · 980889d8
      From-SVN: r180401
      Ian Lance Taylor committed
    • 49668.cc: Add missing dg-require. · d41c3b89
      	* testsuite/30_threads/async/49668.cc: Add missing dg-require.
      	* testsuite/30_threads/packaged_task/49668.cc: Likewise.
      
      From-SVN: r180400
      Jonathan Wakely committed
    • sse-5.c (dg-options): Add -mno-sse. · d00fe662
      	* gcc.target/i386/sse-5.c (dg-options): Add -mno-sse.
      	Remove -march=i386.
      	(dg-skip-if): Remove.
      	* gcc.target/i386/funcspec-1.c: Ditto.
      	* gcc.target/i386/funcspec-3.c (dg-options): Add -mno-sse3.
      
      From-SVN: r180397
      Uros Bizjak committed
    • re PR target/50820 ([avr] Use EIND consistently) · 3f6a1bb1
      	PR target/50820
      	Port from 4.6 branch r180379
      	* doc/invoke.texi (AVR Options): New subsubsection to explain EIND
      	handling and indirect jump/calls on devices > 128k.
      
      From-SVN: r180388
      Georg-Johann Lay committed
    • re PR target/49824 ([avr] Missing documentation for OS_task and OS_main attributes) · 3d33d151
      	PR target/49824
      	* doc/extend.texi (Declaring Attributes of Functions):
      	Document OS_main and OS_task attributes.
      	(Specifying Attributes of Variables): Move up
      	subsection "AVR Variable Attributes" as of alphabetical order.
      
      
      Co-Authored-By: Georg-Johann Lay <avr@gjlay.de>
      
      From-SVN: r180385
      Anatoly Sokolov committed
    • tree-vect-stmts.c (vect_get_vec_def_for_operand): Convert constants to vector element type. · 7b7b1813
      2011-10-24  Richard Guenther  <rguenther@suse.de>
      
      	* tree-vect-stmts.c (vect_get_vec_def_for_operand): Convert constants
      	to vector element type.
      	(vectorizable_assignment): Bail out for non-mode-precision operations.
      	(vectorizable_shift): Likewise.
      	(vectorizable_operation): Likewise.
      	(vectorizable_type_demotion): Likewise.
      	(vectorizable_type_promotion): Likewise.
      	(vectorizable_store): Handle non-mode-precision stores.
      	(vectorizable_load): Handle non-mode-precision loads.
      	(get_vectype_for_scalar_type_and_size): Return a vector type
      	for non-mode-precision integers.
      	* tree-vect-loop.c (vectorizable_reduction): Bail out for
      	non-mode-precision reductions.
      
      	* gcc.dg/vect/vect-bool-1.c: New testcase.
      
      From-SVN: r180384
      Richard Guenther committed
    • m68k.c (notice_update_cc): Tighten condition for setting CC_REVERSED for FP comparisons. · 695074be
      	gcc/
      	* config/m68k/m68k.c (notice_update_cc): Tighten condition for
      	setting CC_REVERSED for FP comparisons.
      
      From-SVN: r180383
      Julian Brown committed
    • 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