1. 13 Oct, 2011 23 commits
    • Fix PR middle-end/50527 ChangeLog entry · 0626faca
      From-SVN: r179916
      Tom de Vries committed
    • [multiple changes] · 2fcc44fa
      2011-10-13  Robert Dewar  <dewar@adacore.com>
      
      	* sem_ch9.adb, sem_util.adb, sem_util.ads, exp_ch6.adb, sem_ch4.adb,
      	sem_ch6.adb, exp_ch3.adb: Minor reformatting.
      
      2011-10-13  Arnaud Charlet  <charlet@adacore.com>
      
      	* Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add a-ngcoar.o.
      
      2011-10-13  Jerome Guitton  <guitton@adacore.com>
      
      	* sysdep.c (__gnat_get_task_options): Re-enable VX_SPE_TASK on vThreads
      
      2011-10-13  Eric Botcazou  <ebotcazou@adacore.com>
      
      	* a-convec.ads (Cursor): Minor reformatting.
      	* a-convec.adb (Next): Fix minor inconsistencies.
      	(Previous): Likewise.
      
      From-SVN: r179915
      Arnaud Charlet committed
    • [multiple changes] · 9b62eb32
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_util.ads, sem_util.adb (Available_Full_View_Of_Component):
      	New predicate to determine whether some operations on an array
      	type are available when the full view of its component may differ
      	from the view of the point of the array declaration.
      	* sem_ch4.adb (Find_Equality_Types): Use
      	Available_Full_View_Of_Component.
      	* sem_type.adb (Valid_Boolean_Arg, Valid_Comparison_Arg): Ditto
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch9.adb: Analyze aspects while discriminants of protected
      	type are visible.
      
      2011-10-13  Geert Bosch  <bosch@adacore.com>
      
      	* Makefile.rtl (GNATRTL_TASKING_OBJECTS): Add
      	a-nlcoar.o, a-nllcar.o, a-nucoar.o and s-gearop.o, as these no
      	longer depend on an external library.
      	* gcc-interface/Makefile.in (GNATRTL_LINEARALGEBRA_OBJS): Remove
      	a-nlcoar.o, a-nllcar.o, a-nucoar.o and s-gearop.o.
      	Update dependencies.
      	* gcc-interface/Make-lang.in: Update dependencies.
      
      From-SVN: r179914
      Arnaud Charlet committed
    • [multiple changes] · 1a36a0cd
      2011-10-13  Cyrille Comar  <comar@adacore.com>
      
      	* gnat_ugn.texi: Minor editing.
      
      2011-10-13  Vincent Celier  <celier@adacore.com>
      
      	* projects.texi: Add documentation on packages and attributes
      	that are inherited from a project being extended into the
      	extended project.
      
      2011-10-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch3.adb (Build_Master): Rewritten.
      	(Expand_N_Full_Type_Declaration): Reformat the declarative
      	region. Update the call to Build_Master_Renaming.
      	(Expand_Previous_Access_Type): Rewritten.
      	* exp_ch6.adb (Add_Task_Actuals_To_Build_In_Place_Call):
      	Add local constant Result_Subt and update related usage.
      	(Expand_N_Extended_Return_Statement): Add local constant
      	Result_Subt and update related usage.
      	* exp_ch9.adb (Build_Activation_Chain): Rewritten to use the
      	new context detection mechanism.
      	(Build_Class_Wide_Master):
      	Use Insert_Action to add the renaming into the tree.
      	(Build_Master_Entity): Rewritten to use the new context detection
      	mechanism.
      	(Build_Master_Renaming): Add formal parameter Ins_Nod
      	and related usage. Use Insert_Action to add the renaming into the
      	tree.
      	(Find_Enclosing_Context): New subsidiary routine. Rather
      	than relying on enclosing scopes, this routine looks at the
      	tree structure to figure out the proper context for a _master
      	or a _chain. This approach eliminates the issues with transient
      	scopes which have not been converted into blocks.
      	* exp_ch9.ads (Build_Master_Entity): Change parameter profile
      	to better reflect the new usage. Update the related comment.
      	(Build_Master_Renaming): Add formal parameter Ins_Nod. Update
      	the comment on usage.
      	* sem_ch3.adb (Access_Definition): Update the calls to
      	Build_Master_Entity and Build_Master_Renaming.
      	* sem_ch6.adb (Create_Extra_Formals): Add local variable
      	Full_Subt. Code reformatting.
      	* sem_util.adb (Is_Iterator): Alphabetized.
      	(Is_LHS): Alphabetized.
      	(Is_Limited_Class_Wide_Type): New routine.
      	* sem_util.ads (Is_Limited_Class_Wide_Type): New routine.
      
      From-SVN: r179913
      Arnaud Charlet committed
    • a-ngrear.adb (Solve): Make generic and move to System.Generic_Array_Operations. · a5917ffb
      2011-10-13  Geert Bosch  <bosch@adacore.com>
      
      	* a-ngrear.adb (Solve): Make generic and move to
      	System.Generic_Array_Operations.
      	* s-gearop.ads (Matrix_Vector_Solution, Matrix_Matrix_Solution):
      	New generic solvers to	compute a vector resp. matrix Y such
      	that A * Y = X, approximately.
      	* s-gearop.adb (Matrix_Vector_Solution, Matrix_Matrix_Solution):
      	Implement using Forward_Eliminate and Back_Substitute
      	* a-ngcoar.adb: Reimplement in pure Ada to remove dependencies
      	on BLAS and LAPACK.
      	* a-ngcoar.ads ("abs"): Fix return type to be real.
      
      From-SVN: r179912
      Geert Bosch committed
    • re PR ada/50589 ([4.7] Ada bootstrap failure on sparc-linux) · 574ec945
      	PR ada/50589
      	* s-linux-alpha.ads: Do not "with" Interfaces.C.
      	* s-linux-sparc.ads: Likewise.
      
      From-SVN: r179911
      Eric Botcazou committed
    • s-gearop.ads (Forward_Eliminate): Add "abs" formal function returning a Real. · 8668ea36
      2011-10-13  Geert Bosch  <bosch@adacore.com>
      
      	* s-gearop.ads (Forward_Eliminate): Add "abs" formal function
      	returning a Real.
      	* s-gearop.adb (Forward_Eliminate): Remove local "abs" function
      	and use formal.
      	* a-ngrear.adb (Forward_Eliminate): Adjust instantiation for
      	new profile.
      
      From-SVN: r179910
      Geert Bosch committed
    • a-ngrear.adb, [...] (Sqrt): Make generic and move to System.Generic_Array_Operations. · edcf5983
      2011-10-13  Geert Bosch  <bosch@adacore.com>
      
      	* a-ngrear.adb, s-gearop.adb, s-gearop.ads (Sqrt): Make generic and
      	move to System.Generic_Array_Operations.
      
      From-SVN: r179909
      Geert Bosch committed
    • a-ngrear.adb ("abs"): Adjust for modified L2_Norm generic · a4935dea
      2011-10-13  Geert Bosch  <bosch@adacore.com>
      
      	* a-ngrear.adb ("abs"): Adjust for modified L2_Norm generic
      	* s-gearop.ads (L2_Norm): Change profile to be suitable for
      	Complex_Vector
      	* s-gearop.adb (L2_Norm): Reimplement using direct definition,
      	not inner product
      
      From-SVN: r179908
      Geert Bosch committed
    • [multiple changes] · 3e7302c3
      2011-10-13  Robert Dewar  <dewar@adacore.com>
      
      	* exp_ch5.adb, sem_ch3.adb, impunit.adb, impunit.ads, sem_type.adb,
      	prj-proc.adb, exp_ch9.adb, s-regpat.adb, sem_ch10.adb, sem_prag.adb,
      	sem_ch12.adb, freeze.adb, sem_attr.adb, sem_attr.ads, gnatlink.adb,
      	par-ch6.adb, exp_ch6.adb, sem_ch4.adb, sem_ch6.adb, sem_ch8.adb,
      	par-util.adb, sem_ch13.adb, lib-xref.adb, g-trasym.adb, g-trasym.ads,
      	exp_aggr.adb, s-taprop-posix.adb: Minor reformatting.
      
      2011-10-13  Geert Bosch  <bosch@adacore.com>
      
      	* s-gearop.adb: Minor comment additions.
      
      From-SVN: r179907
      Arnaud Charlet committed
    • [multiple changes] · 8417f4b2
      2011-10-13  Fedor Rybin  <frybin@adacore.com>
      
      	* gnat_ugn.texi: Add gnattest section.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* freeze.adb: Do not create body of renaming if declaration has
      	errors.
      
      2011-10-13  Olivier Hainque  <hainque@adacore.com>
      
      	* init.c (__gnat_error_handler - vxworks case): Restrict sigtramp calls
      	further, to the ppc+kernel case only.
      
      2011-10-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch4.adb (Expand_N_Allocator): Comment reformatting.
      	* exp_ch6.adb (Add_Unconstrained_Actuals_To_Build_In_Place_Call):
      	Do not create a pool formal on .NET/JVM.
      	(Expand_N_Extended_Return_Statement): Alphabetize local
      	variables. Do not create a renaming of the build-in-place pool
      	parameter on .NET/JVM.	(Make_Build_In_Place_Call_In_Allocator):
      	Add the user-defined pool only on non-VM targets.
      	(Make_Build_In_Place_Call_In_Object_Declaration): Alphabetize
      	local variables.  Do not add a pool actual on .NET/JVM.
      	* sem_ch6.adb: Add with and use clause for Targparm.
      	(Create_Extra_Formals): Add build-in-place pool formal only on
      	non-VM targets.
      	* rtsfind.ads: Alphabetize entries.
      
      From-SVN: r179906
      Arnaud Charlet committed
    • [multiple changes] · 4674dd21
      2011-10-13  Sergey Rybin  <rybin@adacore.com>
      
      	* gnat_ugn.texi: Minor correction.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch8.adb: Minor error message improvement.
      
      2011-10-13  Robert Dewar  <dewar@adacore.com>
      
      	* a-cbprqu.adb, a-ciorma.adb, exp_ch3.adb: Minor reformatting.
      
      From-SVN: r179905
      Arnaud Charlet committed
    • exp_ch5.adb (Expand_N_Loop_Statement): For the transformation of a for loop for… · 95aeda79
      exp_ch5.adb (Expand_N_Loop_Statement): For the transformation of a for loop for an enumeration type with an...
      
      2011-10-13  Gary Dismukes  <dismukes@adacore.com>
      
      	* exp_ch5.adb (Expand_N_Loop_Statement): For the transformation
      	of a for loop for an enumeration type with an enumeration rep
      	clause, which involves moving the original loop parameter into
      	a nested block, the loop parameter's entity must be removed from
      	the entity list of the loop scope.
      
      From-SVN: r179904
      Gary Dismukes committed
    • exp_ch6.ads (BIP_Storage_Pool): New "extra implicit parameter" that gets passed… · 200b7162
      exp_ch6.ads (BIP_Storage_Pool): New "extra implicit parameter" that gets passed in the same cases where...
      
      2011-10-13  Bob Duff  <duff@adacore.com>
      
      	* exp_ch6.ads (BIP_Storage_Pool): New "extra implicit parameter"
      	that gets passed in the same cases where BIP_Alloc_Form is passed
      	(caller-unknown-size results). BIP_Storage_Pool is used when
      	BIP_Alloc_Form = User_Storage_Pool.  In that case, a pointer
      	to the user-defined storage pool is passed at the call site,
      	and this pool is used in callee to allocate the result.
      	* exp_ch6.adb (Add_Unconstrained_Actuals_To_Build_In_Place_Call): New
      	version of Add_Alloc_Form_Actual_To_Build_In_Place_Call. Passes
      	the additional BIP_Storage_Pool actual.
      	(Expand_N_Extended_Return_Statement): Allocate the function
      	result using the user-defined storage pool, if BIP_Alloc_Form =
      	User_Storage_Pool.
      	* sem_ch6.adb: Add the "extra formal" for BIP_Storage_Pool.
      	* exp_ch4.adb: Don't overwrite storage pool set by
      	Expand_N_Extended_Return_Statement.
      	* s-stopoo.ads, rtsfind.ads (Root_Storage_Pool_Ptr): New type,
      	for use in build-in-place function calls within allocators
      	where the access type has a user-defined storage pool.
      
      From-SVN: r179903
      Bob Duff committed
    • [multiple changes] · 9f8d1e5c
      2011-10-13  Sergey Rybin  <rybin@adacore.com>
      
      	* gnat_ugn.texi, vms_data.ads: Add an option to control enumeration
      	literal casing.
      
      2011-10-13  Nicolas Roche  <roche@adacore.com>
      
      	* gnatlink.adb: Ensure that -mrtp is passed when
      	runtime name ends with 'rtp'.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Analyze_Pragma, case Unchecked_Union): an
      	unchecked union type can be limited.
      
      2011-10-13  Olivier Hainque  <hainque@adacore.com>
      
      	* init.c (__gnat_error_handler) <VxWorks version>: Add comments on
      	the use of the signal trampoline for PPC in the sjlj case as well.
      	Add legitimate casts, preventing compile time warnings on the
      	(sighandler *) profile.
      
      2011-10-13  Yannick Moy  <moy@adacore.com>
      
      	* sem_aggr.adb (Resolve_Aggr_Expr): Always perform semantic
      	analysis in Alfa mode.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch3.adb (OK_For_Limited_Init_In_05): Conditional and case
      	expressions are legal limited return values if each one of their
      	dependent expressions are legal.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch6.adb (Analyze_Procedure_Call_Statement): In Ada 2012 mode,
      	if the prefix of the call is a qualified expression, rewrite as
      	a code statement.
      	* sem_ch13.adb (Analyze_Code_Statement): In Ada 2012 mode, the
      	code statement is legal if it is a rewriting of a procedure call.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_aggr.adb (Flatten): If a component association has a box,
      	assume that aggregate is not static.
      	(Safe_Aggregate): If a component association in a non-limited
      	aggregate has a box, assume that it cannot be expanded in place.
      
      2011-10-13  Vincent Celier  <celier@adacore.com>
      
      	* prj-conf.adb (Get_Or_Create_Configuration_File): Call
      	Process_Project_Tree_Phase_1 with Packages_To_Check.
      	(Process_Project_And_Apply_Config): Ditto
      	* prj-part.ads, prj-part.adb, prj-pars.ads, prj-pars.adb (Parse):
      	Remove default for argument Packages_To_Check.
      	* prj-proc.adb (Recursive_Process): New argument
      	Packages_To_Check.
      	(Process): Ditto.
      	(Process_Project_Tree_Phase_1): Ditto.
      	(Recursive_Project.Process_Aggregated_Projects): Call
      	Prj.Part.Parse and Process_Project_Tree_Phase_1 with
      	Packages_To_Check.
      	* prj-proc.ads (Process): New argument Packages_To_Check
      	(Process_Project_Tree_Phase_1): Ditto
      
      From-SVN: r179902
      Arnaud Charlet committed
    • function.c (gimplify_parameters): Set number of arguments of call to… · c28f4b5c
      function.c (gimplify_parameters): Set number of arguments of call to BUILT_IN_ALLOCA_WITH_ALIGN to 2.
      
      2011-10-13  Tom de Vries  <tom@codesourcery.com>
      
      	* function.c (gimplify_parameters): Set number of arguments of call to
      	BUILT_IN_ALLOCA_WITH_ALIGN to 2.
      
      From-SVN: r179901
      Tom de Vries committed
    • * gcc-interface/Makefile.in: Fix typo. · 46f8e1ac
      From-SVN: r179900
      Arnaud Charlet committed
    • [multiple changes] · 8097203f
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch12.adb (Analyze_Formal_{Floating_Type,
      	Signed_Integer_Type,  Decimal_Fixed_Point_Type, Discrete_Type}):
      	Use sloc of defining identifier of farmal type declaration,
      	as sloc of generated internal entity, to prevent misplaced
      	references in ali.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_intr.adb (Check_Intrinsic_Operator): Check that type
      	is fully defined before checking that it is a numeric type.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_aggr.adb (Resolve_Record_Aggregate): If a component
      	association for component X has a box, then X is covered in the
      	aggregate even if there is not default value for X in the type
      	declaration, and X has to be default-initialized.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_attr.adb (Check_Enum_Image, Analyze_Attribute case
      	'Value): Mark literals as referenced only if reference is in
      	current source unit.
      
      2011-10-13  Matthew Heaney  <heaney@adacore.com>
      
      	* a-csquin.ads (Enque, Dequeue): Mark interface operations as entries.
      
      2011-10-13  Olivier Hainque  <hainque@adacore.com>
      
      	* sigtramp.h: New file.  Prototype and spec of the signal
      	trampoline to be called by an established handler to provide
      	dwarf call frame info before the real signal processing code.
      	* sigtramp-ppcvxw.c: New file.	Implementation of the signal
      	trampoline for ppc-vxworks.
      	* init.c (vxworks section): Use it for ppc.
      
      From-SVN: r179899
      Arnaud Charlet committed
    • [multiple changes] · e192a2cd
      2011-10-13  Thomas Quinot  <quinot@adacore.com>
      
      	* par-ch2.adb, par.adb, par-util.adb, par-ch3.adb
      	(Check_Future_Identifier): New subprogram,
      	factors duplicated code from Par.Ch2.P_Identifier and
      	Par.Ch3.P_Defining_Identifier.
      
      2011-10-13  Thomas Quinot  <quinot@adacore.com>
      
      	* s-taprop-posix.adb (Initialize): Always raise Storage_Error
      	if we fail to initialize CV attributes or CV.
      
      2011-10-13  Thomas Quinot  <quinot@adacore.com>
      
      	* s-tasren.adb (Timed_Selective_Wait, case
      	Accept_Alternative_Selected): Use Defer_Abort_Nestable, since
      	we know abortion is already deferred.
      
      2011-10-13  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch3.adb (Build_Class_Wide_Master): Moved to exp_ch9.
      	(Build_Master_Renaming (function)): Removed.
      	(Build_Master_Renaming (procedure)): Moved to exp_ch9.
      	(Expand_Full_Type_Declaration): Alphabetize
      	variables. Reformatting of code and comments. Rewrite the
      	section on processing of anonymous access-to-task types in
      	record components.
      	* exp_ch3.ads (Build_Class_Wide_Master): Moved to exp_ch9.
      	(Build_Master_Renaming): Moved to exp_ch9.
      	* exp_ch9.adb (Build_Class_Wide_Master): Moved from exp_ch3.
      	(Build_Master_Entity): Add formal parameter
      	Use_Current. Reformatting of code and comments.
      	(Build_Master_Renaming): Moved from exp_ch3.
      	* exp_ch9.ads (Build_Class_Wide_Master): Moved from
      	exp_ch3. Update comment on usage.
      	(Build_Master_Entity):
      	Add formal parameter Use_Current. Update comment on usage.
      	(Build_Master_Renaming): Moved from exp_ch3.
      	* sem_ch3.adb (Access_Definition): Remove redundant code to
      	create a _master and a renaming.
      
      2011-10-13  Ed Schonberg  <schonberg@adacore.com>
      
      	* lib-xref.adb: Do no emit reference to overridden operation,
      	if it is internally generated.
      
      2011-10-13  Vincent Celier  <celier@adacore.com>
      
      	* bindgen.adb: Remove any processing related to g-trasym
      	* Makefile.rtl: Add g-trasym.o to GNATRTL_NONTASKING_OBJS
      	* mlib-prj.adb: Remove any processing related to g-trasym.
      
      From-SVN: r179898
      Arnaud Charlet committed
    • memcpy-4.c: New test. · 54c42edf
      2011-10-13  Tom de Vries  <tom@codesourcery.com>
      
      	* gcc.dg/memcpy-4.c: New test.
      
      From-SVN: r179897
      Tom de Vries committed
    • emit-rtl.c (set_mem_attributes_minus_bitpos): Set MEM_READONLY_P for static const strings. · ba30e50d
      2011-10-13  Tom de Vries  <tom@codesourcery.com>
      
      	* emit-rtl.c (set_mem_attributes_minus_bitpos): Set MEM_READONLY_P
      	for static const strings.
      	* varasm.c (build_constant_desc): Generate the memory location of the
      	constant using gen_const_mem.
      
      From-SVN: r179896
      Tom de Vries committed
    • re PR tree-optimization/50698 (pretending to create versioning for alias when not required) · 6c9fbfa7
      2011-10-13  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/50698
      	* tree-data-ref.c (split_constant_offset_1): Also process
      	offsets of &MEM.
      
      	* g++.dg/vect/pr50698.cc: New testcase.
      
      From-SVN: r179895
      Richard Guenther committed
    • Daily bump. · ee9488e6
      From-SVN: r179885
      GCC Administrator committed
  2. 12 Oct, 2011 17 commits
    • Makefile.in (LOOSE_WARN): Delete. · 0cfaf83f
      gnattools/
      	* Makefile.in (LOOSE_WARN): Delete.
      	(GCC_WARN_CFLAGS): Set to -W -Wall.
      	(TOOLS_FLAGS_TO_PASS_1): Delete.
      	(TOOLS_FLAGS_TO_PASS_1re): Rename into...
      	(TOOLS_FLAGS_TO_PASS_RE): ...this.
      	(gnattools-native): Use TOOLS_FLAGS_TO_PASS_NATIVE.
      	(regnattools): Use TOOLS_FLAGS_TO_PASS_RE.
      libada/
      	* Makefile.in (LOOSE_WARN): Delete.
      	(GCC_WARN_CFLAGS): Likewise.
      	(WARN_CFLAGS): Likewise.
      	(GNATLIBFLAGS): Add -nostdinc.
      	(GNATLIBCFLAGS_FOR_C): Add -W -Wall.
       	(LIBADA_FLAGS_TO_PASS): Remove WARN_CFLAGS.
      	* configure.ac (warn_cflags): Delete.
      	* configure: Regenerate.
      gcc/ada/
      	* sem_util.adb (Denotes_Same_Prefix): Fix fatal warning.
      	* gcc-interface/Make-lang.in (WARN_ADAFLAGS): New.
      	(ALL_ADAFLAGS): Include WARN_ADAFLAGS.
      	(ADA_FLAGS_TO_PASS): Likewise.
      	(COMMON_FLAGS_TO_PASS): New.
      	(ADA_TOOLS_FLAGS_TO_PASS): Use COMMON_FLAGS_TO_PASS.  In the regular
      	native case, also use FLAGS_TO_PASS and ADA_FLAGS_TO_PASS.
      	(gnatlib): Use COMMON_FLAGS_TO_PASS.
      	(ada.install-common): Likewise.
      	(install-gnatlib): Likewise.
      	(install-gnatlib-obj): Likewise.
      	(gnattools): Use ADA_TOOLS_FLAGS_TO_PASS for gnattools1 as well.
      	(gnat-cross): Delete.
      	(gnatboot): Likewise.
      	(gnatboot2): Likewise.
      	(gnatboot3): Likewise.
      	(gnatstage1): Likewise.
      	(gnatstage2): Likewise.
      	* gcc-interface/Makefile.in (SOME_ADAFLAGS): Likewise.
      	(MOST_ADAFLAGS): Likewise.
      	(LOOSE_CFLAGS): Likewise.
       	(gnat-cross): Likewise.
      	(GNATLIBFLAGS): Add -W -Wall.
      	(GNATLIBCFLAGS_FOR_C): Likewise.
      	* gcc-interface/lang.opt: Remove C-specific warnings.  Add doc lines.
      	* gcc-interface/misc.c (gnat_handle_option): Remove obsolete cases.
      
      From-SVN: r179878
      Eric Botcazou committed
    • warn-1.c: Skip if not powerpc_vsx_ok. · 53778c2d
      	* gcc.target/powerpc/warn-1.c: Skip if not powerpc_vsx_ok.
      	* gcc.target/powerpc/warn-2.c: Ditto.
      
      From-SVN: r179877
      Janis Johnson committed
    • ppc-fma-3.c: Require powerpc_fprs. · 5239de8f
      	* gcc.target/powerpc/ppc-fma-3.c: Require powerpc_fprs.
      	* gcc.target/powerpc/ppc-fma-4.c: Likewise.
      	* gcc.target/powerpc/ppc-fma-5.c: Likewise.
      	* gcc.target/powerpc/ppc-fma-7.c: Likewise.
      	* gcc.target/powerpc/ppc-fpconv-11.c: Likewise.
      	* gcc.target/powerpc/ppc-fpconv-3.c: Likewise.
      	* gcc.target/powerpc/ppc-fpconv-7.c: Likewise.
      	* gcc.target/powerpc/ppc-fpconv-8.c: Likewise.
      	* gcc.target/powerpc/ppc-pow.c: Likewise.
      	* gcc.target/powerpc/recip-1.c: Likewise.
      	* gcc.target/powerpc/recip-2.c: Likewise.
      	* gcc.target/powerpc/recip-3.c: Likewise.
      	* gcc.target/powerpc/recip-4.c: Likewise.
      	* gcc.target/powerpc/recip-5.c: Likewise.
      
      From-SVN: r179876
      Janis Johnson committed
    • Fix sparc when assembler lacks support for vis3/fmaf instructions. · fad034a7
      gcc/
      
      	* config/sparc/sparc.h: Do not force TARGET_VIS3 and TARGET_FMAF
      	to zero when assembler lacks support for such instructions.
      	* config/sparc/sparc.c (sparc_option_override): Clear MASK_VIS3
      	and MASK_FMAF in defaults when assembler lacks necessary support.
      
      gcc/testsuite/
      
      	* gcc.target/sparc/cmask.c: Remove 'vis3' target check and specify
      	'-mvis3' instead of 'mcpu=niagara3' in options.
      	* gcc.target/sparc/fhalve.c: Likewise.
      	* gcc.target/sparc/fnegop.c: Likewise.
      	* gcc.target/sparc/fpadds.c: Likewise.
      	* gcc.target/sparc/fshift.c: Likewise.
      	* gcc.target/sparc/fucmp.c: Likewise.
      	* gcc.target/sparc/lzd.c: Likewise.
      	* gcc.target/sparc/vis3misc.c: Likewise.
      	* gcc.target/sparc/xmul.c: Likewise.
      
      From-SVN: r179875
      David S. Miller committed
    • trans.c (Attribute_to_gnu): Use remove_conversions. · 722356ce
      	* gcc-interface/trans.c (Attribute_to_gnu): Use remove_conversions.
      	(push_range_check_info): Likewise.
      	(gnat_to_gnu) <N_Code_Statement>: Likewise.
      	* gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: Likewise.
      	(gnat_invariant_expr): Likewise.
      	* gcc-interface/utils.c (compute_related_constant): Likewise.
      	(max_size): Fix handling of SAVE_EXPR.
      	(remove_conversions): Fix formatting.
      
      From-SVN: r179873
      Eric Botcazou committed
    • sse.md (vec_unpacks_lo_<mode>, [...]): Change VI124_128 mode to VI124_AVX2. · 4eb20b03
      	* config/i386/sse.md (vec_unpacks_lo_<mode>,
      	vec_unpacks_hi_<mode>, vec_unpacku_lo_<mode>,
      	vec_unpacku_hi_<mode>): Change VI124_128 mode to
      	VI124_AVX2.
      	* config/i386/i386.c (ix86_expand_sse_unpack): Handle
      	V32QImode, V16HImode and V8SImode for TARGET_AVX2.
      
      From-SVN: r179872
      Jakub Jelinek committed
    • sse.md (vec_avx2): New mode_attr. · f2289672
      	* config/i386/sse.md (vec_avx2): New mode_attr.
      	(mulv16qi3): Macroize to cover also mulv32qi3 for
      	TARGET_AVX2 into ...
      	(mul<mode>3): ... this.
      
      From-SVN: r179871
      Jakub Jelinek committed
    • i386.md (UNSPEC_VPERMDI): Remove. · 0c7189ae
      	* config/i386/i386.md (UNSPEC_VPERMDI): Remove.
      	* config/i386/i386.c (ix86_expand_vec_perm): Handle
      	V16QImode and V32QImode for TARGET_AVX2.
      	(MAX_VECT_LEN): Increase to 32.
      	(expand_vec_perm_blend): Add support for 32-byte integer
      	vectors with TARGET_AVX2.
      	(valid_perm_using_mode_p): New function.
      	(expand_vec_perm_pshufb): Add support for 32-byte integer
      	vectors with TARGET_AVX2.
      	(expand_vec_perm_vpshufb2_vpermq): New function.
      	(expand_vec_perm_vpshufb2_vpermq_even_odd): New function.
      	(expand_vec_perm_even_odd_1): Handle 32-byte integer vectors
      	with TARGET_AVX2.
      	(ix86_expand_vec_perm_builtin_1): Try expand_vec_perm_vpshufb2_vpermq
      	and expand_vec_perm_vpshufb2_vpermq_even_odd.
      	* config/i386/sse.md (VEC_EXTRACT_EVENODD_MODE): Add for TARGET_AVX2
      	32-byte integer vector modes.
      	(vec_pack_trunc_<mode>): Use VI248_AVX2 instead of VI248_128.
      	(avx2_interleave_highv32qi, avx2_interleave_lowv32qi): Remove pasto.
      	(avx2_pshufdv3, avx2_pshuflwv3, avx2_pshufhwv3): Generate
      	4 new operands.
      	(avx2_pshufd_1, avx2_pshuflw_1, avx2_pshufhw_1): Don't use
      	match_dup, instead add 4 new operands and require they have
      	right cross-lane values.
      	(avx2_permv4di): Change into define_expand.
      	(avx2_permv4di_1): New instruction.
      	(avx2_permv2ti): Use nonimmediate_operand instead of register_operand
      	for "xm" constrained operand.
      	(VEC_PERM_AVX2): Add V32QI and V16QI for TARGET_AVX2.
      
      From-SVN: r179870
      Jakub Jelinek committed
    • sse.md (avx2_gathersi<mode>, [...]): Add clobber of match_scratch... · 9d901b0e
      	* config/i386/sse.md (avx2_gathersi<mode>,
      	avx2_gatherdi<mode>, avx2_gatherdi<mode>256): Add clobber of
      	match_scratch, change memory_operand to register_operand,
      	add (mem:BLK (scratch)) use.
      	(*avx2_gathersi<mode>, *avx2_gatherdi<mode>,
      	*avx2_gatherdi<mode>256): Add clobber of match_scratch,
      	add earlyclobber to the output operand and match_scratch,
      	add (mem:BLK (scratch)) use, change the other mem to match_operand.
      	Use %p6 instead of %c6 in the pattern.
      	* config/i386/i386.c (ix86_expand_builtin): Adjust for
      	operand 2 being a Pmode register_operand instead of memory_operand.
      
      From-SVN: r179869
      Jakub Jelinek committed
    • ada-tree.h (DECL_LOOP_PARM_P): New flag. · 15bf7d19
      	* gcc-interface/ada-tree.h (DECL_LOOP_PARM_P): New flag.
      	(DECL_INDUCTION_VAR): New macro.
      	(SET_DECL_INDUCTION_VAR): Likewise.
      	* gcc-interface/gigi.h (convert_to_index_type): Declare.
      	(gnat_invariant_expr): Likewise.
      	* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: If this is a loop
      	parameter, set DECL_LOOP_PARM_P on it.
      	* gcc-interface/misc.c (gnat_print_decl) <VAR_DECL>: If DECL_LOOP_PARM_P
      	is set, print DECL_INDUCTION_VAR instead of DECL_RENAMED_OBJECT.
      	* gcc-interface/trans.c (gnu_loop_label_stack): Delete.
      	(struct range_check_info_d): New type.
      	(struct loop_info_d): Likewise.
      	(gnu_loop_stack): New stack.
      	(Identifier_to_gnu): Set TREE_READONLY flag on the first dereference
      	built for a by-double-ref read-only parameter.  If DECL_LOOP_PARM_P
      	is set, do not test DECL_RENAMED_OBJECT.
      	(push_range_check_info): New function.
      	(Loop_Statement_to_gnu): Push a new struct loop_info_d instead of just
      	the label.  Reference the label and the iteration variable from it.
      	Build the special induction variable in the unsigned version of the
      	size type, if it is larger than the base type.  And attach it to the
      	iteration variable if the latter isn't by-ref.  In the iteration scheme
      	case, initialize the invariant conditions in front of the loop if
      	deemed profitable.  Use gnu_loop_stack.
      	(gnat_to_gnu) <N_Exit_Statement>: Use gnu_loop_stack.
      	<N_Raise_Constraint_Error>: Always process the reason.  In the range
      	check and related cases, and if loop unswitching is enabled, compute
      	invariant conditions and push this information onto the stack.
      	Do not translate again the condition if it has been already translated.
      	* gcc-interface/utils.c (record_global_renaming_pointer): Assert that
      	DECL_LOOP_PARM_P isn't set.
      	(convert_to_index_type): New function.
      	* gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Use it in order
      	to convert the index from the base index type to sizetype.
      	(gnat_invariant_expr): New function.
      
      From-SVN: r179868
      Eric Botcazou committed
    • re PR c++/50594 (Option -fwhole-program discards replaced new operator for std::string) · 578f0234
      2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50594
      	* decl.c (cxx_init_decl_processing): Add
      	__attribute__((externally_visible)) to operator new and
      	operator delete library fn.
      
      2011-10-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/50594
      	* libsupc++/new (operator new, operator delete): Decorate with
      	__attribute__((__externally_visible__)).
      	* include/bits/c++config: Add _GLIBCXX_THROW.
      	* libsupc++/del_op.cc: Adjust.
      	* libsupc++/del_opv.cc: Likewise.
      	* libsupc++/del_opnt.cc: Likewise.
      	* libsupc++/del_opvnt.cc: Likewise.
      	* libsupc++/new_op.cc: Likewise.
      	* libsupc++/new_opv.cc: Likewise.
      	* libsupc++/new_opnt.cc: Likewise.
      	* libsupc++/new_opvnt.cc: Likewise.
      	* testsuite/18_support/50594.cc: New.
      	* testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
      	line number.
      
      From-SVN: r179863
      Paolo Carlini committed
    • Add -mfpmath=sse/-mtune=generic to FMA tests. · 0a6fa376
      2011-10-12  H.J. Lu  <hongjiu.lu@intel.com>
      
      	* gcc.target/i386/fma_run_double_1.c: Add -mfpmath=sse.
      	* gcc.target/i386/fma_run_double_2.c: Likewise.
      	* gcc.target/i386/fma_run_double_3.c: Likewise.
      	* gcc.target/i386/fma_run_double_4.c: Likewise.
      	* gcc.target/i386/fma_run_double_5.c: Likewise.
      	* gcc.target/i386/fma_run_double_6.c: Likewise.
      	* gcc.target/i386/fma_run_float_1.c: Likewise.
      	* gcc.target/i386/fma_run_float_2.c: Likewise.
      	* gcc.target/i386/fma_run_float_3.c: Likewise.
      	* gcc.target/i386/fma_run_float_4.c: Likewise.
      	* gcc.target/i386/fma_run_float_5.c: Likewise.
      	* gcc.target/i386/fma_run_float_6.c: Likewise.
      
      	* gcc.target/i386/l_fma_double_1.c: Add -mtune=generic and
      	remove the extra dg-options.
      	* gcc.target/i386/l_fma_double_2.c: Likewise.
      	* gcc.target/i386/l_fma_double_3.c: Likewise.
      	* gcc.target/i386/l_fma_double_4.c: Likewise.
      	* gcc.target/i386/l_fma_double_5.c: Likewise.
      	* gcc.target/i386/l_fma_double_6.c: Likewise.
      	* gcc.target/i386/l_fma_float_1.c: Likewise.
      	* gcc.target/i386/l_fma_float_2.c: Likewise.
      	* gcc.target/i386/l_fma_float_3.c: Likewise.
      	* gcc.target/i386/l_fma_float_4.c: Likewise.
      	* gcc.target/i386/l_fma_float_5.c: Likewise.
      	* gcc.target/i386/l_fma_float_6.c: Likewise.
      
      From-SVN: r179861
      H.J. Lu committed
    • i386.md (simple_return): Disable if TARGET_SEH is active. · c482a651
              * config/i386/i386.md (simple_return): Disable
              if TARGET_SEH is active.
      
      From-SVN: r179860
      Kai Tietz committed
    • ia64.c (ia64_init_builtins): Fix unbalanced parentheses. · ccea4a27
      2011-10-12  Steve Ellcey  <sje@cup.hp.com>
      
      	* config/ia64/ia64.c (ia64_init_builtins): Fix unbalanced parentheses.
      
      From-SVN: r179859
      Steve Ellcey committed
    • tree-ssa-alias.c (maybe_skip_until): Cache also at the point of the first store… · d660a3db
      tree-ssa-alias.c (maybe_skip_until): Cache also at the point of the first store we visit in a basic-block.
      
      2011-10-12  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-alias.c (maybe_skip_until): Cache also at the point
      	of the first store we visit in a basic-block.
      	(get_continuation_for_phi): Search for a candidate VUSE that
      	might dominates all others.  Do pairwise disambiguation against
      	that candidate.
      
      From-SVN: r179858
      Richard Guenther committed
    • re PR middle-end/50189 (Wrong code error in -O2 [-fstrict-enums] compile, target independent) · ebbcd0c6
      2011-10-12  Paul Koning  <pkoning@gcc.gnu.org>
      
      	PR tree-optimization/50189
      	* tree-vrp.c (extract_range_from_assert): Use the type of
      	the variable, not the limit.
      
      	* g++.dg/torture/pr50189.C: New testcase.
      
      From-SVN: r179857
      Paul Koning committed
    • invoke.texi (-fwhole-file): Update wording since -fwhole-file is now enabled by default. · 7e191522
      2011-10-11  Tobias Burnus  <burnus@net-b.de>
                  Janus Weil  <janus@gcc.gnu.org>
      
              * invoke.texi (-fwhole-file): Update wording since -fwhole-file
              is now enabled by default.
      
      
      Co-Authored-By: Janus Weil <janus@gcc.gnu.org>
      
      From-SVN: r179854
      Tobias Burnus committed