- 24 Apr, 2013 33 commits
-
-
gcc/ * config/aarch64/arm_neon.h (vld1<q>_lane*): Fix constraints. (vld1<q>_dup_<sufp><8, 16, 32, 64>): Likewise. (vld1<q>_<sufp><8, 16, 32, 64>): Likewise. From-SVN: r198250
James Greenhalgh committed -
2013-04-24 Paolo Carlini <paolo.carlini@oracle.com> * doc/cpp.texi: Document __GXX_EXPERIMENTAL_CXX1Y__. /c-family 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com> * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_EXPERIMENTAL_CXX1Y__. /testsuite 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com> * g++.dg/cpp1y/cxx1y_macro.C: New. From-SVN: r198249
Paolo Carlini committed -
From-SVN: r198248
Jason Merrill committed -
* semantics.c (add_capture): Don't prepend "__" to init-captures. (build_capture_proxy): Adjust. * error.c (dump_simple_decl): Check DECL_NORMAL_CAPTURE_P. From-SVN: r198247
Jason Merrill committed -
* parser.c (cp_parser_lambda_introducer): Use cp_parser_initializer. * pt.c (tsubst) [DECLTYPE_TYPE]: Handle DECLTYPE_FOR_INIT_CAPTURE. * semantics.c (lambda_capture_field_type): Use do_auto_deduction. (add_capture): Collapse a parenthesized initializer into a single expression. * cp-tree.h (DECLTYPE_FOR_INIT_CAPTURE): New. From-SVN: r198246
Jason Merrill committed -
From-SVN: r198245
Arnaud Charlet committed -
2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch6.adb (Expand_Actuals): Add a predicate check on an actual the related type has a predicate function. * sem_ch3.adb (Constant_Redeclaration): Ensure that the related type has an invariant procedure before building a call to it. * sem_ch6.adb (Append_Enabled_Item): New routine. (Check_Access_Invariants): Use routine Append_Enabled_Item to chain onto the list of postconditions. (Contains_Enabled_Pragmas): Removed. (Expand_Contract_Cases): Use routine Append_Enabled_Item to chain onto the list of postconditions. (Invariants_Or_Predicates_Present): Removed. (Process_PPCs): Partially reimplemented. 2013-04-24 Sergey Rybin <rybin@adacore.com frybin> * tree_io.ads: Update ASIS_Version_Number because of changes in the way how entities are chained in a scope by means of Next_Entity link. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * exp_ch13.adb (Expand_N_Attribute_Definition_Clause, case Storage_Size): If the clause is not from an aspect, insert assignment to size variable of task type at the point of the clause, not after the task definition, to prevent access before elaboration in the back-end. 2013-04-24 Yannick Moy <moy@adacore.com> * sem_prag.adb (Sig_Flags): Set correct value for Pragma_Assume. 2013-04-24 Yannick Moy <moy@adacore.com> * gnat_rm.texi: Document 'Loop_Entry. 2013-04-24 Jose Ruiz <ruiz@adacore.com> * s-tassta.adb, s-tarest.adb (Task_Wrapper): Start looking for fall-back termination handlers from the parents, because they apply only to dependent tasks. * s-solita.adb (Task_Termination_Handler_T): Do not look for fall-back termination handlers because the environment task has no parent, and if it defines one of these handlers it does not apply to itself because they apply only to dependent tasks. From-SVN: r198244
Arnaud Charlet committed -
2013-04-24 Robert Dewar <dewar@adacore.com> * sem_type.adb, exp_attr.adb, exp_ch4.adb: Minor reformatting. 2013-04-24 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Document 'Update attribute. * sem_attr.adb (Analyze_Attribute, case Update): Remove call to S14_Attribute (S14_Attribute): removed. 2013-04-24 Robert Dewar <dewar@adacore.com> * interfac.ads: Add size clauses for IEEE_Float_32/64 2013-04-24 Claire Dross <dross@adacore.com> * gnat1drv.adb (Adjust_Global_Switches): Remove special assignment of Use_Expression_With_Actions for SPARK_Mode. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * checks.adb (Apply_Predicate_Check): Check for the presence of the dynamic predicate aspect when trying to determine if the predicate of a type is non-static. * sem_ch5.adb (Analyze_Loop_Parameter_Specification): Check for the presence of the dynamic predicate aspect when trying to determine if the predicate of a type is non- static. * sem_ch13.adb (Add_Call): Capture the nature of the inherited ancestor predicate. (Build_Predicate_Functions): Update comments. Rewrite the checks on static predicate application. Complain about the form of a non-static expression only when the type is static. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_prag.adb: Add guard to tree traversal. 2013-04-24 Vincent Celier <celier@adacore.com> * clean.adb (Clean): Remove local variable Root_Environment, use Makeutl.Root_Environment instead. * gnatcmd.adb: Remove local variable Root_Environment, use Makeutl.Root_Environment instead. * make.adb (Gnatmake): Remove local variable Root_Environment, use Makeutl.Root_Environment instead. * prj-makr.adb: Remove local variable Root_Environment, use Makeutl.Root_Environment instead. From-SVN: r198243
Arnaud Charlet committed -
2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * exp_attr.adb (Expand_Loop_Entry_Attribute): Clarify the extraction of the declarative part of the conditional block. Move the processing of simple infinite loops to the start of the expansion logic. Correct the check which determines whether the proper scope is installed in visibility. * sem_attr.adb (Analyze_Attribute): Add local variable Attr to keep track of the attribute in case the enclosing indexed component has to be rewritten. When searching for the enclosing loop, start from the proper attribute reference in case of a rewriting. Do not allow for 'Loop_Entry to appear in pragma Assert. Replace loop variable J with Index. Set the type of the proper attribute. * sem_ch5.adb (Check_Unreachable_Code): Detect a specialized block that services a loop statement subject to at least one 'Loop_Entry attribute. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_type.adb (Disambiguate): In Ada 2012 mode, when trying to resolve a fixed point operation, use first subtype to determine whether type and operator are declared in the same list of declarations. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * par-ch6.adb (P_Subprogram): Detect an illegal placement of the aspect specification list in the context of expression functions. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * exp_ch4.adb (Expand_N_Allocator): If the designated object has tasks, and the pointer type is an itype that has no master id, create a master renaming in the current context, which can only be an init_proc. From-SVN: r198242
Arnaud Charlet committed -
2013-04-24 Robert Dewar <dewar@adacore.com> * sem_ch3.adb, sem_ch7.adb: Minor reformatting. * gnat_rm.texi: Document pragma Loop_Invariant. * sem_attr.adb (Analyze_Attribute, case Loop_Entry): This is no longer an S14_Attribute. * sem_prag.adb (Analyze_Pragma, case Loop_Invariant): Combine processing with Assert, allow message parameter, remove call to S14_Pragma. 2013-04-24 Thomas Quinot <quinot@adacore.com> * exp_ch4.adb: Minor reformatting. From-SVN: r198241
Arnaud Charlet committed -
2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_ch7.adb (Swap_Private_Dependents): New internal routine to Install_Private_Declarations, to make the installation of private dependents recursive in the presence of child units. * sem_ch3.adb (Build_Discriminated_Subtype): Initialize properly the Private_Dependents of a private subtype. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * exp_attr.adb (Expand_Loop_Entry_Attribute): Update the retrieval of the block declarations. * par-ch4.adb (P_Name): Let the name parsing machinery create a sequence of nested indexed components for attribute Loop_Entry. * sem_attr.adb (Analyze_Attribute): Add local constant Context. Reimplement part of the analysis of attribute Loop_Entry. (Convert_To_Indexed_Component): Removed. * sem_ch4.adb (Analyze_Indexed_Component_Form): Do not analyze an indexed component after it has been rewritten into attribute Loop_Entry. From-SVN: r198240
Arnaud Charlet committed -
2013-04-24 Yannick Moy <moy@adacore.com> * snames.ads-tmpl: Minor change to list Loop_(In)variant not in configuration pragma. * sem_ch3.adb (Analyze_Declarations): Do not look at the original node for analyzing the expressions in pre/postconditions. From-SVN: r198239
Yannick Moy committed -
2013-04-24 Robert Dewar <dewar@adacore.com> * gnatcmd.adb, xref_lib.adb, gnatls.adb, sem_ch13.adb: Minor reformatting. 2013-04-24 Yannick Moy <moy@adacore.com> * sem_ch6.adb (Analyze_Generic_Subprogram_Body, Analyze_Subprogram_Body_Helper): Reset contract node to Empty before setting entity to E_Subprogram_Body. * sem_ch8.adb (Analyze_Subprogram_Renaming): Reset contract node to Empty before setting entity to E_Subprogram_Body. From-SVN: r198238
Arnaud Charlet committed -
2013-04-24 Vincent Celier <celier@adacore.com> * gnat_ugn.texi: Document new gnatls switch -aPdir. * gnatcmd.adb: Pass switch -aP<dir> to gnatls. * gnatls.adb (Scan_Ls_Arg): Process new switch -aP<dir>. Issue a warning for unknown switches. (Usage): Add line for new switch -aPdir. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_util.adb, sem_util.ads (Is_Limited_Class_Wide_Type): Return true if the type comes from a limited view, so that task attributes can be constructed. 2013-04-24 Yannick Moy <moy@adacore.com> * checks.adb (Apply_Float_Conversion_Check): Do not apply checks if full expansion is not enabled. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Create_Extra_Formals): In Ada 2012, create extra formals if the type does not yet have a completion, and thus has no underlying view. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): Treat an aspect specification for Address as a reference, to suppress warnings on entities that may be read by an external device. From-SVN: r198237
Arnaud Charlet committed -
* gnat_ugn.texi: Add description of '--help' and '--version' options for ASIS tools: gnatelim, gnatmetric, gnatstub, gnatpp. 2013-04-24 Arnaud Charlet <charlet@adacore.com> * gnat_rm.texi: Minor syntax fix. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * exp_attr.adb (Expand_Loop_Entry_Attribute): Add extra comments on what and why is being analyzed. Remove the decoration of renamings as this simply falls out of the general analysis mechanism. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * sem_res.adb (Explain_Redundancy): New routine. (Resolve_Equality_Op): Place the error concerning a redundant comparison to True at the "=". Try to explain the nature of the redundant True. 2013-04-24 Javier Miranda <miranda@adacore.com> * checks.adb, exp_ch6.adb (Install_Null_Excluding_Check): No check in interface thunks since it is performed at the caller side. (Expand_Simple_Function_Return): No accessibility check needed in thunks since the check is done by the target routine. 2013-04-24 Vincent Celier <celier@adacore.com> * xref_lib.adb (Add_Entity): Use the canonical file names so that source file names with capital letters are found on platforms where file names are case insensitive. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * par-ch4.adb (P_Name): Continue to parse the name extension when the construct is attribute Loop_Entry. Do not convert the attribute reference into an indexed component when there is at least one expression / range following 'Loop_Entry. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch6.adb (Contains_Enabled_Pragmas): New routine. (Process_PPCs): Generate procedure _Postconditions only when the context has invariants or predicates or enabled aspects/pragmas. From-SVN: r198236
Arnaud Charlet committed -
2013-04-24 Thomas Quinot <quinot@adacore.com> * g-socket.adb (Host_Entry): Introduce intermediate copy of memory location pointed to by Hostent_H_Addr, as it might not have sufficient alignment. 2013-04-24 Yannick Moy <moy@adacore.com> * repinfo.adb (List_Rep_Info): Set the value of Unit_Casing before calling subprograms which may read it. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * einfo.adb: Remove Loop_Entry_Attributes from the usage of nodes. Flag 260 is now used. (Has_Loop_Entry_Attributes): New routine. (Loop_Entry_Attributes): Removed. (Set_Has_Loop_Entry_Attributes): New routine. (Set_Loop_Entry_Attributes): Removed. (Write_Entity_Flags): Write out Flag 260. (Write_Field10_Name): Remove the output for Loop_Entry_Attributes. * einfo.ads: Remove attribute Loop_Entry_Attributes, its related comment and uses in nodes. Add new attribute Has_Loop_Entry_Attributes, related comment and uses in loop nodes. (Has_Loop_Entry_Attributes): New routine and pragma Inline. (Loop_Entry_Attributes): Removed along with pragma Inline. (Set_Has_Loop_Entry_Attributes): New routine and pragma Inline. (Set_Loop_Entry_Attributes): Removed along with pragma Inline. * exp_attr.adb (Expand_Loop_Entry_Attribute): New routine. (Expand_N_Attribute_Reference): Expand attribute 'Loop_Entry. * exp_ch5.adb: Remove with and use clause for Elists. (Expand_Loop_Entry_Attributes): Removed. (Expand_N_Loop_Statement): Add local variable Stmt. Rename local constant Isc to Scheme. When a loop is subject to attribute 'Loop_Entry, retrieve the nested loop from the conditional block. Move the processing of controlled object at the end of loop expansion. * sem_attr.adb (Analyze_Attribute): Do not chain attribute 'Loop_Entry to its related loop. * sem_ch5.adb (Analyze_Loop_Statement): Add local variable Stmt. When the iteration scheme mentions attribute 'Loop_Entry, the entire loop is rewritten into a block. Retrieve the nested loop in such cases to complete the analysis. * sem_util.ads, sem_util.adb (Find_Loop_In_Conditional_Block): New routine. (Subject_To_Loop_Entry_Attributes): New routine. 2013-04-24 Robert Dewar <dewar@adacore.com> * exp_prag.adb (Expand_Loop_Variant): Generate pragma Check (Loop_Variant, xxx) rather than Assert (xxx). * gnat_rm.texi: Document pragma Loop_Variant. * sem_prag.adb (Analyze_Pragma, case Loop_Variant): Remove call to S14_Pragma. From-SVN: r198235
Arnaud Charlet committed -
2013-04-24 Yannick Moy <moy@adacore.com> * adabkend.adb, ali-util.adb, ali.adb, debug.adb, errout.adb, errout.ads, erroutc.adb, exp_ch3.adb, exp_ch4.adb, exp_ch6.adb, exp_ch7.adb, exp_dbug.adb, exp_util.adb, expander.adb, freeze.adb, gnat1drv.adb, lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads, opt.adb, opt.ads, restrict.adb, sem_aggr.adb, sem_attr.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_eval.adb, sem_prag.adb, sem_res.adb, sem_util.adb: Everything with name 'Alfa' renamed in 'SPARK'. Update comments. Renaming of units with name 'Alfa', renamed with 'SPARK' instead. * exp_alfa.adb: renamed exp_spark.adb. * exp_alfa.ads: renamed exp_spark.ads. * get_alfa.adb: renamed get_spark_xrefs.adb. * get_alfa.ads: renamed get_spark_xrefs.ads. * lib-xref-alfa.adb: renamed lib-xref-spark_specific.adb. * put_alfa.adb: renamed put_spark_xrefs.adb. * put_alfa.ads: renamed put_spark_xrefs.ads. * alfa.adb: renamed spark_xrefs.adb. * alfa.ads: renamed spark_xrefs.ads. * alfa_test.adb: renamed spark_xrefs_test.adb. From-SVN: r198234
Yannick Moy committed -
From-SVN: r198233
Marek Polacek committed -
/cp 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/56970 * init.c (build_offset_ref): Add tsubst_flags_t parameter. * semantics.c (finish_qualified_id_expr): Likewise. (finish_id_expression): Update. * typeck.c (cp_build_addr_expr_1): Likewise. * pt.c (tsubst_qualified_id, resolve_nondeduced_context): Likewise. * cp-tree.h: Update declarations. /testsuite 2013-04-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/56970 * g++.dg/cpp0x/sfinae45.C: New. From-SVN: r198232
Paolo Carlini committed -
2013-04-24 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Document pragma Assume. * sem_prag.adb (Analyze_Pragma, case Assume): Now processed as part of Assert, and no longer requires -gnatd.F From-SVN: r198231
Robert Dewar committed -
2013-04-24 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Document pragma Assert_And_Cut. * sem_prag.adb (Analyze_Pragma, case Assert_And_Cut): Remove S14_Pragma call. From-SVN: r198230
Robert Dewar committed -
2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_aux.adb: Add guard in Available_View. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Depends_In_Decl_Part): Use Find_Related_Subprogram to find the associated subprogram. (Analyze_Global_In_Decl_List): Use Find_Related_Subprogram to find the associated subprogram. (Analyze_Pragma): Use Find_Related_Subprogram to find the associated subprogram. From-SVN: r198229
Arnaud Charlet committed -
2013-04-02 Catherine Moore <clm@codesourcery.com> Chao-ying Fu <fu@mips.com> * config/mips/micromips.md (jraddiusp): New pattern. * config/mips/mips.c (mips_expand_epilogue): Use the JRADDIUSP instruction if possible. Co-Authored-By: Chao-ying Fu <fu@mips.com> From-SVN: r198228
Catherine Moore committed -
2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch6.adb: Remove with and use clause for Sem_Prag. (Freeze_Subprogram): Call Analyze_Subprogram_Contract to analyze the contract of a subprogram. * sem_ch3.adb: Remove with and use clause for Sem_Prag. (Analyze_Declarations): Call Analyze_Subprogram_Contract to analyze the contract of a subprogram. * sem_ch6.adb (Analyze_Subprogram_Contract): New routine. (Check_Subprogram_Contract): Removed. * sem_ch6.ads (Analyze_Subprogram_Contract): New routine. (Check_Subprogram_Contract): Removed. (Expand_Contract_Cases): Add a guard against malformed contract cases. * sem_ch13.adb (Analyze_Aspect_Specifications): Call Decorate_Delayed_Aspect_And_Pragma to decorate aspects Contract_Cases, Depends and Global. Reimplement the analysis of aspect Contract_Cases. (Decorate_Delayed_Aspect_And_Pragma): New routine. * sem_prag.adb (Analyze_Contract_Cases_In_Decl_Part): New routine. (Analyze_CTC_In_Decl_Part): Removed. (Analyze_Pragma): Reimplement the analysis of pragma Contract_Cases. (Analyze_Test_Case_In_Decl_Part): New routine. (Find_Related_Subprogram): New routine. (Requires_Profile_Installation): Add new formal Prag. Update the logic to take into account the origin of the pragma. * sem_prag.ads (Analyze_Contract_Cases_In_Decl_Part): New routine. (Analyze_CTC_In_Decl_Part): Removed. (Analyze_Test_Case_In_Decl_Part): New routine. From-SVN: r198227
Hristian Kirtchev committed -
2013-04-24 Robert Dewar <dewar@adacore.com> * sem_prag.adb (Process_Convention): Move Stdcall tests to Set_Convention_From_Pragma so that they are applied to each entry of a homonym set. (Process_Convention): Don't try to set convention if already set. 2013-04-24 Robert Dewar <dewar@adacore.com> * gnatbind.adb: Minor reformatting. 2013-04-24 Vincent Celier <celier@adacore.com> * clean.adb (Gnatclean): Add the default project search directories in the project search path after scanning the switches on the command line. (Initialize): Do not put the default project search directories in the project search path. * gnatcmd.adb (GNATcmd): Add the default project search directories in the project search path after scanning the switches on the command line. * make.adb (Initialize): Add the default project search directories in the project search path after scanning the switches on the command line. 2013-04-24 Yannick Moy <moy@adacore.com> * restrict.ads (Restriction_Warnings): Initialize with all False value. 2013-04-24 Robert Dewar <dewar@adacore.com> * checks.ads, checks.adb (Predicate_Checks_Suppressed): New function. * exp_util.ads, exp_util.adb (Make_Predicate_Check): Check setting of Predicate_Check. * snames.ads-tmpl (Name_Predicate_Check): New check name. * types.ads (Predicate_Check): New definition. * gnat_rm.texi: Add documentation for Predicate_Check. From-SVN: r198226
Arnaud Charlet committed -
exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): If this is a renaming of predefined equality for an untagged record... 2013-04-24 Ed Schonberg <schonberg@adacore.com> * exp_ch8.adb (Expand_N_Subprogram_Renaming_Declaration): If this is a renaming of predefined equality for an untagged record, add generated body to the freeze actions for the subprogram, to prevent freezing issues when the record has incomplete components. * exp_ch4.adb (Expand_Composite_Equality): If the type is a type without completion, return a predefined comparison instead of just False. This may happen when building the expression for record equality, when some component has a type whose completion has not been seen yet. The operation will be analyzed an expanded after the type has been frozen, at which point all component types will have been completed, or an error reported. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): Do not delay analysis of a Convention aspect. From-SVN: r198225
Ed Schonberg committed -
2013-04-24 Eric Botcazou <ebotcazou@adacore.com> * fe.h (Machine_Overflows_On_Target): New macro and declaration. (Signed_Zeros_On_Target): Likewise. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch6.adb: Add with and use clause for Sem_Prag. (Freeze_Subprogram): Analyze all delayed aspects for a null procedure so that they are available when analyzing the internally-generated _Postconditions routine. * exp_ch13.adb: Remove with and use clause for Sem_Prag. (Expand_N_Freeze_Entity): Move the code that analyzes delayed aspects of null procedures to exp_ch6.Freeze_Subprogram. * sem_prag.adb (Analyze_Abstract_State): Update the check on volatile requirements. 2013-04-24 Bob Duff <duff@adacore.com> * ali-util.ads (Source_Record): New component Stamp_File to record from whence the Stamp came. * ali-util.adb (Set_Source_Table): Set Stamp_File component. * bcheck.adb (Check_Consistency): Print additional information in Verbose_Mode. * gnatbind.adb (Gnatbind): Print additional information in Verbose_Mode. From-SVN: r198224
Arnaud Charlet committed -
2013-04-24 Robert Dewar <dewar@adacore.com> * exp_ch13.adb, sem_prag.adb: Update comments. * sem_ch3.adb, exp_ch9.adb, g-socket.adb, sem_ch13.adb: Minor reformatting. 2013-04-24 Doug Rupp <rupp@adacore.com> * vms_data.ads (/{NO}INHIBIT-EXEC): Document new default behavior. 2013-04-24 Yannick Moy <moy@adacore.com> * sinfo.ads: Minor correction of typo. From-SVN: r198223
Arnaud Charlet committed -
2013-04-24 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb: Create packed array only when expander is active. 2013-04-24 Hristian Kirtchev <kirtchev@adacore.com> * sem_prag.adb (Analyze_Depends_In_Decl_Part): Install the formals only when the context warrants it. (Analyze_Global_In_Decl_List): Install the formals only when the context warrants it. (Requires_Profile_Installation): New routine. 2013-04-24 Ed Schonberg <schonberg@adacore.com> * exp_ch6.adb (Expand_N_Simple_Return_Statement): When the return type is a discriminated private type that does not require use of the secondary stack, a constrained subtype of the underlying type is created to convey the proper object size to the backend. If the return type is originally a private type, the return expression is wrapped in an unchecked_conversion. If the return expression is used subsequently in a call to the postcondition function, this conversion must be undone to prevent a spurious error on the analysis of that call. From-SVN: r198222
Arnaud Charlet committed -
From-SVN: r198221
Alan Modra committed -
dwarf2out.c (gen_enumeration_type_die): Fix HOST_BITS_PER_WIDE_INT dependency behavior in enumeration type DIE generation. 2013-04-24 Julian Brown <julian@codesourcery.com> Chung-Lin Tang <cltang@codesourcery.com> * dwarf2out.c (gen_enumeration_type_die): Fix HOST_BITS_PER_WIDE_INT dependency behavior in enumeration type DIE generation. Add TODO note to comments about future DW_FORM_sdata/udata re-work of related code. Co-Authored-By: Chung-Lin Tang <cltang@codesourcery.com> From-SVN: r198219
Julian Brown committed -
2013-04-24 Richard Biener <rguenther@suse.de> PR testsuite/57050 * gcc.c-torture/execute/pr56982.c: Avoid sigjmp_buf use. From-SVN: r198218
Richard Biener committed -
From-SVN: r198216
GCC Administrator committed
-
- 23 Apr, 2013 7 commits
-
-
This patch extracts approved portions of the hash_table patches to the cxx-conversion branch for files not under gcc/config. Update various hash tables from htab_t to hash_table. Modify types and calls to match. * tree-ssa-coalesce.c'coalesce_list_d.list from htab_t to hash_table. Fold coalesce_pair_map_hash and coalesce_pair_map_eq into new struct coalesce_pair_hasher. Removed struct coalesce_pair_iterator, as did not meet the hash_table iterator interface and it provided no significant code reduction. This leads to a change in the implementation of FOR_EACH_PARTITION_PAIR. * statistics.c'statistics_hashes Fold hash_statistics_eq into new struct stats_counter_hasher. * hash-table.h'hash_table Add documentation. Add nested class iterator and methods to hash_table. Add FOR_EACH_HASH_TABLE_ELEMENT implemented with those iterators. Change uses of FOR_EACH_HTAB_ELEMENT to FOR_EACH_HASH_TABLE_ELEMENT. * tree-ssa-sccvn.c'vn_tables_s.nary Fold vn_nary_op_hash, vn_nary_op_eq into new struct vn_nary_op_hasher. Add typedef vn_nary_op_table_type. Add typedef vn_nary_op_iterator_type. * tree-ssa-sccvn.c'vn_tables_s.phis Fold vn_phi_hash, free_phi into new struct vn_phi_hasher. Add typedef vn_phi_table_type. Add typedef vn_phi_iterator_type. * tree-ssa-sccvn.c'vn_tables_s.references Fold vn_reference_hash, vn_reference_op_eq, free_reference into new struct vn_reference_hasher. Add typedef vn_reference_table_type. Add typedef vn_reference_iterator_type. * tree-ssa-sccvn.c'constant_value_ids Fold vn_constant_hash, vn_constant_eq into new struct vn_constant_hasher. * tree-into-ssa.c'var_infos Fold var_info_hash, var_info_eq into new struct var_info_hasher. * tree-vectorizer.h'_loop_vec_info::peeling_htab * tree-vectorizer.h New struct peel_info_hasher. * tree-vect-loop.c Update dependent calls and types to match. * tree-vect-data-refs.c Fold vect_peeling_hash and vect_peeling_hash_eq into struct peel_info_hasher. * tree-ssa-reassoc.c'undistribute_ops_list::ctable Fold oecount_hash and oecount_eq into new struct oecount_hasher. * tree-ssa-loop-im.c'memory_accesses.refs Fold memref_hash and memref_eq into new struct mem_ref_hasher. Tested on x86_64. Index: gcc/ChangeLog 2013-04-23 Lawrence Crowl <crowl@google.com> * Makefile.in: Update as needed below. * hash-table.h (class hash_table): Correct many methods with parameter types compare_type to the correct value_type. (Correct code was unlikely to notice the change.) (hash_table::elements_with_deleted) New. (class hashtable::iterator): New. (hashtable::begin()): New. (hashtable::end()): New. (FOR_EACH_HASH_TABLE_ELEMENT): New. * statistics.c (statistics_hashes): Change type to hash_table. Update dependent calls and types. * tree-into-ssa.c (var_infos): Change type to hash_table. Update dependent calls and types. * tree-ssa-coalesce.c (struct coalesce_list_d.list): Change type to hash_table. Update dependent calls and types. * tree-ssa-loop-im.c (struct mem_ref.refs): Change type to hash_table. Update dependent calls and types. * tree-ssa-reassoc.c (undistribute_ops_list::ctable): Change type to hash_table. Update dependent calls and types. * tree-ssa-sccvn.c (vn_tables_s::nary): Change type to hash_table. Update dependent calls and types. (vn_tables_s::phis): Likewise. (vn_tables_s::references): Likewise. * tree-ssa-sccvn.h (vn_nary_op_eq): Update parameter and return types. (vn_reference_eq): Update parameter and return types. * tree-ssa-structalias.c (pointer_equiv_class_table): Change type to hash_table. Update dependent calls and types. (location_equiv_class_table): Likewise. * tree-vect-data-refs.c: Consequential changes for making peeling a hash_table. * tree-vect-loop.c (new_loop_vec_info): Dependent hash_table update. (destroy_loop_vec_info): Dependent hash_table update. * tree-vectorizer.h (peeling_htab): Change type to hash_table. Update dependent calls and types. From-SVN: r198213
Lawrence Crowl committed -
PR target/55445 * raise-gcc.c (__SEH__): Additional check that SjLj isn't active. From-SVN: r198205
Kai Tietz committed -
lra-assigns.c (find_hard_regno_for): Use lra_reg_val_equal_p to check the register content is equal or not. 2013-04-23 Shiva Chen <shiva0217@gmail.com> * lra-assigns.c (find_hard_regno_for): Use lra_reg_val_equal_p to check the register content is equal or not. * lra-constraints.c (match_reload): Use lra_assign_reg_val to assign register content record. * lra-eliminations.c (update_reg_eliminate): Use lra_update_reg_val_offset to update register content offset. * lra-int.h (struct lra_reg): Add offset member. (lra_reg_val_equal_p): New static inline function. (lra_update_reg_val_offset): New static inline function. (lra_assign_reg_val): New static inline function. * lra.c (lra_create_new_reg): Use lra_assign_reg_val to assign register content record. (initialize_lra_reg_info_element): Initial offset to zero. From-SVN: r198204
Shiva Chen committed -
2013-04-23 Catherine Moore <clm@codesourcery.com> * config/mips/mips.md (*movhi_internal, *movqi_internal): New operands. Record compression. From-SVN: r198202
Catherine Moore committed -
From-SVN: r198201
Xinliang David Li committed -
2013-04-23 Eric Botcazou <ebotcazou@adacore.com> Pascal Obry <obry@adacore.com> * gcc-interface/Makefile.in (targ): Fix target name check. (../../gnatmake$(exeext)): Add '+' for LTO. (../../gnatlink$(exeext)): Likewise. Co-Authored-By: Pascal Obry <obry@adacore.com> From-SVN: r198200
Eric Botcazou committed -
From-SVN: r198199
Arnaud Charlet committed
-