Daily bump.
authorGCC Administrator <gccadmin@gcc.gnu.org>
Thu, 6 May 2021 00:16:37 +0000 (00:16 +0000)
committerGCC Administrator <gccadmin@gcc.gnu.org>
Thu, 6 May 2021 00:16:37 +0000 (00:16 +0000)
gcc/ChangeLog
gcc/DATESTAMP
gcc/ada/ChangeLog
gcc/fortran/ChangeLog
gcc/testsuite/ChangeLog
libcc1/ChangeLog
libgfortran/ChangeLog
libstdc++-v3/ChangeLog

index 7b69f9d..d1cc60a 100644 (file)
@@ -1,3 +1,99 @@
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR target/100402
+       * config/i386/i386.c (ix86_compute_frame_layout): For a SEH target,
+       always return the establisher frame for __builtin_frame_address (0).
+
+2021-05-05  Ivan Sorokin  <vanyacpp@gmail.com>
+
+       PR target/91400
+       * config/i386/i386-builtins.c (ix86_cpu_model_type_node): New.
+       (ix86_cpu_model_var): Likewise.
+       (ix86_cpu_features2_type_node): Likewise.
+       (ix86_cpu_features2_var): Likewise.
+       (fold_builtin_cpu): Cache __cpu_model and __cpu_features2 with
+       their types.
+
+2021-05-05  Martin Sebor  <msebor@redhat.com>
+
+       * passes.def (pass_warn_printf): Run after SSA.
+
+2021-05-05  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>
+
+       * config/arm/neon.md (neon_vtst_combine<mode>): New pattern.
+       * config/arm/predicates.md (minus_one_operand): New predicate.
+
+2021-05-05  Jeff Law  <jlaw@tachyum.com>
+
+       * config/avr/avr.md: Remove references to CC_STATUS_INIT.
+
+2021-05-05  Stefan Schulze Frielinghaus  <stefansf@linux.ibm.com>
+
+       PR rtl-optimization/100263
+       * postreload.c (move2add_valid_value_p): Ensure register can
+       change mode.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR rtl-optimization/100411
+       * cfgcleanup.c (try_crossjump_to_edge): Also skip end of prologue
+       and beginning of function markers.
+
+2021-05-05  Jeff Law  <jlaw@tachyum.com>
+
+       * config/cr16/cr16.h (NOTICE_UPDATE_CC): Remove.
+       * config/cr16/cr16.c (notice_update_cc): Remove.
+       * config/cr16/cr16-protos.h (notice_update_cc): Remove.
+
+2021-05-05  Uroš Bizjak  <ubizjak@gmail.com>
+
+       PR target/98218
+       * config/i386/i386-expand.c (ix86_expand_int_sse_cmp):
+       Handle V8QI, V4HI and V2SI modes.
+       * config/i386/i386.c (ix86_build_const_vector): Handle V2SImode.
+       (ix86_build_signbit_mask): Ditto.
+       * config/i386/mmx.md (MMXMODE14): New mode iterator.
+       (<smaxmin:code><MMXMODE14:mode>3): New expander.
+       (*mmx_<smaxmin:code><MMXMODE14:mode>3): New insn pattern.
+       (<umaxmin:code><MMXMODE24:mode>3): New expander.
+       (*mmx_<umaxmin:code><MMXMODE24:mode>3): New insn pattern.
+       (vec_cmp<MMXMODEI:mode><MMXMODEI:mode>): New expander.
+       (vec_cmpu<MMXMODEI:mode><MMXMODEI:mode>): Ditto.
+       (vcond<MMXMODEI:mode><MMXMODEI:mode>): Ditto.
+       (vcondu<MMXMODEI:mode><MMXMODEI:mode>): Ditto.
+       (vcond_mask_<MMXMODEI:mode><MMXMODEI:mode>): Ditto.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * dwarf2out.c (loc_list_from_tree_1) <DECL>: During early DWARF, do
+       not expand the VALUE_EXPR of variables put in the non-local frame.
+       * gimplify.c (gimplify_type_sizes) <RECORD_TYPE>: If the type is not
+       to be ignored for debug info, ensure its variable offsets are not.
+
+2021-05-05  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/79333
+       * tree-ssa-sccvn.c (eliminate_dom_walker::eliminate_stmt):
+       Fold stmt following SSA edges.
+
+2021-05-05  Richard Biener  <rguenther@suse.de>
+
+       PR middle-end/100394
+       * calls.c (expand_call): Preserve possibly throwing calls.
+       * cfgexpand.c (expand_call_stmt): When a call can throw signal
+       RTL expansion there are side-effects.
+       * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Simplify,
+       mark all possibly throwing stmts necessary unless we can elide
+       dead EH.
+       * tree-ssa-dse.c (pass_dse::execute): Preserve exceptions unless
+       -fdelete-dead-exceptions.
+       * tree.h (DECL_PURE_P): Add note about exceptions.
+
+2021-05-05  Alexandre Oliva  <oliva@adacore.com>
+
+       * config/i386/vxworks.h (DBX_REGISTER_NUMBER): Make it
+       unconditional.
+
 2021-05-04  David Edelsohn  <dje.gcc@gmail.com>
 
        * config/rs6000/rs6000-call.c (rs6000_output_mi_thunk): Use
