]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Daily bump.
authorGCC Administrator <gccadmin@gcc.gnu.org>
Thu, 22 Oct 2020 08:28:22 +0000 (08:28 +0000)
committerGCC Administrator <gccadmin@gcc.gnu.org>
Thu, 22 Oct 2020 08:28:22 +0000 (08:28 +0000)
gcc/ChangeLog
gcc/DATESTAMP
gcc/ada/ChangeLog
gcc/c-family/ChangeLog
gcc/d/ChangeLog
gcc/fortran/ChangeLog
gcc/testsuite/ChangeLog
libgcc/ChangeLog
libgomp/ChangeLog
libstdc++-v3/ChangeLog

index 59fa1ad4d5d55a2c8620e15f3bc49367d7b2d16f..e82530f66afd503e536b8a8f116f0f0753c0bd5c 100644 (file)
@@ -1,3 +1,335 @@
+2020-10-22  Martin Liska  <mliska@suse.cz>
+
+       PR c/94722
+       * cfgexpand.c (stack_protect_decl_phase):
+       Guard with lookup_attribute("no_stack_protector") at
+       various places.
+       (expand_used_vars): Likewise here.
+       * doc/extend.texi: Document no_stack_protector attribute.
+
+2020-10-22  Martin Liska  <mliska@suse.cz>
+
+       * cfgexpand.c: Move the enum to ...
+       * coretypes.h (enum stack_protector): ... here.
+       * function.c (assign_parm_adjust_stack_rtl): Use the stack_protector
+       enum.
+
+2020-10-22  Kito Cheng  <kito.cheng@sifive.com>
+
+       * config/riscv/multilib-generator: Add TODO, import itertools
+       and functools.reduce.
+       Handle expantion operator.
+       (LONG_EXT_PREFIXES): New.
+       (arch_canonicalize): Update comment and improve python3
+       debuggability/compatibility.
+       (add_underline_prefix): New.
+       (_expand_combination): Ditto.
+       (unique): Ditto.
+       (expand_combination): Ditto.
+
+2020-10-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * tree-ssa-phiopt.c (cond_removal_in_popcount_clz_ctz_pattern):
+       For CLZ and CTZ tests, use type temporary instead of mode.
+
+2020-10-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * config.gcc (x86_archs): Add samuel-2, nehemiah, c7 and esther.
+       (x86_64_archs): Add eden-x2, nano, nano-1000, nano-2000, nano-3000,
+       nano-x2, eden-x4, nano-x4, x86-64-v2, x86-64-v3 and x86-64-v4.
+       (i[34567]86-*-* | x86_64-*-*): Only allow x86-64-v* as argument
+       to --with-arch_64=.
+
+2020-10-22  Jan Hubicka  <jh@suse.cz>
+
+       * ipa-pure-const.c (funct_state_summary_t::insert): Free stale
+       summaries.
+
+2020-10-22  Jan Hubicka  <hubicka@ucw.cz>
+
+       * cgraph.c: Include tree-nested.h
+       (cgraph_node::create): Call maybe_record_nested_function.
+       (cgraph_node::remove): Do not remove function from nested function
+       infos.
+       (cgraph_node::dump): Update.
+       (cgraph_node::unnest): Move to tree-nested.c
+       (cgraph_node::verify_node): Update.
+       (cgraph_c_finalize): Call nested_function_info::release.
+       * cgraph.h (struct symtab_node): Remove nested function info.
+       * cgraphclones.c (cgraph_node::create_clone): Do not clone nested
+       function info.
+       * cgraphunit.c (cgraph_node::analyze): Update.
+       (cgraph_node::expand): Do not worry about nested functions; they are
+       lowered.
+       (symbol_table::finalize_compilation_unit): Call
+       nested_function_info::release.
+       * gimplify.c: Include tree-nested.h
+       (unshare_body): Update.
+       (unvisit_body): Update.
+       * omp-offload.c (omp_discover_implicit_declare_target): Update.
+       * tree-nested.c: Include alloc-pool.h, tree-nested.h, symbol-summary.h
+       (nested_function_sum): New static variable.
+       (nested_function_info::get): New member function.
+       (nested_function_info::get_create): New member function.
+       (unnest_function): New function.
+       (nested_function_info::~nested_function_info): New member function.
+       (nested_function_info::release): New function.
+       (maybe_record_nested_function): New function.
+       (lookup_element_for_decl): Update.
+       (check_for_nested_with_variably_modified): Update.
+       (create_nesting_tree): Update.
+       (unnest_nesting_tree_1): Update.
+       (gimplify_all_functions): Update.
+       (lower_nested_functions): Update.
+       * tree-nested.h (class nested_function_info): New class.
+       (maybe_record_nested_function): Declare.
+       (unnest_function): Declare.
+       (first_nested_function): New inline function.
+       (next_nested_function): New inline function.
+       (nested_function_origin): New inline function.
+
+2020-10-22  liuhongt  <hongtao.liu@intel.com>
+
+       PR rtl-optimization/97249
+       * simplify-rtx.c (simplify_binary_operation_1): Simplify
+       vec_select of a subreg of X to a vec_select of X.
+
+2020-10-22  liuhongt  <hongtao.liu@intel.com>
+
+       PR target/87767
+       * config/i386/constraints.md ("Br"): New special memory
+       constraint.
+       * config/i386/i386-expand.c (ix86_binary_operator_ok): Both
+       source operand cannot be in memory or bcst_memory_operand.
+       * config/i386/i386.c (ix86_print_operand): Print bcst_mem_operand.
+       * config/i386/i386.h (VALID_BCST_MODE_P): New.
+       * config/i386/predicates.md (bcst_mem_operand): New predicate
+       for AVX512 embedding broadcast memory operand.
+       (bcst_vector_operand): New predicate, vector_operand or
+       bcst_mem_operand.
+       * config/i386/sse.md
+       (*<plusminus_insn><mode>3<mask_name><round_name>): Extend
+       predicate and constraints to handle bcst_mem_operand.
+       (*mul<mode>3<mask_name><round_name>): Ditto.
+       (<sse>_div<mode>3<mask_name><round_name>): Ditto.
+       (<sd_mask_codefor>fma_fmadd_<mode><sd_maskz_name><round_name>):
+       Ditto.
+       (<sd_mask_codefor>fma_fmsub_<mode><sd_maskz_name><round_name>):
+       Ditto.
+       (<sd_mask_codefor>fma_fnmadd_<mode><sd_maskz_name><round_name>):
+       Ditto.
+       (<sd_mask_codefor>fma_fnmsub_<mode><sd_maskz_name><round_name>):
+       Ditto.
+       (*<plusminus_insn><mode>3): Ditto.
+       (avx512dq_mul<mode>3<mask_name>): Ditto.
+       (*<sse4_1_avx2>_mul<mode>3<mask_name>): Ditto.
+       (*andnot<mode>3): Ditto.
+       (<mask_codefor><code><mode>3<mask_name>): Ditto.
+       (*sub<mode>3<mask_name>_bcst): Removed.
+       (*add<mode>3<mask_name>_bcst): Ditto.
+       (*mul<mode>3<mask_name>_bcst): Ditto.
+       (*<avx512>_div<mode>3<mask_name>_bcst): Ditto.
+       (*<sd_mask_codefor>fma_fmadd_<mode><sd_maskz_name>_bcst_1):
+       Ditto.
+       (*<sd_mask_codefor>fma_fmadd_<mode><sd_maskz_name>_bcst_2):
+       Ditto.
+       (*<sd_mask_codefor>fma_fmadd_<mode><sd_maskz_name>_bcst_3):
+       Ditto.
+       (*<sd_mask_codefor>fma_fmsub_<mode><sd_maskz_name>_bcst_1):
+       Ditto.
+       (*<sd_mask_codefor>fma_fmsub_<mode><sd_maskz_name>_bcst_2):
+       Ditto.
+       (*<sd_mask_codefor>fma_fmsub_<mode><sd_maskz_name>_bcst_3):
+       Ditto.
+       (*<sd_mask_codefor>fma_fnmadd_<mode><sd_maskz_name>_bcst_1):
+       Ditto.
+       (*<sd_mask_codefor>fma_fnmadd_<mode><sd_maskz_name>_bcst_2):
+       Ditto.
+       (*<sd_mask_codefor>fma_fnmadd_<mode><sd_maskz_name>_bcst_3):
+       Ditto.
+       (*<sd_mask_codefor>fma_fnmsub_<mode><sd_maskz_name>_bcst_1):
+       Ditto.
+       (*<sd_mask_codefor>fma_fnmsub_<mode><sd_maskz_name>_bcst_2):
+       Ditto.
+       (*<sd_mask_codefor>fma_fnmsub_<mode><sd_maskz_name>_bcst_3):
+       Ditto.
+       (*sub<mode>3_bcst): Ditto.
+       (*add<mode>3_bcst): Ditto.
+       (*avx512dq_mul<mode>3<mask_name>_bcst): Ditto.
+       (*avx512f_mul<mode>3<mask_name>_bcst): Ditto.
+       (*andnot<mode>3_bcst): Ditto.
+       (*<code><mode>3_bcst): Ditto.
+       * config/i386/subst.md (bcst_round_constraint): New subst
+       attribute.
+       (bcst_round_nimm_predicate): Ditto.
+       (bcst_mask_prefix3): Ditto.
+       (bcst_mask_prefix4): Ditto.
+
+2020-10-22  liuhongt  <hongtao.liu@intel.com>
+
+       PR target/87767
+       * ira-costs.c (record_operand_costs): Extract memory operand
+       from recog_data.operand[i] for record_address_regs.
+       (record_reg_classes): Extract memory operand from OP for
+       conditional judgement MEM_P.
+       * ira.c (ira_setup_alts): Ditto.
+       * lra-constraints.c (extract_mem_from_operand): New function.
+       (satisfies_memory_constraint_p): Extract memory operand from
+       OP for decompose_mem_address, return false when there's no
+       memory operand inside OP.
+       (process_alt_operands): Remove MEM_P (op) since it would be
+       judged in satisfies_memory_constraint_p.
+       * recog.c (asm_operand_ok): Extract memory operand from OP for
+       judgement of memory_operand (OP, VOIDmode).
+       (constrain_operands): Don't unwrapper unary operator when
+       there's memory operand inside.
+       * rtl.h (extract_mem_from_operand): New decl.
+
+2020-10-22  Dennis Zhang  <dennis.zhang@arm.com>
+
+       * config/arm/mve.md (mve_vmaxq_<supf><mode>): Replace with ...
+       (mve_vmaxq_s<mode>, mve_vmaxq_u<mode>): ... these new insns to
+       use smax/umax instead of VMAXQ.
+       (mve_vminq_<supf><mode>): Replace with ...
+       (mve_vminq_s<mode>, mve_vminq_u<mode>): ... these new insns to
+       use smin/umin instead of VMINQ.
+       (mve_vmaxnmq_f<mode>): Use smax instead of VMAXNMQ_F.
+       (mve_vminnmq_f<mode>): Use smin instead of VMINNMQ_F.
+       * config/arm/vec-common.md (smin<mode>3): Use the new mode macros
+       ARM_HAVE_<MODE>_ARITH.
+       (umin<mode>3, smax<mode>3, umax<mode>3): Likewise.
+
+2020-10-22  Andrew MacLeod  <amacleod@redhat.com>
+
+       PR tree-optimization/97520
+       * gimple-range.cc (range_of_non_trivial_assignment): Handle x = &a
+       by returning a non-zero range.
+
+2020-10-22  Dennis Zhang  <dennis.zhang@arm.com>
+
+       * config/arm/mve.md (mve_vmulq<mode>): New entry for vmul instruction
+       using expression 'mult'.
+       (mve_vmulq_f<mode>): Use mult instead of VMULQ_F.
+       * config/arm/neon.md (mul<mode>3): Removed.
+       * config/arm/vec-common.md (mul<mode>3): Use the new mode macros
+       ARM_HAVE_<MODE>_ARITH. Use mode iterator VDQWH instead of VALLW.
+
+2020-10-22  Andrew MacLeod  <amacleod@redhat.com>
+
+       PR tree-optimization/97515
+       * value-query.cc (range_query::value_of_expr): If the result is
+       UNDEFINED, check to see if the global value is a constant.
+       (range_query::value_on_edge): Ditto.
+
+2020-10-21  Jan Hubicka  <hubicka@ucw.cz>
+
+       PR ipa/97445
+       * ipa-inline.c (inline_insns_single): Add hint2 parameter.
+       (inline_insns_auto): Add hint2 parameter.
+       (can_inline_edge_by_limits_p): Update.
+       (want_inline_small_function_p): Update.
+       (wrapper_heuristics_may_apply): Update.
+
+2020-10-21  Richard Biener  <rguenther@suse.de>
+           Andrew MacLeod  <amacleod@redhat.com>
+           Martin Liska  <mliska@suse.cz>
+
+       PR target/97360
+       * config/rs6000/rs6000-call.c (rs6000_init_builtins): Remove call to
+       build_distinct_type_copy().
+
+2020-10-21  Jan Hubicka  <jh@suse.cz>
+
+       PR ipa/97445
+       * ipa-fnsummary.c (ipa_dump_hints): Add INLINE_HINT_builtin_constant_p.
+       (ipa_fn_summary::~ipa_fn_summary): Free builtin_constant_p_parms.
+       (ipa_fn_summary_t::duplicate): Duplicate builtin_constant_p_parms.
+       (ipa_dump_fn_summary): Dump builtin_constant_p_parms.
+       (add_builtin_constant_p_parm): New function
+       (set_cond_stmt_execution_predicate): Update builtin_constant_p_parms.
+       (ipa_call_context::estimate_size_and_time): Set
+       INLINE_HINT_builtin_constant_p..
+       (ipa_merge_fn_summary_after_inlining): Merge builtin_constant_p_parms.
+       (inline_read_section): Read builtin_constant_p_parms.
+       (ipa_fn_summary_write): Write builtin_constant_p_parms.
+       * ipa-fnsummary.h (enum ipa_hints_vals): Add
+       INLINE_HINT_builtin_constant_p.
+       * ipa-inline.c (want_inline_small_function_p): Use
+       INLINE_HINT_builtin_constant_p.
+       (edge_badness): Use INLINE_HINT_builtin_constant_p.
+
+2020-10-21  Douglas Rupp  <rupp@adacore.com>
+
+       * config/vx-common.h (LINK_SPEC, LIB_SPEC): Remove #undef.
+
+2020-10-21  Douglas Rupp  <rupp@adacore.com>
+           Olivier Hainque  <hainque@adacore.com>
+
+       * config.gcc (powerpc*-wrs-vxworks7r*): New case.
+       * config/rs6000/vxworks.h: Rework to handle VxWorks7.
+       Refactor as common bits + vx6 vs vx7 ones. For the
+       latter, rely essentially on the Linux configuration
+       and adjust CPU to _VX_CPU in CPP_SPEC. Add a case
+       for e6500. Use SUB3TARGET_OVERRIDE_OPTIONS for specifics
+       to preserve the Linux SUBSUBTARGET_OVERRIDE_OPTIONS
+       for vx7.
+
+2020-10-21  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/97500
+       * tree-vect-slp.c (vect_analyze_slp_backedges): Do not
+       fill backedges for inductions.
+
+2020-10-21  liuhongt  <hongtao.liu@intel.com>
+
+       PR target/97506
+       * config/i386/i386-expand.c (ix86_expand_sse_movcc): Move
+       op_true to dest directly when op_true equals op_false.
+
+2020-10-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/97503
+       * tree-ssa-phiopt.c: Include internal-fn.h.
+       (cond_removal_in_popcount_pattern): Rename to ...
+       (cond_removal_in_popcount_clz_ctz_pattern): ... this.  Handle not just
+       popcount, but also clz and ctz if it has C?Z_DEFINED_VALUE_AT_ZERO 2.
+
+2020-10-21  Richard Biener  <rguenther@suse.de>
+
+       * cfg.c (htab_bb_copy_original_entry): Remove.
+       (bb_copy_hasher): Likewise.
+       (bb_original, bb_copy, loop_copy): Use
+       hash_map<int_hash<int, -1, -2>, int>.
+       (original_copy_bb_pool): Remove.
+       (initialize_original_copy_tables): Adjust.
+       (reset_original_copy_tables): Likewise.
+       (free_original_copy_tables): Likewise.
+       (original_copy_tables_initialized_p): Likewise.
+       (copy_original_table_clear): Simplify.
+       (copy_original_table_set): Likewise.
+       (get_bb_original): Likewise.
+       (get_bb_copy): Likewise.
+       (get_loop_copy): Likewise.
+
+2020-10-21  Richard Biener  <rguenther@suse.de>
+
+       * cfghooks.c (copy_bbs): Split out loop computing new_edges.
+
+2020-10-21  Aldy Hernandez  <aldyh@redhat.com>
+
+       * gimple-range.cc (gimple_ranger::range_of_ssa_name_with_loop_info):
+       Remove TREE_OVERFLOW special case.
+       * vr-values.c (bounds_of_var_in_loop): Adjust overflow for
+       invariants.
+
+2020-10-21  Aldy Hernandez  <aldyh@redhat.com>
+
+       * vr-values.h: Remove simplify_cond_using_ranges_2.
+       (range_fits_type_p): New.
+       * vr-values.c (range_fits_type_p): Remove static qualifier.
+       (vrp_simplify_cond_using_ranges): Move...
+       * tree-vrp.c (vrp_simplify_cond_using_ranges): ...to here.
+
 2020-10-22  Dennis Zhang  <dennis.zhang@arm.com>
 
        * config/arm/mve.md (mve_vmaxq_<supf><mode>): Replace with ...
