- 21 Apr, 2016 3 commits
-
-
2016-04-21 Javier Miranda <miranda@adacore.com> * frontend.adb: Update call to Unnest_Subprograms. * exp_ch6.ads, exp_ch6.adb, exp_unst.ads, exp_unst.adb (Unnest_Subprograms): Moved to package exp_unst. * exp_unst.ads (Unnest_Subprogram): Moved to the body of the package. * exp_dbug.adb (Qualify_Entity_Name): Enable qualification of enumeration literals when generating C code. From-SVN: r235303
Javier Miranda committed -
2016-04-21 Javier Miranda <miranda@adacore.com> * frontend.adb: Remove call to initialize Exp_Ch6. * exp_ch6.ads, exp_ch6.adb (Initialize): removed. (Unest_Entry/Unest_Bodies): Removed. (Unnest_Subprograms): Code cleanup. 2016-04-21 Arnaud Charlet <charlet@adacore.com> * set_targ.adb (Read_Target_Dependent_Values): close target description file once its contents is read. * s-os_lib.adb (Non_Blocking_Spawn, version with Stdout_File and Stderr_File): Close local file descriptors before spawning child process. * exp_util.adb (Containing_Package_With_Ext_Axioms): Limit scope of local variables to make the code easier to understand and avoid duplicated calls to Parent and Generic_Parent. From-SVN: r235302
Arnaud Charlet committed -
From-SVN: r235301
GCC Administrator committed
-
- 20 Apr, 2016 37 commits
-
-
re PR c++/55635 (Deallocation function ("operator delete") not called when destructor throws exception) cp/ PR c++/55635 * init.c (build_vec_delete_1): Protect operator delete call in try finally. (build_delete): Likewise. * optimize.c (build_delete_destructor_body): Likewise. testsuite/ PR c++/55635 * g++.dg/eh/delete1.C: New. From-SVN: r235297
Nathan Sidwell committed -
Since avx256-unaligned-store-2.c scans typeless SSE stores, add -mtune-ctrl=sse_typeless_stores to enable typeless SSE stores. * gcc.target/i386/avx256-unaligned-store-2.c: Add -mtune-ctrl=sse_typeless_stores. From-SVN: r235296
H.J. Lu committed -
Since avx_loadups256 and sse_loadups have been replaced by movv8sf_internal and movv4sf_internal, respectively, we need to scan movv8sf_internal and movv4sf_internal for load. * gcc.target/i386/avx256-unaligned-load-1.c: Update load scan. From-SVN: r235295
H.J. Lu committed -
PR tree-optimization/69489 * tree-if-conv.c (phi_convertible_by_degenerating_args): New. (if_convertible_phi_p): Call phi_convertible_by_degenerating_args. Revise dump message. (if_convertible_bb_p): Remove check on edge count of basic block's predecessors. gcc/testsuite/ChangeLog PR tree-optimization/69489 * gcc.dg/tree-ssa/ifc-pr69489-2.c: New test. From-SVN: r235292
Bin Cheng committed -
Fix PR c++/69363 gcc/c-family/ PR c++/69363 * c-cilkplus.c (c_finish_cilk_clauses): Remove function. * c-common.h (c_finish_cilk_clauses): Remove declaration. gcc/c/ PR c++/69363 * c-parser.c (c_parser_cilk_all_clauses): Use c_finish_omp_clauses instead of c_finish_cilk_clauses. * c-tree.h (c_finish_omp_clauses): Add new default argument. * c-typeck.c (c_finish_omp_clauses): Add new argument. Allow floating-point variables in the linear clause for Cilk Plus. gcc/cp/ PR c++/69363 * cp-tree.h (finish_omp_clauses): Add new default argument. * parser.c (cp_parser_cilk_simd_all_clauses): Use finish_omp_clauses instead of c_finish_cilk_clauses. * semantics.c (finish_omp_clauses): Add new argument. Allow floating-point variables in the linear clause for Cilk Plus. gcc/testsuite/ PR c++/69363 * c-c++-common/cilk-plus/PS/clauses3.c: Adjust dg-error string. * c-c++-common/cilk-plus/PS/clauses4.c: New test. * c-c++-common/cilk-plus/PS/pr69363.c: New test. From-SVN: r235290
Ilya Verbin committed -
PR tree-optimization/56625 PR tree-optimization/69489 * tree-data-ref.h (DR_INNERMOST): New macro. * tree-if-conv.c (innermost_loop_behavior_hash): New class for hashing struct innermost_loop_behavior. (ref_DR_map): Remove. (innermost_DR_map): New map. (baseref_DR_map): Revise comment. (hash_memrefs_baserefs_and_store_DRs_read_written_info): Store DR to innermost_DR_map accroding to its innermost loop behavior. (ifcvt_memrefs_wont_trap): Get DR from innermost_DR_map according to its innermost loop behavior. (if_convertible_loop_p_1): Remove intialization for ref_DR_map. Add initialization for innermost_DR_map. Record memory reference in DR_BASE_ADDRESS if the reference is compound one or it doesn't have innermost loop behavior. (if_convertible_loop_p): Remove release for ref_DR_map. Release innermost_DR_map. gcc/testsuite/ChangeLog PR tree-optimization/56625 PR tree-optimization/69489 * gcc.dg/vect/pr56625.c: New test. * gcc.dg/tree-ssa/ifc-pr69489-1.c: New test. From-SVN: r235289
Bin Cheng committed -
* semantics.c (finish_compound_lteral): Don't wrap VECTOR_TYPEs in a TARGET_EXPR. From-SVN: r235288
Nathan Sidwell committed -
* config/i386/i386.md (*lea<mode>_general_1): Rename from *lea_general_1. Use explicit SWI12 mode interator. (*lea<mode>_general_2): Rename from *lea_general_2. Use explicit SWI12 mode interator. (*lea<mode>_general_3): Rename from *lea_general_3. Use explicit SWI12 mode interator. (*lea<SWI12:mode>_general_4): Split from *lea_general_4. Use explicit SWI12 mode interator. (*lea<SWI48:mode>_general_4): Split from *lea_general_4. Use explicit SWI48 mode interator. From-SVN: r235286
Uros Bizjak committed -
Since mov<mode>_internal patterns handle both aligned/unaligned load and store, we can simplify ix86_avx256_split_vector_move_misalign and ix86_expand_vector_move_misalign. * config/i386/i386.c (ix86_avx256_split_vector_move_misalign): Short-cut unaligned load and store cases. Handle all integer vector modes. (ix86_expand_vector_move_misalign): Short-cut unaligned load and store cases. Call ix86_avx256_split_vector_move_misalign directly without checking mode class. From-SVN: r235283
H.J. Lu committed -
2016-04-20 Andrew Pinski <apinski@cavium.com> Kyrylo Tkachov <kyrylo.tkachov@arm.com> PR target/64971 * config/aarch64/aarch64.md (sibcall): Force call address to be DImode for ILP32. (sibcall_value): Likewise. * gcc.c-torture/compile/pr37433-1.c: New testcase. Co-Authored-By: Kyrylo Tkachov <kyrylo.tkachov@arm.com> From-SVN: r235281
Andrew Pinski committed -
* doc/invoke.texi: Replace -skip-rax-setup with -mskip-rax-setup. From-SVN: r235275
H.J. Lu committed -
2016-04-20 Richard Biener <rguenther@suse.de> * gimple-match.h (maybe_build_generic_op): Adjust prototype. * gimple-match-head.c (maybe_build_generic_op): Pass all ops by reference, clear op1 and op2 when GENERICizing BIT_FIELD_REF. (maybe_push_res_to_seq): Adjust. * gimple-fold.c (maybe_build_generic_op): Likewise. From-SVN: r235274
Richard Biener committed -
* tree-if-conv.c (is_false_predicate): For NULL_TREE return false rather than true. From-SVN: r235272
Marek Polacek committed -
From-SVN: r235271
Arnaud Charlet committed -
gcc/ * config/i386/sse.md (vec_unpacks_lo_hi): Always use kmovw to support AVX512F target. From-SVN: r235270
Ilya Enkovich committed -
* tree-scalar-evolution.c (interpret_rhs_expr): Handle BIT_AND_EXPR. * gcc.dg/tree-ssa/scev-11.c: New test. * gcc.dg/tree-ssa/scev-12.c: New test. From-SVN: r235269
Bin Cheng committed -
2016-04-20 Bob Duff <duff@adacore.com> * s-os_lib.ads: Minor comment fix. 2016-04-20 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Assignment_Statement): Do no generate a discriminant check for a type whose partial view has unknown discriminants when the full view has discriminants with defaults. 2016-04-20 Javier Miranda <miranda@adacore.com> * exp_util.adb (Remove_Side_Effects): When generating C code remove side effect of type conversion of access to unconstrained array type. (Side_Effect_Free): Return false for the type conversion of access to unconstrained array type when generating C code. * sem_res.adb (Resolved_Type_Conversion): Remove side effects of access to unconstrained array type conversion when generating C code. 2016-04-20 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Build_Predicate_Function_Declaration): New function, to construct the declaration of a predicate function at the end of the current declarative part rather than at the (possibly later) freeze point of the type. This also allows uses of a type with predicates in instantiations elsewhere. (Resolve_Aspect_Expression): New procedure to detect visiblity errors in aspect expressions, at the end of the declarative part that includes the type declaration. * sem_ch3.adb (Complete_Private_Subtype): Propagate properly the predicate function from private to full view. * einfo.adb (Predicate_Function): Refine search for predicate function when type has a full view and predicate function may be defined on either view. 2016-04-20 Javier Miranda <miranda@adacore.com> * frontend.adb: Passing the root of the tree to Unnest_Subprograms(). * exp_ch6.adb (Expand_N_Subprogram_Body): Remove code that took care of adding subprograms to the Unest_Bodies table since performing such action too early disables the ability to process generic instantiations. (Unnest_Subprograms): Adding parameter. (Search_Unnesting_Subprograms): New subprogram. * exp_ch6.ads (Unnest_Subrograms): Update documentation. From-SVN: r235268
Arnaud Charlet committed -
2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb, freeze.adb, sem_util.adb: Minor reformatting. 2016-04-20 Ed Schonberg <schonberg@adacore.com> * exp_unst.adb (Check_Static_Type): For a private type, check full view. 2016-04-20 Ed Schonberg <schonberg@adacore.com> * sem_attr.adb (Check_Type): Reject an attribute reference in an aspect expression, when the prefix of the reference is the current instance of the type to which the aspect applies. From-SVN: r235267
Arnaud Charlet committed -
2016-04-20 Bob Duff <duff@adacore.com> * sem_ch6.adb (Enter_Overloaded_Entity): Do not warn about hiding unless we're actually hiding something. The previous code would (for example) warn about a "<" on a record type because it incorrectly thought it was hiding the "<" on Boolean in Standard. We need to check that the homonym S is in fact a homograph of a predefined operator. 2016-04-20 Ed Schonberg <schonberg@adacore.com> * exp_util.ads, exp_util.adb (Build_Procedure_Form): Moved here from exp_ch6.adb, for use in SPARK_To_C mode when creating the procedure equivalent to a function returning an array, when this construction is deferred to the freeze point of the function. * sem_util.adb (Is_Unchecked_Conversion_Instance): Include a function that renames an instance of Unchecked_Conversion. * freeze.adb (Freeze_Subprogram): Generate the proper procedure declaration for a function returning an array. * exp_ch6.adb (Build_Procedure_Form): Moved to exp_util. From-SVN: r235266
Arnaud Charlet committed -
sem_util.ads, [...] (Is_Expanded_Priority_Attribute): New predicate to determine that in a context with full run-time... 2016-04-20 Ed Schonberg <schonberg@adacore.com> * sem_util.ads, sem_util.adb (Is_Expanded_Priority_Attribute): New predicate to determine that in a context with full run-time, a function call is an expansion of a reference to attribute Priority. * sem_ch5.adb (Analyze_Function_Call): use it. * exp_ch5.adb (Expand_N_Subprogram_Call): use it. From-SVN: r235265
Ed Schonberg committed -
2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * einfo.adb Flag286 is now used as Is_Exception_Handler. (Is_Exception_Handler): New routine. (Set_Is_Exception_Handler): New routine. (Write_Entity_Flags): Output the status of Is_Exception_Handler. * einfo.ads New attribute Is_Exception_Handler along with occurrences in entities. (Is_Exception_Handler): New routine along with pragma Inline. (Set_Is_Exception_Handler): New routine along with pragma Inline. * exp_ch7.adb (Make_Transient_Block): Ignore blocks generated for exception handlers with a choice parameter. * sem_ch11.adb (Analyze_Exception_Handlers): Mark the scope generated for a choice parameter as an exception handler. 2016-04-20 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Build_Derived_Access_Type): Remove dead code. (Constrain_Discriminated_Type): In an instance, if the type has unknown discriminants, use its full view. (Process_Subtype): Check that the base type is private before adding subtype to Private_Dependents list. 2016-04-20 Bob Duff <duff@adacore.com> * sem_ch13.adb: Minor comment fix. From-SVN: r235264
Arnaud Charlet committed -
2016-04-20 Yannick Moy <moy@adacore.com> * sem_ch4.adb: Fix typos in comments. * sem_res.adb (Resolve_Case_Expression): Fix type of case alternatives. From-SVN: r235263
Yannick Moy committed -
From-SVN: r235262
Arnaud Charlet committed -
2016-04-20 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Analyze_Selected_Component): A reference to the current instance of a task type is legal if the prefix is an expression of that task type and the selector is an entry or entry family. 2016-04-20 Arnaud Charlet <charlet@adacore.com> * a-cfdlli.ads (List): Type is no longer tagged, not needed. Move varsize field at the end for efficiency. From-SVN: r235261
Arnaud Charlet committed -
2016-04-20 Vincent Celier <celier@adacore.com> * gnatcmd.adb: Do not invoke gprls when the invocation of "gnat ls" includes the switch -V. * clean.adb: "<target>-gnatclean -P" now calls "gprclean --target=<target>" * make.adb: "<target>-gnatmake -P" now calls "gprbuild --target=<target>" 2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch12.adb (Qualify_Type): Do not perform partial qualification when the immediate scope is a generic unit. From-SVN: r235260
Arnaud Charlet committed -
2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * exp_unst.adb: Minor reformatting. From-SVN: r235259
Hristian Kirtchev committed -
2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch4.adb (Expand_Allocator_Expression): Ensure that the tag assignment and adjustment preceed the accessibility check. * exp_ch7.adb (Is_Subprogram_Call): Reimplemented. 2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * exp_prag.adb (Expand_Attributes): Ensure that the temporary used to capture the value of attribute 'Old's prefix is properly initialized. 2016-04-20 Javier Miranda <miranda@adacore.com> * exp_unst.ads, exp_unst.adb (Get_Level, Subp_Index): Moved to library level. From-SVN: r235258
Arnaud Charlet committed -
2016-04-20 Arnaud Charlet <charlet@adacore.com> * sem_ch9.adb (Analyze_Task_Type_Declaration): Shut down warning in codepeer mode. 2016-04-20 Vincent Celier <celier@adacore.com> * make.adb: Code cleanup. 2016-04-20 Arnaud Charlet <charlet@adacore.com> * exp_ch4.adb (Expand_Allocator_Expression): Help C code generation. From-SVN: r235257
Arnaud Charlet committed -
2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch12.adb (Copy_Generic_Node): Handle the special qualification installed for universal literals that act as operands in binary or unary operators. (Qualify_Operand): Mark the qualification to signal the instantiation mechanism how to handle global reference propagation. * sinfo.adb (Is_Qualified_Universal_Literal): New routine. (Set_Is_Qualified_Universal_Literal): New routine. * sinfo.ads New attribute Is_Qualified_Universal_Literal along with occurrences in nodes. (Is_Qualified_Universal_Literal): New routine along with pragma Inline. (Set_Is_Qualified_Universal_Literal): New routine along with pragma Inline. 2016-04-20 Ed Schonberg <schonberg@adacore.com> * sem.adb (Do_Analyze): Save and restore Style_Max_Line_Length so that the corresponding checks are preserved across compilations that include System.Constants in their context. 2016-04-20 Gary Dismukes <dismukes@adacore.com> * sem_type.adb: Minor typo fix and reformatting. * a-conhel.ads: Update comment. 2016-04-20 Bob Duff <duff@adacore.com> * a-cihama.adb, a-cihase.adb, a-coinve.adb (Copy): Rewrite the code so it doesn't trigger an "uninit var" warning. From-SVN: r235256
Arnaud Charlet committed -
2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * sem_attr.ads Add new table Universal_Type_Attribute. * sem_util.adb (Yields_Universal_Type): Use a table lookup when checking attributes. 2016-04-20 Ed Schonberg <schonberg@adacore.com> * exp_aggr.adb (Init_Stored_Discriminants, Init_Visible_Discriminants): New procedures, subsidiary of Build_Record_Aggr_Code, to handle properly the construction of aggregates for a derived type that constrains some parent discriminants and renames others. From-SVN: r235255
Arnaud Charlet committed -
2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch12.adb (Qualify_Universal_Operands): New routine. (Save_References_In_Operator): Add explicit qualifications in the generic template for all operands of universal type. * sem_type.adb (Disambiguate): Update the call to Matches. (Matches): Reimplemented. * sem_util.ads, sem_util.adb (Yields_Universal_Type): New routine. From-SVN: r235254
Hristian Kirtchev committed -
2016-04-20 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Rep_Item_Too_Late): Better error message for an illegal aspect that freezes the entity to which it applies. 2016-04-20 Bob Duff <duff@adacore.com> * a-stwibo.ads, a-stzbou.ads ("="): Add overriding keyword before function to avoid crash when compiler is called with -gnatyO (check overriding indicators). 2016-04-20 Ed Schonberg <schonberg@adacore.com> * sem_prag.adb (Analyze_Pragma, case Check_Policy): If this is a configuration pragma and it uses the ARG syntax, insert the rewritten pragma after the current one rather than using Insert_Actions. 2016-04-20 Arnaud Charlet <charlet@adacore.com> * exp_aggr.adb (Backend_Processing_Possible): Add handling of C back-end. From-SVN: r235253
Arnaud Charlet committed -
2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * s-imgllu.adb, sem_util.adb, s-imgint.adb, s-imguns.adb, s-imglli.adb: Minor reformatting. From-SVN: r235251
Hristian Kirtchev committed -
PR tree-optimization/70725 * tree-if-conv.c (is_false_predicate): New function. (predicate_mem_writes): Use it. * gcc.dg/pr70725.c: New test. From-SVN: r235250
Marek Polacek committed -
sem_res.adb (Rewrite_Renamed_Operator): Do not rewrite the renamed operator when the associated node appears within a... 2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * sem_res.adb (Rewrite_Renamed_Operator): Do not rewrite the renamed operator when the associated node appears within a pre/postcondition. * sem_util.ads, sem_util.adb (In_Pre_Post_Condition): New routine. From-SVN: r235249
Hristian Kirtchev committed -
2016-04-20 Yannick Moy <moy@adacore.com> * osint.adb (Relocate_Path): Fix test when Path is shorter than Prefix. * einfo.adb (Set_Overridden_Operation): Add assertion. * sem_util.adb (Unique_Entity): for renaming-as-body return the spec entity. 2016-04-20 Javier Miranda <miranda@adacore.com> * exp_unst.adb (Append_Unique_Call): New subprogram. (Unnest_Subprogram): Replace the unique occurrence of Call.Append() by Append_Unique_Call() which protects us from adding to the Calls table duplicated entries. 2016-04-20 Arnaud Charlet <charlet@adacore.com> * exp_attr.adb (Is_GCC_Target): Fix for C backend. * xref_lib.ads (Dependencies_Tables): instantiate Table package with types that guarantee its safe use. * s-imgllu.adb, s-imgint.adb, s-imguns.adb, s-imglli.adb: Avoid nested procedures. From-SVN: r235248
Arnaud Charlet committed -
exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Valid]): Disable expansion when generating C code. 2016-04-20 Arnaud Charlet <charlet@adacore.com> * exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Valid]): Disable expansion when generating C code. * sinfo.ads, inline.ads: Minor editing. From-SVN: r235247
Arnaud Charlet committed
-