index eb085aa..8e159d5 100644 (file)
@@ -1 +1 @@
-20210505
+20210506
index adcf2f5..534ab11 100644 (file)
@@ -1,3 +1,404 @@
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_attr.adb (Expand_N_Attribute_Reference): Fix expansion of
+       attributes Input and Output for unchecked unions.
+       * sem_case.ads: Fix typo "disriminant" and refill comment.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_attr.adb, exp_ch9.adb, sem_ch3.adb: Reuse
+       Has_Defaulted_Discriminants.
+       * sem_ch4.adb (Analyze_Allocator): Reuse
+       Has_Defaulted_Discriminants (after reordering conjuncts); remove
+       redundant IF statement, whose condition is implied by
+       Has_Defaulted_Discriminants.
+       * sem_util.adb (Has_Defaulted_Discriminants): Has_Discriminants
+       implies that the First_Discriminant is present.
+       (Is_Fully_Initialized_Type): Reuse Has_Defaulted_Discriminants.
+
+2021-05-05  Justin Squirek  <squirek@adacore.com>
+
+       * exp_ch6.adb (Expand_Call_Helper): Add condition to check for
+       expanded actuals and remove dead code.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_ch4.adb (Has_Unconstrained_UU_Component): Rewrite to
+       follow the Ada RM grammar.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_ch4.adb (User_Defined_Primitive_Equality_Op): Refine type
+       of a local variable.
+       * exp_dbug.adb (Scope_Contains): Refine all types from Node_Id
+       to Entity_Id; rename parameters to match those of the
+       Scope_Within routine (which is similar but not the same); also,
+       simplify an OR ELSE into a membership test.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_ch4.adb (Component_Is_Unconstrained_UU): Detect both
+       qualified and unqualified names of unchecked union components.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_ch4.adb (Variant_Is_Unconstrained_UU): Remove redundant
+       check for empty list.
+       * exp_disp.adb (Find_Entry_Index): Simplify by removing
+       redundant check and counting from zero; fix type of a local
+       variable.
+       * sem_ch12.adb (Save_Global_Descendant): Remove an unnecessary
+       special-case for empty lists.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_ch4.adb (Apply_Accessibility_Check): Skip a statically
+       true condition in expanded raise statement.
+
+2021-05-05  Bob Duff  <duff@adacore.com>
+
+       * libgnat/s-os_lib.adb (Missed_Drive_Letter): Simplify the code.
+
+2021-05-05  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch5.adb (Analyze_Assignment): Do not emit the warning that
+       a previous value of the target object is useless if the
+       right-hand side of the assignment includes target names.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * exp_imgv.adb: Add with/use clauses for Targparm.
+       (Build_Enumeration_Image_Tables): Set type of Threshold to Nat and
+       initialize it to Nat'Last if the type is local and the target does
+       not support descriptors.  Adjust Threshold_For_Size similarly.
+       (Expand_Value_Attribute): Minor tweaks.
+
+2021-05-05  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+       * exp_ch7.adb (Expand_N_Package_Body): Add CUDA init call.
+       * sem_ch7.adb (Analyze_Package_Body_Helper): Remove CUDA init
+       call.
+
+2021-05-05  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+       * par-ch5.adb (P_Condition): Check if expression is declare
+       expression.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * make.adb (Make): Use GNAT.Ctrl_C.Install_Handler instead of a
+       custom imported procedure.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * exp_imgv.adb (Is_User_Defined_Enumeration_Type): Delete.
+       (Expand_Image_Attribute): Move inline expansion into normal flow of
+       control, move down declarations and remove superfluous processing.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * libgnat/g-alleve.adb (Bit_Operation): Now a not-null type.
+       * libgnat/g-sechas.adb (Fill_Buffer_Access): Likewise.
+       * libgnat/s-dwalin.adb (Callback): Likewise.
+
+2021-05-05  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+       * exp_util.adb (Is_Possibly_Unaligned_Object): Remove commented
+       code.
+
+2021-05-05  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_ch3.adb (Find_Type_Of_Object):  When In_Spec_Expression is
+       set and the object declaration generates a subtype indication,
+       build the corresponding subtype declaration and place it in tree
+       without the use of Insert_Actions, which is disabled in this
+       context.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * debug.adb (d_x): Document extended usage.
+       * exp_imgv.adb (Expand_Standard_Boolean_Image): New procedure.
+       (Expand_Image_Attribute): Call it to expand in line the attribute
+       for standard boolean by default.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * debug.adb (d_x): Document new usage.
+       * exp_imgv.adb (Expand_User_Defined_Enumeration_Image): Add Typ
+       parameter and use it throughout the processing.
+       (Expand_Image_Attribute): Retrieve the underlying type of the
+       prefix and use the inline expansion for user-defined enumeration
+       types with a literal string by default.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * libgnat/s-dorepr.adb (Split): Declare a per-size temporary.
+       Add pragma Annotate.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_ch4.adb, sem_ch13.adb, sem_eval.adb, sem_res.adb: Remove
+       redundant calls to UI_From_Int.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * exp_imgv.ads (Build_Enumeration_Image_Tables): Adjust comment.
+       * exp_imgv.adb (Build_Enumeration_Image_Tables): Add the
+       declaration nodes of the 4 tables to the declaration list of the
+       function body.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-imagen, s-imen16,
+       s-imen32, s-imenu8, s-pehage, s-valuen, s-vaen16, s-vaen32 and
+       s-vaenu8.  Remove s-imenne, s-imgenu and s-valenu.
+       * debug.adb (d_h): Document new usage.
+       * einfo.ads (Lit_Hash): New attribute for enumeration types.
+       (Set_Lit_Hash): Declare.
+       * einfo.adb (Lit_Hash): New function.
+       (Set_Lit_Hash): New procedure.
+       (Write_Field21_Name): Print Lit_Hash for Enumeration_Kind.
+       * exp_imgv.ads (Build_Enumeration_Image_Tables): Fix description
+       and document the hash function and its tables.
+       * exp_imgv.adb: Add with/use clauses for Debug.  Add with clause
+       for System.Perfect_Hash_Generators.
+       (Append_Table_To): New helper routine.
+       (Build_Enumeration_Image_Tables): Call it to build the tables.
+       In the main unit, register the literals with the hash generator.
+       If they are sufficiently many and -gnatd_h is not passed, generate
+       a perfect hash function and its tables; otherwise, generate a dummy
+       hash function.  For the other units, generate only the declaration.
+       In all cases, set Lit_Hash to the entity of the function, if any.
+       (Expand_Value_Attribute): Pass the 'Unrestricted_Access of Lit_Hash,
+       if any, as third argument to the Value_Enumeration_NN function.
+       * gnat1drv.adb (Adjust_Global_Switches): force simpler implementation
+       of 'Value in CodePeer_Mode.
+       * lib.ads (Synchronize_Serial_Number): Add SN parameter.
+       * lib.adb (Synchronize_Serial_Number): Assert that it is larger than
+       the serial number of the current unit and set the latter to it only
+       in this case.
+       * rtsfind.ads (RTU_Id): Add System_Img_Enum_8, System_Img_Enum_16,
+       System_Img_Enum_32, System_Val_Enum_8, System_Val_Enum_16 and
+       System_Val_Enum_32.  Remove System_Img_Enum, System_Img_Enum_New
+       and System_Val_Enum.
+       * sem_attr.adb (Analyze_Access_Attribute): Do not flag a compiler
+       generated Unrestricted_Access attribute as illegal in a declare
+       expression.
+       (RE_Unit_Table): Adjust to above changes.
+       * libgnat/g-heasor.ads: Add pragma Compiler_Unit_Warning.
+       * libgnat/g-table.ads: Likewise.
+       * libgnat/g-pehage.ads: Add with clause and local renaming for
+       System.Perfect_Hash_Generators.
+       (Optimization): Turn into derived type.
+       (Verbose): Turn into renaming.
+       (Too_Many_Tries): Likewise.
+       (Table_Name): Move to System.Perfect_Hash_Generators.
+       (Define): Likewise.
+       (Value): Likewise.
+       * libgnat/g-pehage.adb: Remove with clause for Ada.Directories,
+       GNAT.Heap_Sort_G and GNAT.Table.  Move bulk of implementation
+       to System.Perfect_Hash_Generators, only keep the output part.
+       * libgnat/s-imagen.ads: New generic unit.
+       * libgnat/s-imagen.adb: New body.
+       * libgnat/s-imen16.ads: New unit.
+       * libgnat/s-imen32.ads: Likewise.
+       * libgnat/s-imenu8.ads: Likewise.
+       * libgnat/s-imenne.ads: Adjust description.
+       * libgnat/s-imgenu.ads: Delete.
+       * libgnat/s-imgenu.adb: Likewise.
+       * libgnat/s-pehage.ads: New unit from GNAT.Perfect_Hash_Generators.
+       * libgnat/s-pehage.adb: New body from GNAT.Perfect_Hash_Generators.
+       * libgnat/s-valuen.ads: New generic unit.
+       * libgnat/s-valuen.adb: New body.
+       * libgnat/s-vaen16.ads: New unit.
+       * libgnat/s-vaen32.ads: Likewise.
+       * libgnat/s-vaenu8.ads: Likewise.
+       * libgnat/s-valenu.ads: Delete.
+       * libgnat/s-valenu.adb: Likewise.
+       * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Add s-pehage.o.
+       (GNATBIND_OBJS): Remove s-imgenu.o.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * sem_util.ads (Apply_Compile_Time_Constraint_Error): Remove
+       parameter Rep from the function spec and "and if the flag Rep is
+       set" from the comment.
+       * sem_util.adb (Apply_Compile_Time_Constraint_Error): Remove
+       parameter Rep.
+
+2021-05-05  Ed Schonberg  <schonberg@adacore.com>
+
+       * sem_aggr.adb (Resolve_Indexed_Aggregate): For indexed
+       aggregates with component associations verify that if there is
+       more than one component association then all the choices are
+       static, that the set of choices define a continuous sequence of
+       values, and that if loop specfications appear, they do not
+       include iterator filters or key expressions.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-dourea, s-imager,
+       s-imgflt, s-imglfl and s-imgllf.
+       (LIBGNAT_TARGET_PAIRS) [PowerPC/VxWorks]: Use s-dorepr__fma.adb.
+       (LIBGNAT_TARGET_PAIRS) [PowerPC/VxWorksAE]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [Aarch64/VxWorks]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [Aarch64/QNX]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [Aarch64/FreeBSD]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [PowerPC/Linux]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [Aarch64/Linux]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [IA-64/Linux]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [IA-64/HP-UX]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [RISC-V/Linux]: Likewise.
+       (LIBGNAT_TARGET_PAIRS) [PowerPC/Darwin]: Likewise.
+       * exp_attr.adb (Expand_N_Attribute_Reference) [Attribute_Fore]: Use
+       Fixed suffix and Long_Float type.
+       * exp_imgv.adb (Expand_Image_Attribute): For floating-point types,
+       use the routine of the corresponding root type.  For ordinary fixed
+       point types, use Fixed suffix and Long_Float type.
+       (Expand_Value_Attribute): Revert latest change for Long_Long_Float.
+       * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Remove libgnat units
+       g-hesora.o and s-imgenu.o, add g-heasor.o, g-table.o and s-pehage.o.
+       (GNATBIND_OBJS): Remove libgnat unit s-imgenu.o.
+       * rtsfind.ads (RTU_Id): Add System_Img_Flt, System_Img_LFlt and
+       System_Img_LLF.  Remove System_Img_Real.
+       (RE_Id): Rename RE_Fore_Real to RE_Fore_Fixed.  Add RE_Image_Float,
+       RE_Image_Long_Float and RE_Image_Long_Long_Float.  Rename
+       RE_Image_Ordinary_Fixed_Point to RE_Image_Fixed.
+       (RE_Unit_Table): Adjust to above changes.
+       * libgnat/a-nbnbre.adb (Fixed_Conversions): Use Long_Float instead
+       of Long_Long_Float.
+       * libgnat/a-textio.ads (Field): Remove obsolete comment.
+       * libgnat/a-ticoau.ads (Aux): Adjust ancestor package.
+       * libgnat/a-ticoau.adb: Remove with/use clause for System.Img_Real.
+       (Puts): Call Aux.Set_Image instead of Set_Image_Real.
+       * libgnat/a-ticoio.adb: Add with/use clauses for System.Img_Flt,
+       System.Img_LFlt and System.Img_LLF.
+       (Scalar_Float): Add third actual parameter.
+       (Scalar_Long_Float): Likewise.
+       (Scalar_Long_Long_Float): Likewise.
+       * libgnat/a-tifiio.adb: Add with/use clauses for System.Img_LFlt
+       and System.Val_LFlt.  Remove the one for System.Val_LLF.  Replace
+       Long_Long_Float with Long_Float throughout.
+       * libgnat/a-tifiio__128.adb: Likewise.
+       * libgnat/a-tiflau.ads: Add Set_Image formal parameter.
+       * libgnat/a-tiflau.adb: Add with/use clause for System.Img_Util,
+       remove the one for System.Img_Real.
+       (Put): Call Set_Image instead of Set_Image_Real.
+       (Puts): Likewise.
+       * libgnat/a-tiflio.adb: Add with/use clause for System.Img_Flt,
+       System.Img_LFlt and System.Img_LLF.
+       (Aux_Float): Add third actual parameter.
+       (Aux_Long_Float): Likewise.
+       (Aux_Long_Long_Float): Likewise.
+       * libgnat/a-witeio.ads (Field): Remove obsolete comment.
+       * libgnat/a-wtcoau.ads (Aux): Adjust ancestor package.
+       * libgnat/a-wtcoau.adb: Remove with/use clause for System.Img_Real.
+       (Puts): Call Aux.Set_Image instead of Set_Image_Real.
+       * libgnat/a-wtcoio.adb: Add with/use clauses for System.Img_Flt,
+       System.Img_LFlt and System.Img_LLF.
+       (Scalar_Float): Add third actual parameter.
+       (Scalar_Long_Float): Likewise.
+       (Scalar_Long_Long_Float): Likewise.
+       * libgnat/a-wtfiio.adb: Add with/use clauses for System.Img_LFlt
+       and System.Val_LFlt.  Remove the one for System.Val_LLF.  Replace
+       Long_Long_Float with Long_Float throughout.
+       * libgnat/a-wtfiio__128.adb: Likewise.
+       * libgnat/a-wtflau.ads: Add Set_Image formal parameter.
+       * libgnat/a-wtflau.adb: Add with/use clause for System.Img_Util,
+       remove the one for System.Img_Real.
+       (Put): Call Set_Image instead of Set_Image_Real.
+       (Puts): Likewise.
+       * libgnat/a-wtflio.adb: Add with/use clause for System.Img_Flt,
+       System.Img_LFlt and System.Img_LLF.
+       (Aux_Float): Add third actual parameter.
+       (Aux_Long_Float): Likewise.
+       (Aux_Long_Long_Float): Likewise.
+       * libgnat/a-ztexio.ads (Field): Remove obsolete comment.
+       * libgnat/a-ztcoau.ads (Aux): Adjust ancestor package.
+       * libgnat/a-ztcoau.adb: Remove with/use clause for System.Img_Real.
+       (Puts): Call Aux.Set_Image instead of Set_Image_Real.
+       * libgnat/a-ztcoio.adb: Add with/use clauses for System.Img_Flt,
+       System.Img_LFlt and System.Img_LLF.
+       (Scalar_Float): Add third actual parameter.
+       (Scalar_Long_Float): Likewise.
+       (Scalar_Long_Long_Float): Likewise.
+       * libgnat/a-ztfiio.adb: Add with/use clauses for System.Img_LFlt
+       and System.Val_LFlt.  Remove the one for System.Val_LLF.  Replace
+       Long_Long_Float with Long_Float throughout.
+       * libgnat/a-ztfiio__128.adb: Likewise.
+       * libgnat/a-ztflau.ads: Add Set_Image formal parameter.
+       * libgnat/a-ztflau.adb: Add with/use clause for System.Img_Util,
+       remove the one for System.Img_Real.
+       (Put): Call Set_Image instead of Set_Image_Real.
+       (Puts): Likewise.
+       * libgnat/a-ztflio.adb: Add with/use clause for System.Img_Flt,
+       System.Img_LFlt and System.Img_LLF.
+       (Aux_Float): Add third actual parameter.
+       (Aux_Long_Float): Likewise.
+       (Aux_Long_Long_Float): Likewise.
+       * libgnat/s-dorepr.adb: New file.
+       * libgnat/s-dorepr__fma.adb: Likewise.
+       * libgnat/s-dourea.ads: Likewise.
+       * libgnat/s-dourea.adb: Likewise.
+       * libgnat/s-forrea.ads (Fore_Real): Rename into...
+       (Fore_Fixed): ...this and take Long_Float parameters.
+       * libgnat/s-forrea.adb (Fore_Real): Likewise.
+       (Fore_Fixed): Likewise.
+       * libgnat/s-imgrea.ads: Move to...
+       (Set_Image_Real): Turn into mere renaming.
+       * libgnat/s-imager.ads: ...here.
+       (Image_Ordinary_Fixed_Point): Turn into...
+       (Image_Fixed_Point): ...this.
+       * libgnat/s-imgrea.adb: Add pragma No_Body.  Move to...
+       * libgnat/s-imager.adb: ...here.
+       (Image_Ordinary_Fixed_Point): Turn into...
+       (Image_Fixed_Point): ...this.
+       (Is_Negative): Replace Long_Long_Float with Num.
+       (Set_Image_Real): Likewise.  Use Double_T instead of single Num
+       throughout the algorithm.
+       * libgnat/s-imgflt.ads: New file.
+       * libgnat/s-imglfl.ads: Likewise.
+       * libgnat/s-imgllf.ads: Likewise.
+       * libgnat/s-imagef.ads: Adjust comment.
+       * libgnat/s-imguti.ads (Max_Real_Image_Length): New named number.
+       * libgnat/s-powflt.ads (Maxpow): Adjust.
+       (Powten): Turn into an exact table of double Float.
+       * libgnat/s-powlfl.ads (Maxpow): Adjust.
+       (Powten): Turn into an exact table of double Long_Float.
+       * libgnat/s-powllf.ads (Maxpow): Adjust.
+       (Powten): Turn into an exact table of double Long_Long_Float.
+       * libgnat/s-valrea.ads: Change order of formal parameters.
+       * libgnat/s-valrea.adb: Add with clause for System.Double_Real.
+       (Double_Real): New instantiation.
+       (Fast2Sum): Delete.
+       (Large_Powten): New function.
+       (Integer_to_Real): Use Quick_Two_Sum instead of Fast2Sum.  Convert
+       the value to Double_T.  Do the scaling in Double_T for base 10.
+       * libgnat/s-valflt.ads: Remove with/use clasue for Interfaces,
+       add it for System.Unsigned_Types.  Use Unsigned.
+       * libgnat/s-vallfl.ads: Remove with/use clasue for Interfaces,
+       add it for System.Unsigned_Types.  Use Long_Unsigned.
+       * libgnat/s-valllf.ads: Remove with/use clasue for Interfaces,
+       add it for System.Unsigned_Types.  Use Long_Long_Unsigned.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * sem_eval.adb (Eval_Arithmetic_Op): Call
+       Set_Raises_Constraint_Error on real division by zero just like
+       it is called for integer division by zero earlier in this
+       routine.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * freeze.adb (Build_Renamed_Body): Simplify IF and WHILE
+       statements with the same condition.
+
+2021-05-05  Piotr Trojanek  <trojanek@adacore.com>
+
+       * pprint.adb (Expr_Name): Introduce local constants to make the
+       code more readable and avoid repeated calls to Next to reach the
+       ELSE part of an if-expression.
+
 2021-05-04  Piotr Trojanek  <trojanek@adacore.com>
 
        * pprint.adb: Remove qualification of arbitrary calls to
