aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-08-29[multiple changes]Arnaud Charlet7-61/+75
2011-08-29 Tristan Gingold <gingold@adacore.com> * a-exexpr.adb, a-except-2005.ads (Jmpbuf_Address): Move to a-exexpr.adb (To_Jmpbuf_Address): Ditto (builtin_longjmp): Ditto 2011-08-29 Thomas Quinot <quinot@adacore.com> * sem_res.adb: Minor reformatting. 2011-08-29 Vincent Celier <celier@adacore.com> * make.adb (Gnatmake): Move special processing for VM targets after the call to Get_Target_Parameters. 2011-08-29 Thomas Quinot <quinot@adacore.com> * sem_ch12.adb, par-ch12.adb: Minor reformatting. From-SVN: r178197
2011-08-29[multiple changes]Arnaud Charlet3-9/+47
2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * sem_res.adb (Resolve_Allocator): Implement Ada2012-B052. Detect cases where an anonymous access discriminant of a limited designated type appears in a non-immutably limited discriminated type and issue an error message. Add local variable Desig_T and replace all occurrences of Designated_Type. 2011-08-29 Jose Ruiz <ruiz@adacore.com> * a-rttiev.adb (Set_Handler): Update comment to indicate that our implementation is compliant to RM D.15(15/2) after the modification imposed by AI05-0094-1 (binding interpretation). From-SVN: r178196
2011-08-29[multiple changes]Arnaud Charlet11-120/+153
2011-08-29 Robert Dewar <dewar@adacore.com> * exp_ch9.adb, s-tasren.adb, exp_sel.adb, exp_sel.ads, exp_ch11.adb, s-interr-hwint.adb, s-tpobop.adb, sem_ch13.adb: Minor reformatting. 2011-08-29 Thomas Quinot <quinot@adacore.com> * par-endh.adb (Check_End): For an END where it is mandatory to repeat the scope name, do not report a missing label as a style violation (it will be diagnosed as an illegality). * exp_dist.adb (Add_Params_For_Variant_Components): Fix handling of variant records: Get_Enum_Lit_From_Pos already returns a usage occurrence of the literal, no need to use New_Occurrence_Of. Set Etype on Expr in Integer_Literal case so that it can be used by Build_To_Any_Call. From-SVN: r178195
2011-08-29[multiple changes]Arnaud Charlet11-62/+147
2011-08-29 Tristan Gingold <gingold@adacore.com> * exp_sel.ads (Build_Abort_BLock_Handler): New function spec. Adjust comment. * exp_sel.adb (Build_Abort_Block): Use Build_Abort_Block_Handler. (Build_Abort_Block_Handler): New function to build an Abort_Signal exception handler. * exp_ch9.adb (Expand_N_Asynchronous_Select): Call Build_Abort_Block_Handler to build the exception handler. Do not undefer aborts for the Abort_Signal exception handler if back-end exception mechanism. * exp_ch11.adb (Expand_Exception_Handlers): Do not undefer aborts if back_end exceptions for all others and abort_signal. * s-except.ads (ZCX_By_Default): New constant. * a-except-2005.adb (Raise_Exception): Do not defer abort if ZCX. (Raise_Exception_Always): Ditto. (Raise_From_Signal_Handler): Ditto. (Raise_With_Location_And_Msg): Ditto. (Raise_With_Msg): Ditto. (Reraise): Ditto. (Reraise_Occurence): Ditto. (Reraise_Occurrence_Always): Ditto. * s-tasren.adb (Exceptional_Complete_Rendezvous): Defer aborts if ZCX. * s-tpobop.adb: (Exceptional_Complete_Body): Undefer abort if ZCX. * s-interr-hwint.adb (Interrupt_Manager): Defer abort if ZCX. 2011-08-29 Thomas Quinot <quinot@adacore.com> * sem_util.ads (Get_Enum_Lit_From_Pos): Clarify documentation. From-SVN: r178194
2011-08-29trans-decl.c (generate_coarray_sym_init): Use GFC_CAF_COARRAY_STATIC for ↵Tobias Burnus6-14/+69
static coarrays. gcc/fortran/ 2011-08-29 Tobias Burnus <burnus@net-b.de> * trans-decl.c (generate_coarray_sym_init): Use GFC_CAF_COARRAY_STATIC for static coarrays. libgfortan/ 2011-08-29 Tobias Burnus <burnus@net-b.de> * caf/libcaf.h (_gfortran_caf_deregister): Update prototype. * caf/mpi.c (_gfortran_caf_deregister): Modify prototype, actually free memory and add error diagnostic. (_gfortran_caf_finalize): Add additional free calls. * caf/single.c (_gfortran_caf_deregister): Modify prototype, actually free memory and add error diagnostic. (_gfortran_caf_finalize): Add additional free calls. From-SVN: r178193
2011-08-29[multiple changes]Arnaud Charlet6-25/+43
2011-08-29 Robert Dewar <dewar@adacore.com> * snames.adb-tmpl, sem_ch13.adb: Minor reformatting Minor code reorganization. 2011-08-29 Bob Duff <duff@adacore.com> * usage.adb (-gnatwy): Fix documentation: this switch applies to Ada 2012, not just Ada 2005. 2011-08-29 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Indicate that when the compiler is called by gnatmake with a project file or with gprbuid, if -gnatep= is specified, the builder may need to be invoked with -x. 2011-08-29 Tristan Gingold <gingold@adacore.com> * a-exexpr-gcc.adb: Minor comment fix. From-SVN: r178192
2011-08-29[multiple changes]Arnaud Charlet11-78/+101
2011-08-29 Robert Dewar <dewar@adacore.com> * sem_ch8.adb: Minor reformatting. 2011-08-29 Bob Duff <duff@adacore.com> * par-ch2.adb (P_Identifier): Warn that "some" is reserved in Ada 2012. * par-ch4.adb (P_Quantified_Expression): Remove unnecessary code for treating "some" as unreserved in earlier Ada versions. This is now handled in Snames.Is_Keyword_Name. Parse "for some" using Tok_Some, rather than Name_Some, since Tok_Some is now recognized as reserved. * scans.adb (Initialize_Ada_Keywords): Handle Tok_Some like any other reserved word. * scans.ads: Minor comment fixes. * snames.adb-tmpl (Is_Keyword_Name): Handle Ada 2012 reserved words as for other language versions. * scn.adb (Scan_Reserved_Identifier): Remove unnecessary code for treating "some" as unreserved in earlier Ada versions. This is now handled in Snames.Is_Keyword_Name. * par-ch3.adb (P_Defining_Identifier): Warn that "some" is reserved in Ada 2012. (P_Subtype_Mark_Resync): Remove unnecessary code for treating "some" as unreserved in earlier Ada versions. This is now handled in Snames.Is_Keyword_Name. * snames.ads-tmpl (Ada_2012_Reserved_Words): Handle Ada 2012 reserved words as for other language versions. * gnat_ugn.texi (-gnatwy): Fix documentation: this switch applies to Ada 2012, not just Ada 2005. From-SVN: r178191
2011-08-29[multiple changes]Arnaud Charlet9-121/+376
2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb: Additional semantic checks for aspects involved in iterators. 2011-08-29 Matthew Heaney <heaney@adacore.com> * a-comutr.ads, a-comutr.adb, a-cimutr.ads, a-cimutr.adb, a-cbmutr.ads, a-cbmutr.adb (Find_In_Subtree): Remove superfluous Container parameter. (Ancestor_Find): ditto. 2011-08-29 Robert Dewar <dewar@adacore.com> * par-endh.adb: Minor reformatting. From-SVN: r178190
2011-08-29par-endh.adb: Minor reformatting.Thomas Quinot2-24/+29
2011-08-29 Thomas Quinot <quinot@adacore.com> * par-endh.adb: Minor reformatting. From-SVN: r178189
2011-08-29[multiple changes]Arnaud Charlet4-73/+50
2011-08-29 Tristan Gingold <gingold@adacore.com> * a-exexpr-gcc.adb (Unwind_Action) Rewrite as an integer with constants. (GNAT_GCC_Exception): Remove N_Cleanups_To_Trigger component. (Adjust_N_CLeanups_For): Remove. (CleanupUnwind_Handler): Call Unhandled_Exception_Terminate when end of stack is reached. (Propgate_Exception): Adjust. * raise-gcc.c: Add a few static/const. (Adjust_N_Cleanups_For): Remove declaration. (PERSONALITY_FUNCTION): Remove code dealing with N_Cleanups_To_Trigger. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb: Use type of function return when rewriting as object declaration. From-SVN: r178188
2011-08-29[multiple changes]Arnaud Charlet4-27/+73
2011-08-29 Gary Dismukes <dismukes@adacore.com> * sem_type.adb: Minor reformatting. 2011-08-29 Robert Dewar <dewar@adacore.com> * makeutl.adb: Minor reformatting. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_ch8.adb (Analyze_Object_Renaming): If the renamed object is a function call of a limited type, the expansion of the renaming is complicated by the presence of various temporaries and subtypes that capture constraints of the renamed object. Rewrite node as an object declaration, whose expansion is simpler. Given that the object is limited there is no copy involved and no performance hit. From-SVN: r178187
2011-08-29[multiple changes]Arnaud Charlet61-124/+173
2011-08-29 Robert Dewar <dewar@adacore.com> * exp_ch5.adb, sinfo.ads, make.adb, s-pooglo.adb, sem_ch12.adb, freeze.adb, sem_ch6.adb, par-ch12.adb: Minor reformatting. 2011-08-29 Tristan Gingold <gingold@adacore.com> * system-darwin-x86.ads, system-linux-s390x.ads, system-linux-alpha.ads, system-tru64.ads, system-irix-n32.ads, system-vxworks-arm.ads, system-linux-hppa.ads, system-linux-s390.ads, system-solaris-sparcv9.ads, system-mingw.ads, system-linux-ia64.ads, system-vms_64.ads, system-vxworks-sparcv9.ads, system-linux-ppc.ads, system-aix64.ads, system-lynxos-ppc.ads, system-linux-sh4.ads, system-solaris-x86.ads, system-linux-x86_64.ads, system-linux-x86.ads, system-vxworks-ppc.ads, system-hpux.ads, system-darwin-ppc.ads, system-solaris-sparc.ads, system-lynxos-x86.ads, system-vxworks-m68k.ads, system-hpux-ia64.ads, system-irix-o32.ads, system-solaris-x86_64.ads, system-mingw-x86_64.ads, system-vxworks-mips.ads, system-linux-sparc.ads, system-vms-ia64.ads, system-freebsd-x86.ads, system-aix.ads, system-darwin-x86_64.ads, system-vxworks-x86.ads: Remove GCC_ZCX_Support * s-taprop-posix.adb, s-taprop-irix.adb, s-taprop-vxworks.adb, s-taprop-tru64.adb, s-taprop-linux.adb, s-taprop-solaris.adb: Ditto. * opt.ads: Adjust comment. * targparm.ads, targparm.adb: Remove GCC_ZCX_Support_On_Target. * gnat1drv.adb: Do not check for GCC_ZCX_Support_On_Target. * system.ads: Move GCC_ZCX_Support to obsolete entries. 2011-08-29 Emmanuel Briot <briot@adacore.com> * makeutl.adb (Do_Complete): Resolve symbolic links when a relative file name is specified on the gnatmake or gprbuild command line, and before we search for that file in the project. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_type.adb (Within_Instance): New predicate in Collect_Interps, used to determine whether a possible interpretation for an overloadable entity is declared within the current instantiation and should be included in the candidate set. 2011-08-29 Vasiliy Fofanov <fofanov@adacore.com> * gnat_rm.texi, gnat_ugn.texi: Clean ups. From-SVN: r178186
2011-08-29sem_res.adb (Resolve_Actuals): Use base type to determine whether an access ↵Ed Schonberg2-6/+13
subtype is access_to_subprogram... 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_res.adb (Resolve_Actuals): Use base type to determine whether an access subtype is access_to_subprogram, when applying checks for RM 3.10.2 (27). From-SVN: r178185
2011-08-29[multiple changes]Arnaud Charlet18-165/+488
2011-08-29 Matthew Heaney <heaney@adacore.com> * a-comutr.adb, a-cimutr.adb, a-cbmutr.adb (Splice_Subtree): Only check for sibling when common parent. 2011-08-29 Thomas Quinot <quinot@adacore.com> * get_scos.adb: Literals of Pragma_Id are pragma names prefixed with "pragma_". 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Enable freeze actions for the return type when in ASIS mode. 2011-08-29 Vincent Celier <celier@adacore.com> * make.adb (Gnatmake): Get the default search dirs, then the target parameters after getting the Builder switches, as the Builder switches may include --RTS= and that could change the default search dirs. 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch7.adb (Make_Adjust_Call): Rewrite to mimic the structure of Make_Final_Call. Move the processing for class-wide types before the processing for derivations from [Limited_]Controlled. (Make_Final_Call): Move the processing for class-wide types before the processing for derivations from [Limited_]Controlled. * s-stposu.adb (Allocate_Any_Controlled): Correct the membership check. Add code to account for alignments larger than the list header. Add a comment illustrating the structure of the allocated object + padding + header. (Deallocate_Any_Controlled): Add code to account for alignments larger than the list header. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sinfo.ads, sinfo.adb: New node kind N_Formal_Incomplete_Type_Definition, related flags. par-ch12.adb (P_Formal_Type_Declaration, G_Formal_Type_Definition): Parse formal incomplete types. * sem.adb (Analyze): Formal_Incomplete_Type_Definitions are handled in sem_ch12. * sem_ch7.adb (Analyze_Package_Specification, Unit_Requires_Body): Formal incomplete types do not need completion. * sem_ch12.adb (Analyze_Formal_Incomplete_Type, Validate_Incomplete_Type_Instance): New procedures to handle formal incomplete types. * freeze.adb (Freeze_Entity): Do not freeze the subtype of an actual that corresponds to a formal incomplete type. * sprint.adb: Handle formal incomplete type declarations. * exp_util.adb (Insert_Actions): An incomplete_type_definition is not an insertion point. From-SVN: r178184
2011-08-29[multiple changes]Arnaud Charlet30-1396/+1912
2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * a-fihema.ads, a-fihema.adb: Unit removed. * a-undesu.ads, a-undesu.adb: New unit implementing Ada.Unchecked_Deallocate_Subpool. * einfo.adb: Remove Associated_Collection from the node usage. Add Finalization_Master to the node usage. (Associated_Collection): Removed. (Finalization_Master): New routine. (Set_Associated_Collection): Removed. (Set_Finalization_Master): New routine. (Write_Field23_Name): Remove Associated_Collection from the output. Add Finalization_Master to the output. * einfo.ads: Remove attribute Associated_Collection and its uses in entities. Add new attribute Finalization_Master along with its uses in entitites. (Associated_Collection): Removed along with its pragma import. (Finalization_Master): New routine along with a pragma import. (Set_Associated_Collection): Removed along with its pragma import. (Set_Finalization_Master): New routine along with a pragma import. * exp_ch3.adb (Expand_Freeze_Array_Type): Replace call to Build_Finalization_Collection with Build_Finalization_Master. (Expand_Freeze_Record_Type): Move the generation of Finalize_Address before the bodies of the predefined routines. Add comment explaining this. Replace call to Build_Finalization_Collection with Build_Finalization_Master. (Freeze_Type): Replace call to Build_Finalization_Collection with Build_Finalization_Master. (Make_Finalize_Address_Body): Comment reformatting. (Make_Predefined_Primitive_Specs): Code reformatting. (Stream_Operation_OK): Update comment mentioning finalization collections. Replace RE_Finalization_Collection with RE_Finalization_Master. * exp_ch4.adb (Complete_Controlled_Allocation): Replace call to Associated_Collection with Finalization_Master. Replace call to Build_Finalization_Collection with Build_Finalization_Master. (Expand_Allocator_Expression): Replace call to Associated_Collection with Finalization_Master. Replace call to Set_Associated_Collection with Set_Finalization_Master. Remove the generation of Set_Finalize_Address_Ptr. (Expand_N_Allocator): Replace call to Associated_Collection with Finalization_Master. Remove the generation of Set_Finalize_Address_Ptr. * exp_ch6.adb (Add_Collection_Actual_To_Build_In_Place_Call): Renamed to Add_Finalization_Master_Actual_To_Build_In_Place_Call. Update the comment on usage. Replace call to Needs_BIP_Collection with Needs_BIP_Finalization_Master Remplace BIP_Collection with BIP_Finalization_Master. Update all comments which mention finalization collections. Replace Associated_Collection with Finalization_Master. Replace Build_Finalization_Collection with Build_Finalization_Master. (BIP_Formal_Suffix): Update BIP_Collection's case. (Build_Heap_Allocator): Update the related comment. Rename local variable Collect to Fin_Mas_Id and update its occurrences. Update comments which mention finalization collections. Replace Set_Associated_Collection with Set_Finalization_Master. (Expand_Call): Update the code which detects a special piece of library code for .NET/JVM. (Make_Build_In_Place_Call_In_Allocator): Replace the call to Add_Collection_Actual_To_Build_In_Place_Call with Add_Finalization_Master_Actual_To_Build_In_Place_Call. Remove the code which generates a call to Make_Set_Finalize_Address_Ptr_Call. (Make_Build_In_Place_Call_In_Anonymous_Context): Replace call to Add_Collection_Actual_To_Build_In_Place_Call with Add_Finalization_Master_Actual_To_Build_In_Place_Call. (Make_Build_In_Place_Call_In_Assignment): Replace call to Add_Collection_Actual_To_Build_In_Place_Call with Add_Finalization_Master_Actual_To_Build_In_Place_Call. (Needs_BIP_Collection): Renamed to Needs_BIP_Finalization_Master. * exp_ch6.ads: Rename BIP_Collection to BIP_Finalization_Master. (Needs_BIP_Collection): Renamed to Needs_BIP_Finalization_Master. * exp_ch7.adb (Build_BIP_Cleanup_Stmts): Update comment on usage. Rename local variable Collect to Fin_Mas_Id and update its occurrences. Replace call to Set_Associated_Collection with Set_Finalization_Master. (Build_Finalization_Collection): Renamed to Build_Finalization_Master. Replace the call to Associated_Collection with Finalization_Master. Rename local variable Coll_Id to Fin_Mas_Id and update its occurrences. Update the way finalization master names are generated. Update the retrieval of the correct access type which will carry the pool and master attributes. (Make_Final_Call): Reimplement the way [Deep_]Finalize is retrieved. (Make_Finalize_Address_Body): Abstract types do not need Finalize_Address. Code reformatting. (Make_Finalize_Address_Stmts): Update comment on usage. (Make_Set_Finalize_Address_Ptr_Call): Removed. (Process_Declarations): Update comments. * exp_ch7.ads (Build_Finalization_Collection): Renamed to Build_Finalization_Master. Update associated comment. (Make_Set_Finalize_Address_Ptr_Call): Removed. * exp_ch13.adb: Update comments which mention finalization collections. (Expand_N_Free_Statement): Replace the call to Associated_Collection with Finalization_Master. * exp_util.adb (Build_Allocate_Deallocate_Proc): Reimplemented to create calls to routines Allocate_Any_Controlled and Deallocate_Any_Controlled. (Find_Finalize_Address): New routine. (Is_Allocate_Deallocate_Proc): Update the RTE entities used in the comparison. (Requires_Cleanup_Actions): Update the comment on freeze node inspection. * exp_util.ads: Remove comment on generated code for Build_Allocate_Deallocate_Proc. The code is now quite complex and it is better to simply look in the body. * freeze.adb (Freeze_All): Update the comment of finalization collections. Replace the call to Associated_Collection with Finalization_Master. Replace the call to Build_Finalization_Collection with Build_Finalization_Master. * impunit.adb: Add a-undesu and s-stposu to the list of units. * Makefile.rtl: Add files a-undesu, s-finmas and s-stposu. Remove file a-fihema. * rtsfind.adb (Get_Unit_Name): Remove the processing for children of Ada.Finalization. Add processing for children of System.Storage_Pools. * rtsfind.ads: Remove the naming of second level children of Ada.Finalization. Remove Ada_Finalization_Heap_Management from the list of units. Remove subtype Ada_Finalization_Child. Remove the following subprogram entities: RE_Allocate RE_Deallocate RE_Finalization_Collection RE_Finalization_Collection_Ptr RE_Set_Finalize_Address_Ptr Add the naming of second level children of System.Storage_Pools. Add System_Finalization_Masters and System_Storage_Pools_Subpools to the list of units. Add subtype System_Storage_Pools_Child. Add the following subprogram entities to System.Finalization_Masters: RE_Finalization_Master RE_Finalization_Master_Ptr Add the following subprogram entities to System.Storage_Pools.Subpools: RE_Allocate_Any_Controlled RE_Deallocate_Any_Controlled RE_Root_Storage_Pool_With_Subpools RE_Root_Subpool RE_Subpool_Handle Move the following subprogram entities from Ada.Finalization.Heap_Management to System.Finalization_Masters: RE_Add_Offset_To_Address RE_Attach RE_Base_Pool RE_Detach * sem_ch3.adb (Access_Type_Declaration): Replace the call to Set_Associated_Collection with Set_Finalization_Master. * sem_ch6.adb (Create_Extra_Formals): Update the way extra formal BIP_Finalization_Master is created. * s-finmas.adb: New unit System.Finalization_Masters. * s-finmas.ads: New unit System.Finalization_Masters. * s-stopoo.ads, s-stopoo.adb: Minor code reformatting. * s-stposu.ads, s-stposu.adb: New unit implementing System.Storage_Pools.Subpools. 2011-08-29 Bob Duff <duff@adacore.com> * tbuild.adb: Add assertion. From-SVN: r178183
2011-08-29[multiple changes]Arnaud Charlet5-11/+72
2011-08-29 Thomas Quinot <quinot@adacore.com> * s-pooglo.adb: Minor reformatting. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement): if the left-hand side is an indexed component of a packed array whose element type is a record with a representation clause different from that of the right-hand side, generate a temporary to minimuze the number of bit-field operations generated. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * exp_util.adb (Insert_Actions): Use clauses can be part of lists of declarations, and thus are likely insertion points for actions. 2011-08-29 Bob Duff <duff@adacore.com> * einfo.ads: Minor comment fix. From-SVN: r178182
2011-08-29[multiple changes]Arnaud Charlet6-25/+100
2011-08-29 Robert Dewar <dewar@adacore.com> * frontend.adb, gnat1drv.adb: Minor reformatting. 2011-08-29 Tristan Gingold <gingold@adacore.com> * s-pooglo.adb (Allocate, Deallocate): Take into account the alignment. * a-fihema.adb (Allocate, Deallocate): Ditto. Possibly add padding space in front of the header. From-SVN: r178181
2011-08-29frontend.adb (Frontend): Exit after creating Standard package when -gnatd.H ↵Johannes Kanig3-1/+29
is present. 2011-08-29 Johannes Kanig <kanig@adacore.com> * frontend.adb (Frontend): Exit after creating Standard package when -gnatd.H is present. * gnat1drv.adb (Gnat1drv): Call Backend right away when -gnatd.H is present. From-SVN: r178180
2011-08-29exp_ch9.adb, [...]: Minor reformatting.Robert Dewar12-79/+103
2011-08-29 Robert Dewar <dewar@adacore.com> * exp_ch9.adb, mlib-prj.adb, prj.adb, prj.ads, ttypes.ads, sem_ch4.adb, makeutl.adb, makeutl.ads, atree.ads, snames.adb-tmpl, snames.ads-tmpl: Minor reformatting. From-SVN: r178179
2011-08-29prj.adb (Reset_Units_In_Table): New procedure.Philippe Gil2-6/+37
2011-08-29 Philippe Gil <gil@adacore.com> * prj.adb (Reset_Units_In_Table): New procedure. Reset units to avoid access to freed memory. From-SVN: r178178
2011-08-29[multiple changes]Arnaud Charlet9-45/+384
2011-08-29 Thomas Quinot <quinot@adacore.com> * get_scos.adb: When reading a P statement SCO without a pragma name (from an older ALI file), ensure that the Pragma_Name component is set to Unknown_Pragma (not left uninitialized). 2011-08-29 Vincent Celier <celier@adacore.com> * makeutl.adb (Get_Directories): New procedure moved from Buildgpr and modified to compute correctly the object path of a SAL project that is extending another library project. (Write_Path_File): New procedure. * makeutl.ads (Directories): New table moved from Buildgpr (Get_Directories): New procedure moved from Buildgpr (Write_Path_File): New procedure * mlib-prj.adb (Build_Library): Use Makeutl.Get_Directories to set the paths before binding SALs, instead of Set_Ada_Paths. * prj-env.adb (Set_Path_File_Var): Procedure has been moved to package Prj. * prj.adb (Set_Path_File_Var): New procedure moved from Prj.Env (Current_Source_Path_File_Of): New function (Set_Current_Object_Path_File_Of): New procedure (Current_Source_Object_File_Of): New function (Set_Current_Object_Path_File_Of): New procedure * prj.ads (Set_Path_File_Var): New procedure moved from Prj.Env (Current_Source_Path_File_Of): New function (Set_Current_Object_Path_File_Of): New procedure (Current_Source_Object_File_Of): New function (Set_Current_Object_Path_File_Of): New procedure 2011-08-29 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement): For an assignment to a packed entity, use a bit-field assignment only if there is no change of representation. From-SVN: r178177
2011-08-29[multiple changes]Arnaud Charlet15-117/+198
2011-08-29 Thomas Quinot <quinot@adacore.com> * rtsfind.ads, exp_ch3.adb (In_Runtime): Minor code improvement, use Is_RTU instead of using Chars comparisons. 2011-08-29 Thomas Quinot <quinot@adacore.com> * exp_strm.adb (Build_Mutable_Record_Read_Procedure): Do not create a temporary object if the actual is constrained, and the discriminants read from the stream don't match. 2011-08-29 Tristan Gingold <gingold@adacore.com> * sem_attr.adb, exp_attr.adb: Add handling of Attribute_System_Allocator_Alignment * snames.ads-tmpl: Add Name_System_Allocator_Alignment and Attribute_System_Allocator_Alignment. * ttypes.ads, get_targ.ads: Add Get_System_Allocator_Alignment. * gcc-interface/targtyps.c, gcc-interface/utils2.c, gcc-interface/gigi.h: Renames get_target_default_allocator_alignment to get_target_system_allocator_alignment. 2011-08-29 Arnaud Charlet <charlet@adacore.com> * gcc-interface/Makefile.in, gcc-interface/Make-lang.in: Update dependencies. From-SVN: r178176
2011-08-29re PR libfortran/50192 (Wrong character comparision with wide strings)Thomas Koenig6-1/+50
2011-08-29 Thomas Koenig <tkoenig@gcc.gnu.org> PR libfortran/50192 * intrinsics/string_intrinsics.c (memcmp_char4): New function. * intrinsics/string_intrinsics_inc.c: New macro MEMCMP, either set to memcmp or memcmp_char4. (compare_string): Use MEMCMP, with correct size for it. * libgfortran.h: Add prototype for memcmp_char4. 2011-08-29 Thomas Koenig <tkoenig@gcc.gnu.org> PR libfortran/50192 * gfortran.dg/widechar_compare_1.f90: New test. From-SVN: r178173
2011-08-29gimple-fold.c (gimple_fold_stmt_to_constant_1): Set a location on the built ↵Richard Guenther2-2/+8
ADDR_EXPR. 2011-08-29 Richard Guenther <rguenther@suse.de> * gimple-fold.c (gimple_fold_stmt_to_constant_1): Set a location on the built ADDR_EXPR. From-SVN: r178172
2011-08-29exp_ch3.adb (In_Runtime): Fix typo.Arnaud Charlet2-1/+5
2011-08-29 Arnaud Charlet <charlet@adacore.com> * exp_ch3.adb (In_Runtime): Fix typo. From-SVN: r178171
2011-08-29[multiple changes]Arnaud Charlet3-36/+63
2011-08-29 Bob Duff <duff@adacore.com> * sem_ch4.adb (Analyze_Allocator): Analyze the subpool specification. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Expand_N_Object_Declaration): If the entity is tagged and a separate tag assignment is generated, ensure that the tag assignment is analyzed. From-SVN: r178170
2011-08-29atree.ads, atree.adb (Copy_Separate_List): New function that applies ↵Ed Schonberg4-20/+55
Copy_Separate_Tree to a list of nodes. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * atree.ads, atree.adb (Copy_Separate_List): New function that applies Copy_Separate_Tree to a list of nodes. Used to create disjoint copies of statement lists that may contain local declarations. (Expand_N_Timed_Entry_Call): Use Copy_Separate_List to duplicate the triggering statements needed for the expansion of this construct, when the trigger is a dispatching call to a synchronized primitive. From-SVN: r178169
2011-08-29gnat_rm.texi: Add doc for 'Elab_Subp_Body.Arnaud Charlet4-4/+36
2011-08-29 Arnaud Charlet <charlet@adacore.com> * gnat_rm.texi: Add doc for 'Elab_Subp_Body. * bindgen.adb: Add comments. * snames.adb-tmpl (Is_Attribute_Name): Only recognize 'Elab_Subp_Body in CodePeer mode. From-SVN: r178168
2011-08-29re PR debug/50215 (FAIL: gcc.dg/guality/pr45882.c)Jakub Jelinek2-3/+9
PR debug/50215 * var-tracking.c (create_entry_value): Call cselib_lookup_from_insn before adding ENTRY_VALUE to val->locs. From-SVN: r178167
2011-08-29exp_attr.adb: Minor reformatting.Robert Dewar6-8/+30
2011-08-29 Robert Dewar <dewar@adacore.com> * exp_attr.adb: Minor reformatting. Minor code reorganization and commenting. * par_sco.adb, checks.adb, sem_attr.adb, get_scos.adb: Minor reformatting. From-SVN: r178166
2011-08-29[multiple changes]Arnaud Charlet10-22/+81
2011-08-29 Thomas Quinot <quinot@adacore.com> * get_scos.adb: Ignore chaining indicators not currently supported by Ada. 2011-08-29 Arnaud Charlet <charlet@adacore.com> * system.ads: Minor editing. 2011-08-29 Arnaud Charlet <charlet@adacore.com> * bindgen.adb (Gen_Elab_Calls): Generate calls to subp'Elab_Subp_Body in CodePeer mode. * sem_attr.ads, sem_attr.adb, exp_Attr.adb, sem_ch6.adb: Add handling of Attribute_Elab_Subp_Body. * snames.ads-tmpl (Attribute_Elab_Subp_Body, Name_Elab_Subp_Body): New. * sem_util.adb: Update comments. From-SVN: r178165
2011-08-29par_sco.adb, [...]: Record pragma name for each SCO statement corresponding ↵Thomas Quinot6-104/+156
to a pragma. 2011-08-29 Thomas Quinot <quinot@adacore.com> * par_sco.adb, scos.adb, scos.ads, put_scos.adb, get_scos.adb: Record pragma name for each SCO statement corresponding to a pragma. From-SVN: r178164
2011-08-29[multiple changes]Arnaud Charlet45-108/+59
2011-08-29 Arnaud Charlet <charlet@adacore.com> * opt.ads: Minor editing. 2011-08-29 Yannick Moy <moy@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Remove options for ALFA mode that only made sense for CodePeer mode. 2011-08-29 Jose Ruiz <ruiz@adacore.com> * targparm.ads (Support_64_Bit_Divides_On_Target): Remove this flag which is no longer used. * targparm.adb (S64, S64_Str, Get_Target_Parameters): Remove the handling of the 64-bit division check. * exp_ch4.adb (Expand_N_Op_Divide): Remove the check for 64-bit division available. * system*.ads (Support_64_Bit_Divides): Remove this flag which is no longer used. 2011-08-29 Thomas Quinot <quinot@adacore.com> * get_scos.adb: Minor reformatting. From-SVN: r178163
2011-08-29[multiple changes]Arnaud Charlet8-60/+57
2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb (Process_Statements_For_Controlled_Objects): Whenever a statement list is wrapped in a block, the block is explicitly analyzed in order to properly redecorate the entities and create a servicing finalizer. 2011-08-29 Tristan Gingold <gingold@adacore.com> * sinfo.ads, sinfo.adb (Zero_Cost_Handling): Remove. (Set_Zero_Cost_Handling): Remove. 2011-08-29 Thomas Quinot <quinot@adacore.com> * par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Minor reformatting From-SVN: r178162
2011-08-29[multiple changes]Arnaud Charlet6-14/+44
2011-08-29 Geert Bosch <bosch@adacore.com> * s-vaflop-vms-alpha.adb (Neg_F): Use subtraction instead of negation instruction, as the latter may produce -0.0, which is not a valid VAX F float number. (Neg_G): Likewise for VAX F float. 2011-08-29 Robert Dewar <dewar@adacore.com> * exp_util.adb: Minor reformatting. 2011-08-29 Yannick Moy <moy@adacore.com> * sem_ch3.adb: Minor comment update. 2011-08-29 Thomas Quinot <quinot@adacore.com> * checks.adb (Apply_Type_Conversion_Checks): Use the Underlying_Type of the operand type. 2011-08-29 Thomas Quinot <quinot@adacore.com> * par_sco.adb (Traverse_Declarations_Or_Statements): Do not flush current statement sequence on a generic instantiation or a subprogram declaration. From-SVN: r178161
2011-08-29[multiple changes]Arnaud Charlet9-190/+119
2011-08-29 Robert Dewar <dewar@adacore.com> * sem_type.adb, einfo.ads, freeze.adb, exp_ch4.adb, sem_ch13.adb: Minor reformatting. 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean, Boolean)): Correct the check which involves the freeze node of a controlled or access-to-controlled type. 2011-08-29 Geert Bosch <bosch@adacore.com> * sem_warn.adb (Check_Code_Statement): Remove check for consecutive Asm statements. * s-vaflop-vms-alpha.adb: Remove bogus Volatile => True arguments from Asm statements. From-SVN: r178160
2011-08-29[multiple changes]Arnaud Charlet6-980/+1038
2011-08-29 Yannick Moy <moy@adacore.com> * sem_ch3.adb (Array_Type_Declaration): Insert a subtype declaration for every index type and component type that is not a subtype_mark. (Process_Subtype): Set Etype of subtype. 2011-08-29 Robert Dewar <dewar@adacore.com> * a-cbmutr.adb, a-cimutr.adb, a-comutr.adb, prj-nmsc.adb: Minor code reorganization. Minor reformatting. From-SVN: r178159
2011-08-29[multiple changes]Arnaud Charlet3-2/+23
2011-08-29 Steve Baird <baird@adacore.com> * exp_ch4.adb (Expand_N_Op_Expon): Suppress N_Op_Expon node expansion for CodePeer and ALFA modes. 2011-08-29 Ed Schonberg <schonberg@adacore.com> * sem_type.adb (Collect_Interps): Within an instance, collect a homonym that comes from an enclosing scope if it is not the renaming of an actual, to handle properly a spurious ambiguity in an instance. From-SVN: r178158
2011-08-29[multiple changes]Arnaud Charlet4-16/+39
2011-08-29 Eric Botcazou <ebotcazou@adacore.com> * sem_ch13.adb (Alignment_Check_For_Esize_Change): Rename to... (Alignment_Check_For_Size_Change): ...this. Add SIZE parameter and use it instead of the Esize of the first parameter. (Analyze_Attribute_Definition_Clause) <Object_Size>: Adjust call to above change. <Size>: Likewise. Call it for composite types on the RM size. 2011-08-29 Yannick Moy <moy@adacore.com> * exp_ch4.adb (Expand_N_Op_Not): Do not expand not on array. * sem_util.adb (Unique_Name): Correct behaviour for names of compilation units. From-SVN: r178157
2011-08-29[multiple changes]Arnaud Charlet17-81/+165
2011-08-29 Yannick Moy <moy@adacore.com> * sem_prag.adb (Check_Precondition_Postcondition): In formal verification mode, analyze pragma expression for correctness, for pre/post on library-level subprogram, as it is not expanded later. 2011-08-29 Yannick Moy <moy@adacore.com> * exp_aggr.adb (Expand_Array_Aggregate): Do not expand array aggregates in formal verification. 2011-08-29 Thomas Quinot <quinot@adacore.com> * sem_util.adb: Minor reformatting. * freeze.adb, sem_ch13.adb: Fix comment: Bit_Order is an attribute, there's no pragma. * par_sco.ads, par_sco.adb: Update comments. 2011-08-29 Yannick Moy <moy@adacore.com> * einfo.adb, einfo.ads: Remove flag Is_Postcondition_Proc and associated getter/setter. * sem_ch6.adb: Remove reference to Is_Postcondition_Proc. 2011-08-29 Vincent Celier <celier@adacore.com> * prj-attr.adb: New Compiler attribute Dependency_Kind and Language_Kind * prj-conf.adb: Add_Default_GNAT_Naming_Scheme: Add a package Compiler with declarations for Language_Kind and Dependency_Kind for Ada. * prj-nmsc.adb (Check_Unit_Name): New name of procedure Check_Ada_Name (Process_Compiler): Take into account the new attributes Dependency_Kind and Language_Kind. (Check_Configuration): Check if language kind is unit based, not if the language name is Ada. (Process_Exceptions_Unit_Based): Ditto (Add_Language): Remove default additions of language and dependency kind * prj.ads: Minor comment change * snames.ads-tmpl: New standard names Dependency_Kind and Language_Kind 2011-08-29 Johannes Kanig <kanig@adacore.com> * debug.adb: Update comments. From-SVN: r178156
2011-08-29Daily bump.GCC Administrator1-1/+1
From-SVN: r178152
2011-08-28move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove workaround for c++/49045.Paolo Carlini3-11/+9
2011-08-28 Paolo Carlini <paolo.carlini@oracle.com> * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove workaround for c++/49045. * include/bits/algorithmfwd.h: Likewise. From-SVN: r178147
2011-08-28Fix the use of linemap_add and remove unnecessary kludgeDodji Seketeli8-10/+48
libcpp/ * line-map.c (linemap_add): Assert that reason must not be LC_RENAME when called for the first time on a "main input file". c-family/ * c-pch.c (c_common_read_pch): Call linemap_add with LC_ENTER as it's the first time it's being called on this main TU. gcc/lto/ * lto-lang.c (lto_init): Likewise. Also, avoid calling linemap_add twice. gcc/fortran/ * scanner.c (load_file): Don't abuse LC_RENAME reason while (indirectly) calling linemap_add. From-SVN: r178146
2011-08-28Core DR 342 PR c++/48582Jason Merrill7-20/+107
Core DR 342 PR c++/48582 * pt.c (check_valid_ptrmem_cst_expr): A null member pointer value is valid in C++11. (convert_nontype_argument): Likewise. Implicitly convert nullptr and do constant folding. * mangle.c (write_template_arg_literal): Mangle null member pointer values as 0. * call.c (null_member_pointer_value_p): New. * cp-tree.h: Declare it. From-SVN: r178144
2011-08-28* ja.po: Update.Joseph Myers2-85/+56
From-SVN: r178142
2011-08-28re PR bootstrap/50218 (tree-ssa-loop-ivopts.c triggers ↵Mikael Pettersson2-1/+7
-Werror=maybe-uninitialized breaking i686-linux bootstrap) 2011-08-28 Mikael Pettersson <mikpe@it.uu.se> PR bootstrap/50218 * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Initialize comp. From-SVN: r178141
2011-08-28re PR fortran/48066 (Segfault with SUM of zero-sized array)Thomas Koenig162-169/+326
2011-08-28 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/40866 * generated/iall_i1.c: Regenerated. * generated/iall_i16.c: Regenerated. * generated/iall_i2.c: Regenerated. * generated/iall_i4.c: Regenerated. * generated/iall_i8.c: Regenerated. * generated/iany_i1.c: Regenerated. * generated/iany_i16.c: Regenerated. * generated/iany_i2.c: Regenerated. * generated/iany_i4.c: Regenerated. * generated/iany_i8.c: Regenerated. * generated/iparity_i1.c: Regenerated. * generated/iparity_i16.c: Regenerated. * generated/iparity_i2.c: Regenerated. * generated/iparity_i4.c: Regenerated. * generated/iparity_i8.c: Regenerated. * generated/norm2_r10.c: Regenerated. * generated/norm2_r16.c: Regenerated. * generated/norm2_r4.c: Regenerated. * generated/norm2_r8.c: Regenerated. * generated/parity_l1.c: Regenerated. * generated/parity_l16.c: Regenerated. * generated/parity_l2.c: Regenerated. * generated/parity_l4.c: Regenerated. * generated/parity_l8.c: Regenerated. * generated/misc_specifics.F90: Regenerated (comment change). * generated/_abs_c10.F90: Regenerated (comment change). * generated/_abs_c16.F90: Regenerated (comment change). * generated/_abs_c4.F90: Regenerated (comment change). * generated/_abs_c8.F90: Regenerated (comment change). * generated/_abs_i16.F90: Regenerated (comment change). * generated/_abs_i4.F90: Regenerated (comment change). * generated/_abs_i8.F90: Regenerated (comment change). * generated/_abs_r10.F90: Regenerated (comment change). * generated/_abs_r16.F90: Regenerated (comment change). * generated/_abs_r4.F90: Regenerated (comment change). * generated/_abs_r8.F90: Regenerated (comment change). * generated/_acosh_r10.F90: Regenerated (comment change). * generated/_acosh_r16.F90: Regenerated (comment change). * generated/_acosh_r4.F90: Regenerated (comment change). * generated/_acosh_r8.F90: Regenerated (comment change). * generated/_acos_r10.F90: Regenerated (comment change). * generated/_acos_r16.F90: Regenerated (comment change). * generated/_acos_r4.F90: Regenerated (comment change). * generated/_acos_r8.F90: Regenerated (comment change). * generated/_aimag_c10.F90: Regenerated (comment change). * generated/_aimag_c16.F90: Regenerated (comment change). * generated/_aimag_c4.F90: Regenerated (comment change). * generated/_aimag_c8.F90: Regenerated (comment change). * generated/_aint_r10.F90: Regenerated (comment change). * generated/_aint_r16.F90: Regenerated (comment change). * generated/_aint_r4.F90: Regenerated (comment change). * generated/_aint_r8.F90: Regenerated (comment change). * generated/_anint_r10.F90: Regenerated (comment change). * generated/_anint_r16.F90: Regenerated (comment change). * generated/_anint_r4.F90: Regenerated (comment change). * generated/_anint_r8.F90: Regenerated (comment change). * generated/_asinh_r10.F90: Regenerated (comment change). * generated/_asinh_r16.F90: Regenerated (comment change). * generated/_asinh_r4.F90: Regenerated (comment change). * generated/_asinh_r8.F90: Regenerated (comment change). * generated/_asin_r10.F90: Regenerated (comment change). * generated/_asin_r16.F90: Regenerated (comment change). * generated/_asin_r4.F90: Regenerated (comment change). * generated/_asin_r8.F90: Regenerated (comment change). * generated/_atan2_r10.F90: Regenerated (comment change). * generated/_atan2_r16.F90: Regenerated (comment change). * generated/_atan2_r4.F90: Regenerated (comment change). * generated/_atan2_r8.F90: Regenerated (comment change). * generated/_atanh_r10.F90: Regenerated (comment change). * generated/_atanh_r16.F90: Regenerated (comment change). * generated/_atanh_r4.F90: Regenerated (comment change). * generated/_atanh_r8.F90: Regenerated (comment change). * generated/_atan_r10.F90: Regenerated (comment change). * generated/_atan_r16.F90: Regenerated (comment change). * generated/_atan_r4.F90: Regenerated (comment change). * generated/_atan_r8.F90: Regenerated (comment change). * generated/_conjg_c10.F90: Regenerated (comment change). * generated/_conjg_c16.F90: Regenerated (comment change). * generated/_conjg_c4.F90: Regenerated (comment change). * generated/_conjg_c8.F90: Regenerated (comment change). * generated/_cosh_r10.F90: Regenerated (comment change). * generated/_cosh_r16.F90: Regenerated (comment change). * generated/_cosh_r4.F90: Regenerated (comment change). * generated/_cosh_r8.F90: Regenerated (comment change). * generated/_cos_c10.F90: Regenerated (comment change). * generated/_cos_c16.F90: Regenerated (comment change). * generated/_cos_c4.F90: Regenerated (comment change). * generated/_cos_c8.F90: Regenerated (comment change). * generated/_cos_r10.F90: Regenerated (comment change). * generated/_cos_r16.F90: Regenerated (comment change). * generated/_cos_r4.F90: Regenerated (comment change). * generated/_cos_r8.F90: Regenerated (comment change). * generated/_dim_i16.F90: Regenerated (comment change). * generated/_dim_i4.F90: Regenerated (comment change). * generated/_dim_i8.F90: Regenerated (comment change). * generated/_dim_r10.F90: Regenerated (comment change). * generated/_dim_r16.F90: Regenerated (comment change). * generated/_dim_r4.F90: Regenerated (comment change). * generated/_dim_r8.F90: Regenerated (comment change). * generated/_exp_c10.F90: Regenerated (comment change). * generated/_exp_c16.F90: Regenerated (comment change). * generated/_exp_c4.F90: Regenerated (comment change). * generated/_exp_c8.F90: Regenerated (comment change). * generated/_exp_r10.F90: Regenerated (comment change). * generated/_exp_r16.F90: Regenerated (comment change). * generated/_exp_r4.F90: Regenerated (comment change). * generated/_exp_r8.F90: Regenerated (comment change). * generated/_log10_r10.F90: Regenerated (comment change). * generated/_log10_r16.F90: Regenerated (comment change). * generated/_log10_r4.F90: Regenerated (comment change). * generated/_log10_r8.F90: Regenerated (comment change). * generated/_log_c10.F90: Regenerated (comment change). * generated/_log_c16.F90: Regenerated (comment change). * generated/_log_c4.F90: Regenerated (comment change). * generated/_log_c8.F90: Regenerated (comment change). * generated/_log_r10.F90: Regenerated (comment change). * generated/_log_r16.F90: Regenerated (comment change). * generated/_log_r4.F90: Regenerated (comment change). * generated/_log_r8.F90: Regenerated (comment change). * generated/_mod_i16.F90: Regenerated (comment change). * generated/_mod_i4.F90: Regenerated (comment change). * generated/_mod_i8.F90: Regenerated (comment change). * generated/_mod_r10.F90: Regenerated (comment change). * generated/_mod_r16.F90: Regenerated (comment change). * generated/_mod_r4.F90: Regenerated (comment change). * generated/_mod_r8.F90: Regenerated (comment change). * generated/_sign_i16.F90: Regenerated (comment change). * generated/_sign_i4.F90: Regenerated (comment change). * generated/_sign_i8.F90: Regenerated (comment change). * generated/_sign_r10.F90: Regenerated (comment change). * generated/_sign_r16.F90: Regenerated (comment change). * generated/_sign_r4.F90: Regenerated (comment change). * generated/_sign_r8.F90: Regenerated (comment change). * generated/_sinh_r10.F90: Regenerated (comment change). * generated/_sinh_r16.F90: Regenerated (comment change). * generated/_sinh_r4.F90: Regenerated (comment change). * generated/_sinh_r8.F90: Regenerated (comment change). * generated/_sin_c10.F90: Regenerated (comment change). * generated/_sin_c16.F90: Regenerated (comment change). * generated/_sin_c4.F90: Regenerated (comment change). * generated/_sin_c8.F90: Regenerated (comment change). * generated/_sin_r10.F90: Regenerated (comment change). * generated/_sin_r16.F90: Regenerated (comment change). * generated/_sin_r4.F90: Regenerated (comment change). * generated/_sin_r8.F90: Regenerated (comment change). * generated/_sqrt_c10.F90: Regenerated (comment change). * generated/_sqrt_c16.F90: Regenerated (comment change). * generated/_sqrt_c4.F90: Regenerated (comment change). * generated/_sqrt_c8.F90: Regenerated (comment change). * generated/_sqrt_r10.F90: Regenerated (comment change). * generated/_sqrt_r16.F90: Regenerated (comment change). * generated/_sqrt_r4.F90: Regenerated (comment change). * generated/_sqrt_r8.F90: Regenerated (comment change). * generated/_tanh_r10.F90: Regenerated (comment change). * generated/_tanh_r16.F90: Regenerated (comment change). * generated/_tanh_r4.F90: Regenerated (comment change). * generated/_tanh_r8.F90: Regenerated (comment change). * generated/_tan_r10.F90: Regenerated (comment change). * generated/_tan_r16.F90: Regenerated (comment change). * generated/_tan_r4.F90: Regenerated (comment change). * generated/_tan_r8.F90: Regenerated (comment change). From-SVN: r178140
2011-08-28Daily bump.GCC Administrator1-1/+1
From-SVN: r178139
2011-08-27rtl.texi (simple_return): Document.Bernd Schmidt27-197/+402
* doc/rtl.texi (simple_return): Document. (parallel, PATTERN): Here too. * doc/md.texi (return): Mention it's allowed to expand to simple_return in some cases. (simple_return): Document standard pattern. * gengenrtl.c (special_rtx): SIMPLE_RETURN is special. * final.c (final_scan_insn): Use ANY_RETURN_P on body. * reorg.c (function_return_label, function_simple_return_label): New static variables, replacing... (end_of_function_label): ... this. (simplejump_or_return_p): New static function. (optimize_skip, steal_delay_list_from_fallthrough, fill_slots_from_thread): Use it. (relax_delay_slots): Likewise. Use ANY_RETURN_P on body. (rare_destination, follow_jumps): Use ANY_RETURN_P on body. (find_end_label): Take a new arg which is one of the two return rtxs. Depending on which, set either function_return_label or function_simple_return_label. All callers changed. (make_return_insns): Make both kinds. (dbr_schedule): Adjust for two kinds of end labels. * function.c (emit_return_into_block): Set JUMP_LABEL properly. * genemit.c (gen_exp): Handle SIMPLE_RETURN. (gen_expand, gen_split): Use ANY_RETURN_P. * df-scan.c (df_uses_record): Handle SIMPLE_RETURN. * rtl.def (SIMPLE_RETURN): New code. * ifcvt.c (find_if_case_1): Be more careful about redirecting jumps to the EXIT_BLOCK. * jump.c (condjump_p, condjump_in_parallel_p, any_condjump_p, returnjump_p_1): Handle SIMPLE_RETURNs. * print-rtl.c (print_rtx): Likewise. * rtl.c (copy_rtx): Likewise. * bt-load.c (compute_defs_uses_and_gen): Use ANY_RETURN_P. * combine.c (simplify_set): Likewise. * resource.c (find_dead_or_set_registers, mark_set_resources): Likewise. * emit-rtl.c (verify_rtx_sharing, classify_insn, copy_insn_1, copy_rtx_if_shared_1, mark_used_flags): Handle SIMPLE_RETURNs. (init_emit_regs): Initialize simple_return_rtx. * cfglayout.c (fixup_reorder_chain): Pass a JUMP_LABEL to force_nonfallthru_and_redirect. * rtl.h (ANY_RETURN_P): Allow SIMPLE_RETURN. (GR_SIMPLE_RETURN): New enum value. (simple_return_rtx): New macro. * basic-block.h (force_nonfallthru_and_redirect): Adjust declaration. * cfgrtl.c (force_nonfallthru_and_redirect): Take a new jump_label argument. All callers changed. Be careful about what kinds of returnjumps to generate. * config/i386/3i86.c (ix86_pad_returns, ix86_count_insn_bb, ix86_pad_short_function): Likewise. * config/arm/arm.c (arm_final_prescan_insn): Handle both kinds of return. * config/mips/mips.md (any_return): New code_iterator. (optab): Add cases for return and simple_return. (return): Expand to a simple_return. (simple_return): New pattern. (*<optab>, *<optab>_internal for any_return): New patterns. (return_internal): Remove. * config/mips/mips.c (mips_expand_epilogue): Make the last insn a simple_return_internal. From-SVN: r178135
2011-08-27sse.md (*absneg<mode>2): Fix split condition.Uros Bizjak3-12/+36
* config/i386/sse.md (*absneg<mode>2): Fix split condition. (vec_extract_lo_<mode>): Prevent both operands in memory. (vec_extract_lo_v16hi): Ditto. (*vec_extract_v4sf_mem): Add TARGET_SSE insn constraint. * config/i386/sse.md (mulv16qi3): Attach REG_EQUAL note. (*sse2_mulv4si3): Ditto. (mulv2di3): Ditto. * config/i386/i386.c (legitimize_tls_address): Change REG_EQIV notes to REG_EQUAL. From-SVN: r178132