index 8a26653d7f826a92ab7326ca7930d098ccd607ec..d3ccbf5b38e7cb6481422f10ac6fbb9c9338797d 100644 (file)
@@ -1 +1 @@
-20201021
+20201022
index 85d1f54f020badfa102f1255f278c9749231f6d4..dceca5b9b9a7719b70447d61a5023f5eef106cfd 100644 (file)
@@ -1,3 +1,608 @@
+2020-10-22  Martin Liska  <mliska@suse.cz>
+
+       PR c/94722
+       * gcc-interface/utils.c (handle_no_stack_protect_attribute):
+       New.
+       (handle_stack_protect_attribute): Add error message for a
+       no_stack_protector function.
+
+2020-10-22  Alexandre Oliva  <oliva@adacore.com>
+
+       * Makefile.rtl (LIBGNAT_TARGET_PAIRS) <lynxos178>: Rely on
+       Aux_Long_Float for all real types.
+
+2020-10-22  Alexandre Oliva  <oliva@adacore.com>
+
+       * Makefile.rtl (LIBGNAT_TARGET_PAIRS): Use Long Float-based
+       variant of Aux_Short_Float and Aux_Float on vxworks targets.
+       * libgnat/a-nashfl__wraplf.ads: New.
+       * libgnat/a-nuaufl__wraplf.ads: New.
+
+2020-10-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Makefile.rtl (LIBGNAT_TARGET_PAIRS) <sparc*-sun-solaris>:
+       Use wraplf version of a-nallfl.
+
+2020-10-22  Alexandre Oliva  <oliva@adacore.com>
+
+       * Makefile.rtl (LIBGNAT_TARGET_PAIRS): Use
+       a-nallfl__wraplf.ads on aarch64-* and ppc*-linux-gnu targets.
+       * libgnat/a-nallfl__wraplf.ads: New.
+
+2020-10-22  Jan Hubicka  <hubicka@ucw.cz>
+
+       * gcc-interface/trans.c: Include tree-nested.h
+       (walk_nesting_tree): Update for new nested function info.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add a-llltio, a-lllwti,
+       a-lllzti and remove a-timoau, a-wtmoau and a-ztmoau.
+       (GNATRTL_128BIT_PAIRS): Add a-tiinio.adb, a-timoio.adb, a-wtinio.adb,
+       a-wtmoio.adb, a-ztinio.adb and a-ztmoio.adb.
+       * impunit.adb (Non_Imp_File_Names_95): Add a-llltio, a-lllwti and
+       a-lllzti.
+       * krunch.ads: Document trick for Ada.Long_Long_Long_Integer_*_IO.
+       * krunch.adb (Krunch): Add trick for Ada.Long_Long_Long_Integer_*_IO.
+       * libgnat/a-llltio.ads: Instantiate Ada.Text_IO.Integer_IO.
+       * libgnat/a-lllwti.ads: Instantiate Ada.Wide_Text_IO.Integer_IO.
+       * libgnat/a-lllzti.ads: Instantiate Ada.Wide_Wide_Text_IO.Integer_IO.
+       * libgnat/a-tigeau.ads (Load_Integer): New procedure.
+       * libgnat/a-tigeau.adb (Load_Integer): Likewise.
+       * libgnat/a-tiinau.ads, libgnat/a-tiinau.adb: Change to generic
+       package.
+       * libgnat/a-tiinio.adb: Instantiate it.
+       * libgnat/a-tiinio__128.adb: Likewise.
+       * libgnat/a-timoau.ads, libgnat/a-timoau.adb: Change to generic
+       package.
+       * libgnat/a-timoio.adb: Instantiate it.
+       * libgnat/a-timoio__128.adb: Likewise.
+       * libgnat/a-wtgeau.ads (Load_Integer): New procedure.
+       * libgnat/a-wtgeau.adb (Load_Integer): Likewise.
+       * libgnat/a-wtinau.ads, libgnat/a-wtinau.adb: Change to generic
+       package.
+       * libgnat/a-wtinio.adb: Instantiate it.
+       * libgnat/a-wtinio__128.adb: Likewise.
+       * libgnat/a-wtmoau.ads, libgnat/a-wtmoau.adb: Change to generic
+       package.
+       * libgnat/a-wtmoio.adb: Instantiate it.
+       * libgnat/a-wtmoio__128.adb: Likewise.
+       * libgnat/a-ztgeau.ads (Load_Integer): New procedure.
+       * libgnat/a-ztgeau.adb (Load_Integer): Likewise.
+       * libgnat/a-ztinau.ads, libgnat/a-ztinau.adb: Change to generic
+       package.
+       * libgnat/a-ztinio.adb: Instantiate it.
+       * libgnat/a-ztinio__128.adb: Likewise.
+       * libgnat/a-ztmoau.ads, libgnat/a-ztmoau.adb: Change to generic
+       package.
+       * libgnat/a-ztmoio.adb: Instantiate it.
+       * libgnat/a-ztmoio__128.adb: Likewise.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * sem_ch12.adb (Freeze_Subprogram_Body): Do not move the freeze
+       node of the package body enclosing the instance when its parent
+       is in the same declarative part as the freeze node of the parent.
+
+2020-10-21  Steve Baird  <baird@adacore.com>
+
+       * exp_ch6.adb (Insert_Post_Call_Actions): When a function's
+       result type requires finalization and we decide to make copy of
+       a call to the function and subsequently refer only to the copy,
+       then don't forget to finalize the original function result
+       object.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * Makefile.rtl (GNATRTL_NONTASKING_OBJS): Add s-widint,
+       s-widthi, s-widuns, s-widuns.
+       (GNATRTL_128BIT_OBJS): Add s-imglllb, s-imgllli, s-imglllu, s-imglllw,
+       s-valllli, s-vallllu, s-widllli, s-widlllu.
+       * exp_imgv.adb (Expand_Image_Attribute): Deal with 128-bit types.
+       (Expand_Value_Attribute): Likewise.
+       (Expand_Width_Attribute): Likewise.
+       * exp_put_image.adb (Build_Elementary_Put_Image_Call): Likewise.
+       * krunch.adb (Krunch): Deal with s-img, s-val and s-wid prefixes.
+       * rtsfind.ads (RTU_Id): Add System_Img_LLLI, System_Img_LLLU,
+       System_Val_LLLI, System_Val_LLL, System_Wid_Int, System_Wid_LLLI,
+       System_Wid_LLLU, System_Wid_Uns).
+       (RE_Id): Add RE_Image_Long_Long_Long_Integer,
+       RE_Image_Long_Long_Long_Unsigned,
+       RE_Put_Image_Long_Long_Long_Integer,
+       RE_Put_Image_Long_Long_Long_Unsigned,
+       RE_Long_Long_Long_Unsigned, RE_Value_Long_Long_Long_Integer,
+       RE_Value_Long_Long_Long_Unsigned, RE_Width_Integer,
+       RE_Width_Long_Long_Long_Integer, RE_Width_Long_Long_Long_Unsigned,
+       RE_Width_Unsigned, RE_Image_Long_Long_Long_Integer,
+       RE_Image_Long_Long_Long_Unsigned, RE_Put_Image_Long_Long_Long_Integer,
+       RE_Put_Image_Long_Long_Long_Unsigned, RE_Long_Long_Long_Unsigned,
+       RE_Value_Long_Long_Long_Integer, RE_Value_Long_Long_Long_Unsigned,
+       RE_Width_Integer, RE_Width_Long_Long_Long_Integer,
+       RE_Width_Long_Long_Long_Unsigned, RE_Width_Unsigned.
+       * libgnat/s-imageb.ads, libgnat/s-imageb.adb: New generic
+       package.
+       * libgnat/s-imagei.ads, libgnat/s-imagei.adb: Likewise.
+       * libgnat/s-imageu.ads, libgnat/s-imageu.adb: Likewise.
+       * libgnat/s-imagew.ads, libgnat/s-imagew.adb: Likewise.
+       * libgnat/s-imgbiu.ads: Instantiate System.Image_B.
+       * libgnat/s-imgbiu.adb: Add pragma No_Body.
+       * libgnat/s-imgint.ads: Instantiate System.Image_I.
+       * libgnat/s-imgint.adb: Add pragma No_Body.
+       * libgnat/s-imgllb.ads: Instantiate System.Image_B.
+       * libgnat/s-imgllb.adb: Add pragma No_Body0
+       * libgnat/s-imglli.ads: Instantiate System.Image_I.
+       * libgnat/s-imglli.adb: Add pragma No_Body.
+       * libgnat/s-imglllb.ads: Instantiate System.Image_B.
+       * libgnat/s-imgllli.ads: Instantiate System.Image_I.
+       * libgnat/s-imglllu.ads: Instantiate System.Image_U.
+       * libgnat/s-imglllw.ads: Instantiate System.Image_W.
+       * libgnat/s-imgllu.ads: Instantiate System.Image_U.
+       * libgnat/s-imgllu.adb: Add pragma No_Body.
+       * libgnat/s-imgllw.ads: Instantiate System.Image_W.
+       * libgnat/s-imgllw.adb: Add pragma No_Body.
+       * libgnat/s-imgrea.adb: Remove clauses for System.Unsigned_Types.
+       * libgnat/s-imguns.ads: Instantiate System.Image_U.
+       * libgnat/s-imguns.adb: Add pragma No_Body.
+       * libgnat/s-imgwiu.ads: Instantiate System.Image_W.
+       * libgnat/s-imgwiu.adb: Add pragma No_Body.
+       * libgnat/s-putima.ads (Long_Long_Long_Unsigned): New subtype.
+       (Put_Image_Long_Long_Long_Unsigned): New procedure.
+       * libgnat/s-putima.adb (Small): Rename to Integer_Images.
+       (Large): Rename to LL_Integer_Images.
+       (LLL_Integer_Images): New instantiation.
+       (Put_Image_Long_Long_Long_Integer): New renaming.
+       (Put_Image_Long_Long_Long_Unsigned): Likewise.
+       * libgnat/s-valint.ads: Instantiate System.Value_I.
+       * libgnat/s-valint.adb: Add pragma No_Body.
+       * libgnat/s-vallli.ads: Instantiate System.Value_I.
+       * libgnat/s-vallli.adb: Add pragma No_Body.
+       * libgnat/s-valllli.ads: Instantiate System.Value_I.
+       * libgnat/s-vallllu.ads: Instantiate System.Value_U.
+       * libgnat/s-valllu.ads: Instantiate System.Value_U.
+       * libgnat/s-valllu.adb: Add pragma No_Body.
+       * libgnat/s-valuei.ads, libgnat/s-valuei.adb: New generic
+       package.
+       * libgnat/s-valueu.ads, libgnat/s-valueu.adb: Likewise.
+       * libgnat/s-valuns.ads: Instantiate System.Value_U.
+       * libgnat/s-valuns.adb: Add pragma No_Body.
+       * libgnat/s-widint.ads: Instantiate System.Width_I.
+       * libgnat/s-widlli.ads: Likewise.
+       * libgnat/s-widlli.adb: Add pragma No_Body.
+       * libgnat/s-widllli.ads: Instantiate System.Width_I.
+       * libgnat/s-widlllu.ads: Instantiate System.Width_U.
+       * libgnat/s-widllu.ads: Likewise.
+       * libgnat/s-widllu.adb: Add pragma No_Body.
+       * libgnat/s-widthi.ads, libgnat/s-widthi.adb: New generic
+       package.
+       * libgnat/s-widthu.ads, libgnat/s-widthu.adb: Likewise.
+       * libgnat/s-widuns.ads: Instantiate System.Width_U.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * set_targ.adb (DTN): Fix oversight.
+       (Read_Target_Dependent_Values): Do not error out on missing
+       Long_Long_Long_Size entry and reuse Long_Long_Size for it.
+
+2020-10-21  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_aggr.adb (Gen_Loop): Analyze copy of the expression in the
+       scope of the implicit loop with name of the index parameter
+       visible.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * Makefile.rtl (GNATRTL_128BIT_PAIRS): New variable.
+       (GNATRTL_128BIT_OBJS): Likewise.
+       (Windows): In 64-bit mode, add the former to LIBGNAT_TARGET_PAIRS and
+       the latter to EXTRA_GNATRTL_NONTASKING_OBJS.
+       (x86_64/linux): Likewise, but unconditionally.
+       (GNATRTL_NONTASKING_OBJS): Add s-aridou, s-exponn, s-expont,
+       s-exponu.
+       * ada_get_targ.adb (Get_Long_Long_Long_Size): New function.
+       * checks.adb (Apply_Arithmetic_Overflow_Strict): Use Integer_Type_For
+       to find an appropriate integer type; if it does not exist and the max
+       integer size is larger than 64, use the 128-bit arithmetic routines.
+       * cstand.adb (Create_Standard): Build Standard_Long_Long_Long_Integer
+       and its base type.  Use it for Etype of Any_Integer, Any_Modular and
+       Any_Numeric.  Use its size for Build Standard_Long_Long_Long_Unsigned
+       and Universal_Integer.
+       (Print_Standard): Print Long_Long_Long_Integer.
+       * exp_attr.adb (Expand_N_Attribute_Reference) <Attribute_Mod>: Adjust
+       comment.
+       * exp_ch3.adb (Simple_Init_Initialize_Scalars_Type): Deal with 128-bit
+       types.
+       * exp_ch4.adb (Expand_Array_Comparison): Likewise.
+       (Expand_N_Op_Expon): Likewise.
+       (Narrow_Large_Operation): Likewise.
+       * exp_dbug.adb (Bounds_Match_Size): Handle 128-bit size.
+       * exp_fixd.adb (Build_Double_Divide_Code): Use RE_Double_Divide64.
+       * exp_intr.adb (Expand_Binary_Operator_Call): Handle 128-bit size.
+       * exp_pakd.ads (E_Array): Extend range to 127.
+       (Bits_Id): Fill in up to 127.
+       (Get_Id): Likewise.
+       (GetU_Id): Likewise.
+       (Set_Id): Likewise.
+       (SetU_Id): Likewise.
+       * exp_pakd.adb (Revert_Storage_Order): Handle 128-bit size.
+       * exp_util.adb (Integer_Type_For): Likewise.
+       (Small_Integer_Type_For): Likewise.
+       * fname.adb (Is_Predefined_File_Name): Do not return False for names
+       larger than 12 characters if they start with "s-".
+       * freeze.adb (Adjust_Esize_For_Alignment): Change the maximum value
+       to System_Max_Integer_Size.
+       (Check_Suspicious_Modulus): Adjust comment.
+       (Freeze_Entity): Likewise.
+       * get_targ.ads (Get_Long_Long_Long_Size): New function.
+       * get_targ.adb (Get_Long_Long_Long_Size): Likewise.
+       (Width_From_Size): Deal with 128-bit size.
+       * gnat1drv.adb (Adjust_Global_Switches): Deal with 128-bit types.
+       * impunit.adb (Get_Kind_Of_File): Bump buffer size.  Accept files with
+       13 characters if they start with 's'.  Compare slice of Buffer.
+       (Not_Impl_Defined_Unit): Accept files with 13 characters if they start
+       with 's'.
+       * krunch.ads: Document length for 128-bit support units.
+       * krunch.adb (Krunch): Set length to 9 for 128-bit support units.
+       * layout.adb (Layout_Type): Use System_Max_Integer_Size as alignment
+       limit.
+       * rtsfind.ads (RTU_Id): Add System_Arith_128,
+       System_Compare_Array_Signed_128, System_Compare_Array_Unsigned_128,
+       System_Exn_LLLI, System_Exp_LLLU, System_Pack_[65..127].
+       (RE_Id): Add RE_Integer_128, RE_Unsigned_128, RE_Add_With_Ovflo_Check128
+       RE_Multiply_With_Ovflo_Check128, RE_Subtract_With_Ovflo_Check128,
+       RE_Bswap_128, RE_Compare_Array_S128, RE_Compare_Array_U128,
+       RE_Exn_Long_Long_Long_Integer, RE_Exp_Long_Long_Long_Integer,
+       RE_Exp_Long_Long_Long_Unsigned, RE_Bits_[65-127], RE_Get_[65-127],
+       RE_Set_[65-127], RE_IS_Is16, RE_IS_Iu16, RE_Integer_128 and
+       RE_Unsigned_128.  Rename RE_Add_With_Ovflo_Check, RE_Double_Divide,
+       RE_Multiply_With_Ovflo_Check, RE_Scaled_Divide and
+       RE_Subtract_With_Ovflo_Check.  Remove RE_IS_Iz1, RE_IS_Iz2, RE_IS_Iz4,
+       RE_IS_Iz8, RE_Long_Unsigned, RE_Short_Unsigned, RE_Short_Short_Unsigned
+       (RE_Unit_Table): Likewise.
+       * sem_aux.adb (Corresponding_Unsigned_Type): Deal with a size equal to
+       that of Standard_Long_Long_Long_Integer.
+       (First_Subtype): Deal with Standard_Long_Long_Long_Integer'Base.
+       * sem_ch13.adb (Analyze_Attribute_Definition_Clause) <Attribute_Size>:
+       Check the size against powers of 2 and System_Max_Integer_Size for
+       objects as well.
+       (Set_Enum_Esize): Deal with 128-bit bounds.
+       * sem_ch3.adb (Set_Modular_Size): Handle 128-bit size.
+       (Modular_Type_Declaration): Deal with 128-bit types.
+       (Signed_Integer_Type_Declaration): Support derivation from
+       Standard_Long_Long_Long_Integer.
+       * sem_ch4.adb (Analyze_Mod): Handle 128-bit modulus.
+       * sem_intr.adb: Add with and use clauses for Ttypes.
+       (Check_Shift): Handle 128-bit size and modulus.
+       * sem_prag.adb (Analyze_Pragma) <Pragma_Initialize_Scalars>: Deal
+       with Signed_128 and Unsigned_128.
+       (Analyze_Integer_Value): Handle 128-bit size.
+       * sem_util.ads (Addressable): Adjust description.
+       * sem_util.adb (Addressable): Return true for 128 if the system
+       supports 128 bits.
+       (Set_Invalid_Binder_Values): Deal with Signed_128 and Unsigned_128.
+       * set_targ.ads (Long_Long_Long_Size): New variable.
+       * set_targ.adb (S_Long_Long_Long_Size): New constant.
+       (DTN): Add entry for S_Long_Long_Long_Size.
+       (DTV): Add entry for Long_Long_Long_Size.
+       (Set_Targ): Set Long_Long_Long_Size.
+       * snames.ads-tmpl (Name_Max_Integer_Size): New attribute name.
+       (Name_Signed_128): New scalar name.
+       (Name_Unsigned_128): Likewise.
+       (Scalar_Id): Adjust.
+       (Integer_Scalar_Id): Likewise.
+       (Attribute_Id): Add Attribute_Max_Integer_Size.
+       * stand.ads (Standard_Entity_Type): Add S_Long_Long_Long_Integer.
+       (Standard_Long_Long_Long_Integer): New renaming.
+       (Universal_Integer): Adjust description.
+       (Standard_Long_Long_Long_Unsigned): New variable.
+       * switch-c.adb (Scan_Front_End_Switches): Deal with -gnate128.
+       * ttypes.ads (Standard_Long_Long_Long_Integer_Size): New variable.
+       (Standard_Long_Long_Long_Integer_Width): Likewise.
+       (System_Max_Integer_Size): Turn into variable.
+       (System_Max_Binary_Modulus_Power): Likewise.
+       * uintp.ads (Uint_127): New constant.
+       * uintp.adb (UI_Power_2): Extednd to 128.
+       (UI_Power_10): Likewise.
+       (UI_Expon): Deal with exponent up to 128 specially.
+       * usage.adb (Write_Switch_Char): Print -gnate128 switch.
+       * libgnat/a-tifiio.adb (Put_Scaled): Call Scaled_Divide64.
+       * libgnat/interfac__2020.ads (Integer_128): New integer type.
+       (Unsigned_128): New modular type.
+       (Shift_Left, Shift_Right, Shift_Right_Arithmetic, Rotate_Left,
+       Rotate_Right): New intrinsic functions operating on it.
+       * libgnat/s-aridou.ads, libgnat/s-aridou.adb: New generic
+       package.
+       * libgnat/s-arit64.ads, libgnat/s-arit64.adb: Instantiate
+       System.Arithmetic_Double.
+       * libgnat/s-arit128.ads, libgnat/s-arit128.adb: Likewise.
+       * libgnat/s-bytswa.ads: Add with clause for Interfaces, use subtypes
+       of unsigned types defined in Interfaces and add Bswap_128.
+       * libgnat/s-casi128.ads, libgnat/s-casi128.adb: New package.
+       * libgnat/s-caun128.ads, libgnat/s-caun128.adb: Likewise.
+       * libgnat/s-exnint.ads: Instantiate System.Exponn.
+       * libgnat/s-exnint.adb: Add pragma No_Body.
+       * libgnat/s-exnlli.ads: Instantiate System.Exponn.
+       * libgnat/s-exnlli.adb: Add pragma No_Body.
+       * libgnat/s-exnllli.ads: Instantiate System.Exponn.
+       * libgnat/s-expint.ads: Likewise.
+       * libgnat/s-expint.adb: Add pragma No_Body.
+       * libgnat/s-explli.ads: Instantiate System.Exponn.
+       * libgnat/s-explli.adb: Add pragma No_Body.
+       * libgnat/s-expllli.ads: Instantiate System.Exponn.
+       * libgnat/s-explllu.ads: Instantiate System.Exponu.
+       * libgnat/s-expllu.ads: Likewise.
+       * libgnat/s-expllu.adb: Add pragma No_Body.
+       * libgnat/s-exponn.ads, libgnat/s-exponn.adb: New generic
+       function.
+       * libgnat/s-expont.ads, libgnat/s-expont.adb: Likewise.
+       * libgnat/s-exponu.ads, libgnat/s-exponu.adb: Likewise.
+       * libgnat/s-expuns.ads, libgnat/s-expuns.adb: Likewise.
+       * libgnat/s-pack65.ads, libgnat/s-pack65.adb: New package.
+       * libgnat/s-pack66.ads, libgnat/s-pack66.adb: New package.
+       * libgnat/s-pack67.ads, libgnat/s-pack67.adb: New package.
+       * libgnat/s-pack68.ads, libgnat/s-pack68.adb: New package.
+       * libgnat/s-pack69.ads, libgnat/s-pack69.adb: New package.
+       * libgnat/s-pack70.ads, libgnat/s-pack70.adb: New package.
+       * libgnat/s-pack71.ads, libgnat/s-pack71.adb: New package.
+       * libgnat/s-pack72.ads, libgnat/s-pack72.adb: New package.
+       * libgnat/s-pack73.ads, libgnat/s-pack73.adb: New package.
+       * libgnat/s-pack74.ads, libgnat/s-pack74.adb: New package.
+       * libgnat/s-pack75.ads, libgnat/s-pack75.adb: New package.
+       * libgnat/s-pack76.ads, libgnat/s-pack76.adb: New package.
+       * libgnat/s-pack77.ads, libgnat/s-pack77.adb: New package.
+       * libgnat/s-pack78.ads, libgnat/s-pack78.adb: New package.
+       * libgnat/s-pack79.ads, libgnat/s-pack79.adb: New package.
+       * libgnat/s-pack80.ads, libgnat/s-pack80.adb: New package.
+       * libgnat/s-pack81.ads, libgnat/s-pack81.adb: New package.
+       * libgnat/s-pack82.ads, libgnat/s-pack82.adb: New package.
+       * libgnat/s-pack83.ads, libgnat/s-pack83.adb: New package.
+       * libgnat/s-pack84.ads, libgnat/s-pack84.adb: New package.
+       * libgnat/s-pack85.ads, libgnat/s-pack85.adb: New package.
+       * libgnat/s-pack86.ads, libgnat/s-pack86.adb: New package.
+       * libgnat/s-pack87.ads, libgnat/s-pack87.adb: New package.
+       * libgnat/s-pack88.ads, libgnat/s-pack88.adb: New package.
+       * libgnat/s-pack89.ads, libgnat/s-pack89.adb: New package.
+       * libgnat/s-pack90.ads, libgnat/s-pack90.adb: New package.
+       * libgnat/s-pack91.ads, libgnat/s-pack91.adb: New package.
+       * libgnat/s-pack92.ads, libgnat/s-pack92.adb: New package.
+       * libgnat/s-pack93.ads, libgnat/s-pack93.adb: New package.
+       * libgnat/s-pack94.ads, libgnat/s-pack94.adb: New package.
+       * libgnat/s-pack95.ads, libgnat/s-pack95.adb: New package.
+       * libgnat/s-pack96.ads, libgnat/s-pack96.adb: New package.
+       * libgnat/s-pack97.ads, libgnat/s-pack97.adb: New package.
+       * libgnat/s-pack98.ads, libgnat/s-pack98.adb: New package.
+       * libgnat/s-pack99.ads, libgnat/s-pack99.adb: New package.
+       * libgnat/s-pack100.ads, libgnat/s-pack100.adb: New package.
+       * libgnat/s-pack101.ads, libgnat/s-pack101.adb: New package.
+       * libgnat/s-pack102.ads, libgnat/s-pack102.adb: New package.
+       * libgnat/s-pack103.ads, libgnat/s-pack103.adb: New package.
+       * libgnat/s-pack104.ads, libgnat/s-pack104.adb: New package.
+       * libgnat/s-pack105.ads, libgnat/s-pack105.adb: New package.
+       * libgnat/s-pack106.ads, libgnat/s-pack106.adb: New package.
+       * libgnat/s-pack107.ads, libgnat/s-pack107.adb: New package.
+       * libgnat/s-pack108.ads, libgnat/s-pack108.adb: New package.
+       * libgnat/s-pack109.ads, libgnat/s-pack109.adb: New package.
+       * libgnat/s-pack110.ads, libgnat/s-pack110.adb: New package.
+       * libgnat/s-pack111.ads, libgnat/s-pack111.adb: New package.
+       * libgnat/s-pack112.ads, libgnat/s-pack112.adb: New package.
+       * libgnat/s-pack113.ads, libgnat/s-pack113.adb: New package.
+       * libgnat/s-pack114.ads, libgnat/s-pack114.adb: New package.
+       * libgnat/s-pack115.ads, libgnat/s-pack115.adb: New package.
+       * libgnat/s-pack116.ads, libgnat/s-pack116.adb: New package.
+       * libgnat/s-pack117.ads, libgnat/s-pack117.adb: New package.
+       * libgnat/s-pack118.ads, libgnat/s-pack118.adb: New package.
+       * libgnat/s-pack119.ads, libgnat/s-pack119.adb: New package.
+       * libgnat/s-pack120.ads, libgnat/s-pack120.adb: New package.
+       * libgnat/s-pack121.ads, libgnat/s-pack121.adb: New package.
+       * libgnat/s-pack122.ads, libgnat/s-pack122.adb: New package.
+       * libgnat/s-pack123.ads, libgnat/s-pack123.adb: New package.
+       * libgnat/s-pack124.ads, libgnat/s-pack124.adb: New package.
+       * libgnat/s-pack125.ads, libgnat/s-pack125.adb: New package.
+       * libgnat/s-pack126.ads, libgnat/s-pack126.adb: New package.
+       * libgnat/s-pack127.ads, libgnat/s-pack127.adb: New package.
+       * libgnat/s-rannum.ads (Random): New function returning 128-bit.
+       * libgnat/s-rannum.adb (Random): Implement it.
+       * libgnat/s-scaval.ads: Add with clause for Interfaces, use subtypes
+       of unsigned types defined in Interfaces.
+       * libgnat/s-scaval.adb: Add use clause for Interfaces.
+       * libgnat/s-scaval__128.ads, libgnat/s-scaval__128.adb: New
+       package.
+       * libgnat/s-unstyp.ads (Long_Long_Long_Unsigned): New modular type.
+       (Shift_Left, Shift_Right, Shift_Right_Arithmetic, Rotate_Left,
+       Rotate_Right): New intrinsic functions operating on it.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * doc/gnat_rm/implementation_defined_characteristics.rst: Add
+       Long_Long_Long_Integer to the list of predefined integer types.
+       * gnat_rm.texi: Regenerate.
+
+2020-10-21  Yannick Moy  <moy@adacore.com>
+
+       * ada_get_targ.adb (Width_From_Size): Add case for 128 bits.
+       Reorder declarations in the same order as get_targ.adb to
+       facilitate diffs.
+
+2020-10-21  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_aggr.adb (Expand_N_Aggregate): Refactor repeated calls to
+       Etype (N).
+       (Build_Array_Aggr_Code): Fix whitespace.
+
+2020-10-21  Dmitriy Anisimkov  <anisimko@adacore.com>
+
+       * adaint.c (__gnat_file_time): Use regular arithmetic instead of
+       __builtin_*_overflow routines if GCC version 4 or less and
+       compiler is g++.
+
+2020-10-21  Piotr Trojanek  <trojanek@adacore.com>
+
+       * sem_aggr.adb (Resolve_Array_Aggregate): Use Choice_List, which
+       internally calls either Choice or Discrete_Choices, depending on
+       the context.
+
+2020-10-21  Piotr Trojanek  <trojanek@adacore.com>
+
+       * sem_aggr.adb (Resolve_Iterated_Component_Association): Use
+       existing defining identifier for index parameter.
+
+2020-10-21  Javier Miranda  <miranda@adacore.com>
+
+       * exp_ch9.adb (Build_Task_Activation_Call): Do not generate a
+       call to activate tasks if we are within the scope of a protected
+       type and pragma Detect_Blocking is active.
+
+2020-10-21  Liaiss Merzougue  <merzougue@adacore.com>
+
+       * libgnat/s-carsi8.adb (Compare_Array_S8): Add pragma Assert to
+       avoid warning concerning Left_Len and RighLen value regarding
+       Bytes_Compared_As_Words.
+       * libgnat/s-carun8.adb (Compare_Array_U8): Likewise.
+       * libgnat/s-geveop.adb (Binary_Operation, Unary_Operation): Add
+       pragma Assert concerning divide by 0 warning.
+       * libgnat/s-imgcha.adb (Image_Character): Code update to prevent
+       constant operation warning.
+       (Image_Character): Add pragma Assert concerning the unchecked
+       String size.
+       * libgnat/s-imgdec.adb
+       (Round): Upate loop code to prevent warning concerning
+       Digs'First access.
+       (Round): Add pragma assert.
+       (Set): Add pragma Assert for the unchecked string size.
+       (Set_Digits): Add pragma Assert for the input range.
+       (Set_Decimal_Digits): Add pragma Assert.
+       (Set_Blank_And_Sign): Add pragma Assert for the input range.
+       * libgnat/s-arit64.adb (DoubleDivide): Add pragma Assert
+       concerning Du /= 0.
+       (Multiply_With_Ovflo_Check): Add pragma Annotate to avoid
+       warning concerning unsigned -> signed conversion.
+       * libgnat/s-imguns.adb (Set_Image_Unsigned): Add pragma Assert
+       to prevent overflow check warning.  Add pragma Assert for
+       controlling S'First = 1.
+       * libgnat/s-imgrea.adb (Image_Floating_Point, Set, Set_Digs,
+       Set_Special_Fill, Convert_Integer): Add pragma Annotate to
+       prevent overflow check warning.
+       (Set_Image_Real): Add pragma Annotate to avoid dead code warning
+       on float check. Add pragma Assert to prevent overflow check
+       warning.
+       * libgnat/s-imgwiu.adb (Set_Digits, Set_Image_Width_Unsigned):
+       Add pragma assert to prevent overflow check warning.
+       * libgnat/s-imgllu.adb (Set_Image_Long_Long_Unsigned): Add
+       pragma assert to prevent overflow check warning.
+       * libgnat/s-imgint.adb (Set_Digits): Add Assert for input
+       constraint and to prevent overflow check warning, create
+       Non_Positive subtype, and change the T parameter as Non_Positive
+       instead Integer.
+       (Set_Image_Integer): Add pragma assert to prevent overflow check
+       warning.
+       * libgnat/s-imglli.adb (Set_Digits): Add Assert for input
+       constraint and to prevent overflow check warning, create
+       Non_Positive subtype, and change the T parameter as Non_Positive
+       instead Integer.
+       (Set_Image_Long_Long_Integer): Add pragma assert to prevent
+       overflow check warning.
+       * libgnat/s-fatgen.adb (Decompose, Pred, Succ): Add pragma
+       Annotate to prevent dead code due to invalid float check.
+       * libgnat/s-imenne.adb (Image_Enumeration_8,
+       Image_Enumeration_16, Image_Enumeration_32): Add pragma Assert
+       to prevent overflow check warning.  Add Names_Index subtype for
+       restricting Index_table content.
+
+2020-10-21  Gary Dismukes  <dismukes@adacore.com>
+
+       * exp_ch6.adb (Insert_Post_Call_Actions): Test for
+       N_Explicit_Dereference as part of the existing test for function
+       calls.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * freeze.adb (Check_Strict_Alignment): Do not set the flag for
+       a bit-packed array type, even if it is a by-reference type.
+
+2020-10-21  Dmitriy Anisimkov  <anisimko@adacore.com>
+
+       * adaint.c (__gnat_file_time): New routine.
+       (__gnat_copy_attribs): Copy timestamps in nanoseconds.
+       * libgnat/a-direct.adb (C_Modification_Time): Bind to
+       __gnat_file_time.
+       (Modification_Time): Call to C_Modification_Time.
+
+2020-10-21  Piotr Trojanek  <trojanek@adacore.com>
+
+       * sem_aggr.adb (Resolve_Iterated_Component_Association):
+       Expression's copy and now has the same parent as the original
+       expression.
+       (Resolve_Array_Aggregate): Add ??? comment about a still
+       existing minor issue that led to discovery of the above crash.
+
+2020-10-21  Javier Miranda  <miranda@adacore.com>
+
+       * sem_ch12.adb (Install_Parents_Of_Generic_Context): Simplify
+       functionality; collect and install parents of generic child
+       package.
+       (Remove_Parents_Of_Generic_Context): Code cleanup.
+       (Instantiate_Package_Body): Hide parents of generic context from
+       visibility before installing the parent instance; restore their
+       visibility when the instance is analyzed
+
+2020-10-21  Doug Rupp  <rupp@adacore.com>
+
+       * libgnarl/s-osinte__lynxos178e.ads: Remove -mthreads switch.
+
+2020-10-21  Patrick Bernardi  <bernardi@adacore.com>
+
+       * env.c (__gnat_setenv): call setenv for VxWorks 7 kernel mode.
+       (__gnat_environ): envGet takes an int instead of a NULL pointer.
+       (__gnat_unsetenv): call unsetenv for VxWorks 7 kernel mode.
+       (__gnat_clearenv): use __gnat_unsetenv to clear environment
+       variables.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * sem_ch12.adb (Freeze_Subprogram_Body): Call
+       Package_Freeze_Node to retrieve the freeze node for the
+       enclosing body of the generic.
+
+2020-10-21  Justin Squirek  <squirek@adacore.com>
+
+       * exp_ch6.adb (Expand_Call_Helper): Modify calls to
+       Add_Extra_Actual to use Extra_Accessibility instead of
+       Get_Accessibility for the EF parameter.
+
+2020-10-21  Piotr Trojanek  <trojanek@adacore.com>
+
+       * exp_ch6.adb (Expand_Actuals): Whitespace cleanup.
+       * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Make minimum
+       accessibility a constant object.
+
+2020-10-21  Patrick Bernardi  <bernardi@adacore.com>
+
+       * env.c (__gnat_environ): For VxWorks kernel simply return the
+       result of the envGet call. Do this for VxWorks 6 and 7 as they
+       both support the same API.
+
+2020-10-21  Ghjuvan Lacambre  <lacambre@adacore.com>
+
+       * exp_ch7.adb (Build_Finalizer): Disable warnings on referenced
+       entity.
+
+2020-10-21  Piotr Trojanek  <trojanek@adacore.com>
+
+       * einfo.ads, sem_ch3.adb, sem_util.adb: Fix comments.
+
+2020-10-21  Javier Miranda  <miranda@adacore.com>
+
+       * sem_ch3.adb (Build_Derived_Type): Propagate convention of
+       class-wide parent.
+
+2020-10-21  Claire Dross  <dross@adacore.com>
+
+       * libgnat/a-cofove.adb (Copy): Add explanation in case of
+       Capacity_Error.
+       (Insert_Space): Raise Capacity_Error if the new length is
+       greater than the capacity.
+       (Reserve_Capacity): Raise Capacity_Error instead of
+       Constraint_Error.
+
 2020-10-20  Piotr Trojanek  <trojanek@adacore.com>
 
        * sem_ch3.adb (Constrain_Decimal, Constrain_Enumeration,
index f711a2908dff937d7b5d3a6944a2667f2990b274..e6f1920da861f3eaaf2838e25137f5fdcf8c4c31 100644 (file)
@@ -1,3 +1,19 @@
+2020-10-22  Martin Liska  <mliska@suse.cz>
+
+       PR c/94722
+       * c-attribs.c (handle_no_stack_protect_function_attribute): New.
+       (handle_stack_protect_attribute): Add error message for a
+       no_stack_protector function.
+
+2020-10-22  Martin Liska  <mliska@suse.cz>
+
+       * c-cppbuiltin.c (c_cpp_builtins): Use the stack_protector enum.
+
+2020-10-22  Jan Hubicka  <hubicka@ucw.cz>
+
+       * c-gimplify.c: Include tree-nested.h
+       (c_genericize): Update for new nested function info.
+
 2020-10-14  Martin Sebor  <msebor@redhat.com>
 
        PR c/97413
index 58a732f26b54375db3e703899c846aa1851971c6..e35f984386fd08ba20ba9d1d6d0532448a595d96 100644 (file)
@@ -1,3 +1,8 @@
+2020-10-22  Jan Hubicka  <hubicka@ucw.cz>
+
+       * decl.cc: Include tree-nested.h
+       (get_symbol_decl): Update for new nested function info.
+
 2020-10-12  Iain Buclaw  <ibuclaw@gdcproject.org>
 
        * dmd/MERGE: Merge upstream dmd 70aabfb51
index c8274bc017b25f6508366cc97b42adb8a86b5ccb..8b4e32961510b8421d9cb45fe057dd922c7aad42 100644 (file)
@@ -1,3 +1,9 @@
+2020-10-21  Tobias Burnus  <tobias@codesourcery.com>
+
+       PR fortran/45516
+       * class.c: Add _deallocate to the vtable documentation
+       comment.
+
 2020-10-16  Harald Anlauf  <anlauf@gmx.de>
 
        PR fortran/95979
index 304d44c9de6e49fe1106751abd1947ab7680e6b0..888d99c043aa562319e2a1fd2bd6864c89c3be26 100644 (file)
@@ -1,3 +1,151 @@
+2020-10-22  Martin Liska  <mliska@suse.cz>
+
+       PR c/94722
+       * g++.dg/no-stack-protector-attr-2.C: New test.
+       * g++.dg/no-stack-protector-attr-3.C: New test.
+       * g++.dg/no-stack-protector-attr.C: New test.
+
+2020-10-22  liuhongt  <hongtao.liu@intel.com>
+
+       * gcc.target/i386/pr97249-1.c: New test.
+
+2020-10-22  Dennis Zhang  <dennis.zh@live.com>
+
+       * gcc.target/arm/simd/mve-vminmax_1.c: New test.
+
+2020-10-22  Andrew MacLeod  <amacleod@redhat.com>
+
+       * gcc.dg/pr97520.c: New.
+
+2020-10-22  Dennis Zhang  <dennis.zh@live.com>
+
+       * gcc.target/arm/simd/mve-vmul_1.c: New test.
+
+2020-10-22  Andrew MacLeod  <amacleod@redhat.com>
+
+       PR tree-optimization/97515
+       * gcc.dg/pr97515.c: New file.
+
+2020-10-21  David Edelsohn  <dje.gcc@gmail.com>
+
+       * gcc.target/powerpc/fold-vec-extract-float.p9.c: rldicl and
+       subfic only for target LE.
+       * gcc.target/powerpc/fold-vec-extract-longlong.p9.c: xori only
+       for target LE.  Adjust mfvsrd and add mfvsrld for BE.
+       * gcc.target/powerpc/fold-vec-extract-short.p9.c: vextuhrx for LE.
+       vextuhlx for BE.
+       * gcc.target/powerpc/p9-lxvx-stxvx-1.c: Remove target.
+       * gcc.target/powerpc/p9-lxvx-stxvx-2.c: Remove target.
+       * gcc.target/powerpc/p9-lxvx-stxvx-3.c: Remove target. Require
+       float128
+
+2020-10-21  Martin Liska  <mliska@suse.cz>
+           Andrew MacLeod  <amacleod@redhat.com>
+
+       PR target/97360
+       * gcc.target/powerpc/pr97360.c: New test.
+
+2020-10-21  Jan Hubicka  <jh@suse.cz>
+
+       PR ipa/97445
+       * gcc.dg/ipa/inlinehint-5.c: New test.
+
+2020-10-21  David Edelsohn  <dje.gcc@gmail.com>
+
+       * gcc.target/powerpc/p9-extract-1.c: Require lp64.
+       * gcc.target/powerpc/p9-extract-2.c: Require lp64.
+       * gcc.target/powerpc/p9-extract-3.c: Require lp64.
+       * gcc.target/powerpc/p9-permute.c: Remove target.
+       * gcc.target/powerpc/pr63335.c: Remove target.
+       * gcc.target/powerpc/pr87507.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-1.c: Require LE and P8.
+       * gcc.target/powerpc/swaps-p8-10.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-11.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-12.c: Require LE and P8.
+       * gcc.target/powerpc/swaps-p8-13.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-14.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-15.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-16.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-17.c: Require P8.
+       * gcc.target/powerpc/swaps-p8-18.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-19.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-2.c: Require LE and P8.
+       * gcc.target/powerpc/swaps-p8-20.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-21.c: Remove target. Require Altivec.
+       * gcc.target/powerpc/swaps-p8-22.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-23.c: Require LE and P8.
+       * gcc.target/powerpc/swaps-p8-24.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-25.c: Require LE and P8.
+       * gcc.target/powerpc/swaps-p8-26.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-27.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-28.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-29.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-3.c: Require LE and P8.
+       * gcc.target/powerpc/swaps-p8-30.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-31.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-32.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-33.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-34.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-35.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-36.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-37.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-38.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-39.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-4.c: Require LE and P8.
+       * gcc.target/powerpc/swaps-p8-40.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-41.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-42.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-43.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-44.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-45.c: Remove target.
+       * gcc.target/powerpc/swaps-p8-46.c: Require LE.
+       * gcc.target/powerpc/swaps-p8-5.c: Require LE and P8.
+       * gcc.target/powerpc/swaps-p8-6.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-7.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-8.c: Remove target. Require P8.
+       * gcc.target/powerpc/swaps-p8-9.c: Remove target. Require P8.
+       * gcc.target/powerpc/vec-cmp.c: Require LP64.
+       * gcc.target/powerpc/vec-cmpne.c: Remove target.
+       * gcc.target/powerpc/vec-mul.c: Remove target.
+       * gcc.target/powerpc/vec-set-char.c: Require LP64.
+       * gcc.target/powerpc/vec-set-int.c: Require LP64.
+       * gcc.target/powerpc/vec-set-short.c: Require LP64.
+       * gcc.target/powerpc/vec-xxpermdi.c: Remove target. Require VSX.
+       * gcc.target/powerpc/vsxcopy.c: Remove target. Require VSX.
+
+2020-10-21  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/97500
+       * gfortran.dg/pr97500.f90: New testcase.
+
+2020-10-21  liuhongt  <hongtao.liu@intel.com>
+
+       PR target/97506
+       * gcc.target/i386/pr97506.c: New test.
+
+2020-10-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/97503
+       * gcc.dg/tree-ssa/pr97503.c: New test.
+
+2020-10-21  Martin Liska  <mliska@suse.cz>
+
+       PR sanitizer/97414
+       * g++.dg/asan/pr97414.C: New test.
+
+2020-10-21  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gnat.dg/multfixed.adb: Update expected exception message.
+
+2020-10-21  Andrea Corallo  <andrea.corallo@arm.com>
+
+       * gcc.target/aarch64/advsimd-intrinsics/vstX_lane.c (CMT):
+       Adopt the same style used in the rest of the file.
+
+2020-10-21  Aldy Hernandez  <aldyh@redhat.com>
+
+       * gcc.dg/Walloca-1.c: Adjust for 32-bits.
+
 2020-10-22  Dennis Zhang  <dennis.zhang@arm.com>
 
        * gcc.target/arm/simd/mve-vminmax_1.c: New test.
index d8cd4325905d68ab966d8d7f356905ba0e974323..5b1faafc9aa1b9a65bff1d5262f7e4d63bbb8a02 100644 (file)
@@ -1,3 +1,11 @@
+2020-10-21  Douglas Rupp  <rupp@adacore.com>
+           Olivier Hainque  <hainque@adacore.com>
+
+       * config.host (powerpc*-wrs-vxworks7*): New case.
+       * configure.ac: Handle powerpc*-*-vxworks7* as
+       powerpc*-*-linux* for ppc-fp_type.
+       * configure: Regenerate.
+
 2020-10-16  Rasmus Villemoes  <rv@rasmusvillemoes.dk>
 
        * config/gthr-vxworks.h: Condition the ___GTHREADS_CXX0X
index 931df0a19eb3231405b7399041ee65566070a1da..35b6689276e9e659c75f243711d389579f9eb794 100644 (file)
@@ -1,3 +1,34 @@
+2020-10-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * testsuite/libgomp.c/target-41.c: New test.
+
+2020-10-22  Jakub Jelinek  <jakub@redhat.com>
+
+       * icv.c (omp_get_initial_device): Remove including corresponding
+       ialias.
+       * icv-device.c (omp_get_initial_device): New function.  Return
+       gomp_get_num_devices ().  Add ialias.
+       * target.c (resolve_device): Don't fail with
+       OMP_TARGET_OFFLOAD=mandatory if device_id is equal to
+       gomp_get_num_devices ().
+       (omp_target_alloc, omp_target_free, omp_target_is_present,
+       omp_target_memcpy, omp_target_memcpy_rect, omp_target_associate_ptr,
+       omp_target_disassociate_ptr, omp_pause_resource): Use
+       gomp_get_num_devices () instead of GOMP_DEVICE_HOST_FALLBACK on the
+       first use in the functions, in uses dominated by the
+       gomp_get_num_devices call use num_devices_openmp instead.
+       * libgomp.texi (omp_get_initial_device): Document.
+       * config/gcn/icv-device.c (omp_get_initial_device): New function.
+       Add ialias.
+       * config/nvptx/icv-device.c (omp_get_initial_device): Likewise.
+       * testsuite/libgomp.c/target-40.c: New test.
+
+2020-10-21  Jakub Jelinek  <jakub@redhat.com>
+
+       * env.c (parse_target_offload): Change new_offload var type to int,
+       preinitialize to -1, remove found var and test new_offload != -1
+       instead of found.
+
 2020-10-20  Jakub Jelinek  <jakub@redhat.com>
 
        * target.c (gomp_target_init): Inside of the function, use automatic
index b898cee82955a88e1acf38ad019fbf3abd3ad78a..1dd1b69f476cd7063a48694d6bcf39e90e268e08 100644 (file)
@@ -1,3 +1,41 @@
+2020-10-21  Jonathan Wakely  <jwakely@redhat.com>
+
+       * include/bits/shared_ptr.h (shared_ptr(const weak_ptr&, nothrow_t)):
+       Add noexcept.
+       * include/bits/shared_ptr_base.h (_Sp_counted_base::_M_add_ref_lock):
+       Remove specializations and just call _M_add_ref_lock_nothrow.
+       (__shared_count, __shared_ptr): Use nullptr for null pointer
+       constants.
+       (__shared_count(const __weak_count&)): Use _M_add_ref_lock_nothrow
+       instead of _M_add_ref_lock.
+       (__shared_count(const __weak_count&, nothrow_t)): Add noexcept.
+       (__shared_ptr::operator bool()): Add noexcept.
+       (__shared_ptr(const __weak_ptr&, nothrow_t)): Add noexcept.
+
+2020-10-21  Jonathan Wakely  <jwakely@redhat.com>
+
+       PR libstdc++/97512
+       * include/bits/ranges_util.h (tuple_size<subrange>)
+       (tuple_element<I, cv subrange>): Move here from ...
+       * include/std/ranges: ... here.
+       * testsuite/std/ranges/subrange/97512.cc: New test.
+
+2020-10-21  Thomas Rodgers  <trodgers@redhat.com>
+
+       * include/pstl/algorithm_impl.h: Update file.
+       * include/pstl/execution_impl.h: Likewise.
+       * include/pstl/glue_algorithm_impl.h: Likewise.
+       * include/pstl/glue_memory_impl.h: Likewise.
+       * include/pstl/glue_numeric_impl.h: Likewise.
+       * include/pstl/memory_impl.h: Likewise.
+       * include/pstl/numeric_impl.h: Likewise.
+       * include/pstl/parallel_backend.h: Likewise.
+       * include/pstl/parallel_backend_serial.h: Likewise.
+       * include/pstl/parallel_backend_tbb.h: Likewise.
+       * include/pstl/parallel_backend_utils.h: Likewise.
+       * include/pstl/pstl_config.h: Likewise.
+       * include/pstl/unseq_backend_simd.h: Likewise.
+
 2020-10-20  François Dumont  <fdumont@gcc.gnu.org>
 
        * include/bits/hashtable_policy.h