index 9d2d4fa..17367c4 100644 (file)
@@ -1,3 +1,11 @@
+2021-05-05  Harald Anlauf  <anlauf@gmx.de>
+
+       PR fortran/100274
+       * interface.c (gfc_compare_actual_formal): Continue checks after
+       emitting warning for argument length mismatch.
+       * trans-expr.c (gfc_conv_procedure_call): Check for NULL pointer
+       dereference.
+
 2021-05-04  Tobias Burnus  <tobias@codesourcery.com>
 
        PR testsuite/100397
index 9efe850..70c5d50 100644 (file)
@@ -1,3 +1,67 @@
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gcc.c-torture/execute/20210505-1.c: New test.
+
+2021-05-05  Ivan Sorokin  <vanyacpp@gmail.com>
+
+       PR target/91400
+       * gcc.target/i386/pr91400-1.c: New test.
+       * gcc.target/i386/pr91400-2.c: Likewise.
+
+2021-05-05  Martin Sebor  <msebor@redhat.com>
+
+       * gcc.dg/tree-ssa/builtin-sprintf-warn-26.c: New test.
+
+2021-05-05  Harald Anlauf  <anlauf@gmx.de>
+
+       PR fortran/100274
+       * gfortran.dg/argument_checking_25.f90: New test.
+
+2021-05-05  Uroš Bizjak  <ubizjak@gmail.com>
+
+       PR target/98218
+       * gcc.target/i386/pr98218-1.c: New test.
+       * gcc.target/i386/pr98218-1a.c: Ditto.
+       * gcc.target/i386/pr98218-2.c: Ditto.
+       * gcc.target/i386/pr98218-2a.c: Ditto.
+       * gcc.target/i386/pr98218-3.c: Ditto.
+       * gcc.target/i386/pr98218-3a.c: Ditto.
+       * gcc.dg/vect/vect-bool-cmp.c (dg-final):
+       Scan vect tree dump for "LOOP VECTORIZED", not VECTORIZED.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gnat.dg/debug17.adb: Minor tweak.
+
+2021-05-05  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gnat.dg/debug8.adb: Minor tweak.
+       * gnat.dg/debug11.adb: Likewise.
+       * gnat.dg/debug16.adb: Likewise.
+       * gnat.dg/debug17.adb: New test.
+       * gnat.dg/specs/debug1.ads: Minor tweak.
+
+2021-05-05  Robin Dapp  <rdapp@linux.ibm.com>
+
+       * gcc.dg/vect/slp-21.c: Add s390.
+
+2021-05-05  Tobias Burnus  <tobias@codesourcery.com>
+
+       PR testsuite/100422
+       * g++.dg/gomp/clause-3.C: Use 'reduction(&:..)' instead of '...(&&:..)'.
+
+2021-05-05  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/79333
+       * gcc.dg/tree-ssa/ssa-fre-94.c: New testcase.
+       * gcc.dg/graphite/fuse-1.c: Adjust.
+       * gcc.dg/pr43864-4.c: Likewise.
+
+2021-05-05  Richard Biener  <rguenther@suse.de>
+
+       PR middle-end/100394
+       * g++.dg/torture/pr100382.C: New testcase.
+
 2021-05-04  Martin Sebor  <msebor@redhat.com>
 
        PR middle-end/100307
index 97e0973..672e968 100644 (file)
@@ -1,3 +1,201 @@
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * compiler.cc (make_regexp): Take const std::string.
+       (cc1_plugin::compiler_triplet_regexp::find): Update.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       PR c/94669
+       * compiler.hh (compiler_driver_filename): Take const char *.
+       (compiler_triplet_regexp): Likewise.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * rpc.hh (argument_wrapper) <get>: Replace cast operator.
+       (argument_wrapper<T *>) <get>: Likewise.
+       (unmarshall): Add std::tuple overloads.
+       (callback): Remove.
+       (class invoker): New.
+       * libcp1plugin.cc (plugin_init): Update.
+       * libcp1.cc (libcp1::add_callbacks): Update.
+       * libcc1plugin.cc (plugin_init): Update.
+       * libcc1.cc (libcc1::add_callbacks): Update.
+       * connection.cc (cc1_plugin::connection::do_wait): Update.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * gdbctx.hh (do_compile): Use std::vector.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1.cc (libcp1): Change parameters.  Update.
+       (libcp1_set_verbose, libcp1_set_arguments)
+       (libcp1_set_triplet_regexp, libcp1_set_driver_filename)
+       (libcp1_set_source_file, libcp1_set_print_callback, fork_exec)
+       (libcp1_compile, libcp1_destroy, vtable): Remove.
+       (libcp1::add_callbacks): New method, extracted from
+       libcp1_compile.
+       (gcc_c_fe_context): Update.
+       * libcc1.cc (libcc1): Change parameters.  Update.
+       (libcc1_set_verbose, libcc1_set_arguments)
+       (libcc1_set_triplet_regexp, libcc1_set_driver_filename)
+       (libcc1_set_source_file, libcc1_set_print_callback, fork_exec)
+       (libcc1_compile, libcc1_destroy, vtable): Remove.
+       (libcc1::add_callbacks): New method, extracted from
+       libcc1_compile.
+       (gcc_c_fe_context): Update.
+       * gdbctx.hh (base_gdb_plugin): Change parameters.
+       (~base_gdb_plugin): New.
+       <add_callbacks>: New virtual method.
+       <plugin_name, fe_version, compiler_name, vtable>: New members.
+       (get_self, do_set_verbose, do_set_arguments)
+       (do_set_triplet_regexp, do_set_driver_filename)
+       (do_set_arguments_v0, do_set_source_file, do_set_print_callback)
+       (fork_exec, do_compile, do_compile_v0, do_destroy): New methods.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1.cc (vtable): Use GCC_FE_VERSION_1.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1.cc (struct libcp1): Derive from base_gdb_plugin.  Remove
+       shared code.
+       (class libcp1_connection): Remove.
+       (rpc): Remove.
+       (libcp1_set_verbose, libcp1_compile): Update.
+       (cp_call_binding_oracle, cp_call_symbol_address)
+       (cp_call_enter_scope, cp_call_leave_scope): Update.
+       * libcc1.cc (struct libcc1): Derive from base_gdb_plugin.  Remove
+       shared code.
+       (class libcc1_connection): Remove.
+       (c_call_binding_oracle, c_call_symbol_address): Update.
+       (rpc): Remove.
+       (libcc1_set_verbose, libcc1_compile): Update.
+       * gdbctx.hh: New file.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcc1plugin.cc: Move code to context.cc.
+       * libcp1plugin.cc: Move code to context.cc.
+       * context.hh: New file.
+       * context.cc: New file.
+       * Makefile.in: Rebuild.
+       * Makefile.am (AM_CPPFLAGS): Add more gcc flags.
+       (CPPFLAGS_FOR_C, CPPFLAGS_FOR_CXX): Update.
+       (libcc1plugin_la_SOURCES): Add context.hh, context.cc.
+       (libcp1plugin_la_SOURCES): Likewise.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1plugin.cc: Use static assert.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1plugin.cc (plugin_context::mark): Use foreach.
+       * libcc1plugin.cc (plugin_context::mark): Use foreach.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1.cc (compiler, compiler_triplet_regexp)
+       (compiler_driver_filename): Remove.
+       (libcp1::libcp1): Update.
+       (make_regexp, libcp1::compiler::find)
+       (libcp1::compiler_triplet_regexp::find)
+       (libcp1::compiler_driver_filename::find): Remove.
+       (libcp1_set_verbose, libcp1_set_arguments)
+       (libcp1_set_triplet_regexp, libcp1_set_driver_filename): Update.
+       * libcc1.cc (compiler, compiler_triplet_regexp)
+       (compiler_driver_filename): Remove.
+       (libcc1::libcc1): Update.
+       (make_regexp, libcc1::compiler::find)
+       (libcc1::compiler_triplet_regexp::find)
+       (libcc1::compiler_driver_filename::find): Remove.
+       (libcc1_set_verbose, libcc1_set_arguments)
+       (libcc1_set_triplet_regexp, libcc1_set_driver_filename): Update.
+       * compiler.cc: New file.
+       * compiler.hh: New file.
+       * Makefile.in: Rebuild.
+       * Makefile.am (libcc1_la_SOURCES): Add compiler.hh, compiler.cc.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1.cc (struct libcp1) <connection, compilerp>: Use
+       unique_ptr.
+       (~libcp1): Remove.
+       (libcp1_compile, libcp1_set_triplet_regexp)
+       (libcp1_set_driver_filename): Update.
+       * libcc1.cc (struct libcc1) <connection, compilerp>: Use
+       unique_ptr.
+       (~libcc1): Remove.
+       (libcc1_set_triplet_regexp, libcc1_set_driver_filename)
+       (libcc1_compile): Update.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * rpc.hh (deleter): Move template and some specializations to
+       deleter.hh.
+       (argument_wrapper<const T *>): Use cc1_plugin::unique_ptr.
+       * marshall.cc (cc1_plugin::unmarshall): Use
+       cc1_plugin::unique_ptr.
+       * marshall-cp.hh (deleter): New specializations.
+       (unmarshall): Use cc1_plugin::unique_ptr.
+       * deleter.hh: New file.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * rpc.hh (struct deleter): New template class and
+       specializations.
+       (argument_wrapper): Remove specializations.  Add specialization
+       for any pointer type.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1plugin.cc (plugin_build_function_type): Use std::vector.
+       * libcc1plugin.cc (plugin_build_function_type): Use std::vector.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1.cc (rpc): Use variadic template.  Remove overloads.
+       * libcc1.cc (rpc): Use variadic template.  Remove overloads.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * rpc.hh (call): Use variadic template.  Remove overloads.
+       * marshall.hh (marshall): Add base overload.  Use variadic
+       template.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * rpc.hh (argument_wrapper): Use delete for copy constructor.
+       * connection.hh (class connection): Use delete for copy
+       constructor.
+       * callbacks.hh (class callbacks): Use delete for copy constructor.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * connection.hh (~connection): Use default.
+       (print): Inline.
+       * connection.cc (cc1_plugin::connection::~connection)
+       (cc1_plugin::connection::print): Remove definitions.
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * libcp1.cc (class compiler_triplet_regexp)
+       (class compiler_driver_filename, class libcp1_connection): Use
+       "override".
+       * libcc1.cc (class compiler_triplet_regexp)
+       (class compiler_driver_filename, class libcc1_connection): Use
+       "override".
+
+2021-05-05  Tom Tromey  <tom@tromey.com>
+
+       * marshall.hh (cc1_plugin::unmarshall): Use type traits.
+       * marshall-cp.hh (cc1_plugin::unmarshall): Remove overloads.
+       * marshall-c.hh: Remove.
+       * libcc1plugin.cc: Update includes.
+       * libcc1.cc: Update includes.
+
 2021-05-03  H.J. Lu  <hjl.tools@gmail.com>
 
        PR bootstrap/99703
index 048bb4b..27d79ae 100644 (file)
@@ -1,3 +1,8 @@
+2021-05-05  Tobias Burnus  <tobias@codesourcery.com>
+
+       * intrinsics/chmod.c (chmod_internal): Only declare mode_mask var
+       if HAVE_UMASK.
+
 2021-05-02  Tobias Burnus  <tobias@codesourcery.com>
 
        PR libgomp/100352
index f9ef08a..f6dbad0 100644 (file)
@@ -1,3 +1,42 @@
+2021-05-05  Patrick Palka  <ppalka@redhat.com>
+
+       * include/bits/ranges_util.h (enable_borrowed_range<subrange>):
+       Remove constraints on this partial specialization.
+       * include/std/ranges (enable_borrowed_range<iota_view>):
+       Likewise.
+
+2021-05-05  Patrick Palka  <ppalka@redhat.com>
+
+       * include/std/ranges (transform_view::_Iterator::iter_swap):
+       Remove as per LWG 3520.
+       (join_view::_Iterator::iter_swap): Add indirectly_swappable
+       constraint as per LWG 3517.
+
+2021-05-05  Jonathan Wakely  <jwakely@redhat.com>
+
+       * testsuite/20_util/function_objects/invoke/3.cc: Check feature
+       test macro.
+       * testsuite/20_util/function_objects/invoke/version.cc: New test.
+
+2021-05-05  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/std/charconv (__from_chars_alnum): Pass unsigned
+       char to std::isdigit.
+
+2021-05-05  Corentin Gay  <gay@adacore.com>
+
+       * acinclude.m4: Add VxWorks-specific case for the
+       configuration of ctypes.
+       * configure: Regenerate.
+       * config/locale/vxworks/ctype_members.cc: Add VxWorks-specific
+       version.
+       * config/os/vxworks/ctype_base.h: Adjust for VxWorks7+.
+       * config/os/vxworks/ctype_configure_char.cc: Likewise.
+       * config/os/vxworks/ctype_inline.h: Likewise.
+       * testsuite/28_regex/traits/char/isctype.cc: Defines
+       NEWLINE_IN_CLASS_BLANK if the target is VxWorks.
+       * testsuite/28_regex/traits/wchar_t/isctype.cc: Likewise.
+
 2021-05-04  Jonathan Wakely  <jwakely@redhat.com>
 
        * include/std/future (promise::set_value): Check for existence