From: GCC Administrator Date: Thu, 22 Oct 2020 08:28:22 +0000 (+0000) Subject: Daily bump. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=56ddd5e23af0906573e7d50348beb42d3dae82a9;p=gcc.git Daily bump. --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 59fa1ad4d5d..e82530f66af 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,335 @@ +2020-10-22 Martin Liska + + 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * ipa-pure-const.c (funct_state_summary_t::insert): Free stale + summaries. + +2020-10-22 Jan Hubicka + + * 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 + + 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 + + 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 + (*3): Extend + predicate and constraints to handle bcst_mem_operand. + (*mul3): Ditto. + (_div3): Ditto. + (fma_fmadd_): + Ditto. + (fma_fmsub_): + Ditto. + (fma_fnmadd_): + Ditto. + (fma_fnmsub_): + Ditto. + (*3): Ditto. + (avx512dq_mul3): Ditto. + (*_mul3): Ditto. + (*andnot3): Ditto. + (3): Ditto. + (*sub3_bcst): Removed. + (*add3_bcst): Ditto. + (*mul3_bcst): Ditto. + (*_div3_bcst): Ditto. + (*fma_fmadd__bcst_1): + Ditto. + (*fma_fmadd__bcst_2): + Ditto. + (*fma_fmadd__bcst_3): + Ditto. + (*fma_fmsub__bcst_1): + Ditto. + (*fma_fmsub__bcst_2): + Ditto. + (*fma_fmsub__bcst_3): + Ditto. + (*fma_fnmadd__bcst_1): + Ditto. + (*fma_fnmadd__bcst_2): + Ditto. + (*fma_fnmadd__bcst_3): + Ditto. + (*fma_fnmsub__bcst_1): + Ditto. + (*fma_fnmsub__bcst_2): + Ditto. + (*fma_fnmsub__bcst_3): + Ditto. + (*sub3_bcst): Ditto. + (*add3_bcst): Ditto. + (*avx512dq_mul3_bcst): Ditto. + (*avx512f_mul3_bcst): Ditto. + (*andnot3_bcst): Ditto. + (*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 + + 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 + + * config/arm/mve.md (mve_vmaxq_): Replace with ... + (mve_vmaxq_s, mve_vmaxq_u): ... these new insns to + use smax/umax instead of VMAXQ. + (mve_vminq_): Replace with ... + (mve_vminq_s, mve_vminq_u): ... these new insns to + use smin/umin instead of VMINQ. + (mve_vmaxnmq_f): Use smax instead of VMAXNMQ_F. + (mve_vminnmq_f): Use smin instead of VMINNMQ_F. + * config/arm/vec-common.md (smin3): Use the new mode macros + ARM_HAVE__ARITH. + (umin3, smax3, umax3): Likewise. + +2020-10-22 Andrew MacLeod + + 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 + + * config/arm/mve.md (mve_vmulq): New entry for vmul instruction + using expression 'mult'. + (mve_vmulq_f): Use mult instead of VMULQ_F. + * config/arm/neon.md (mul3): Removed. + * config/arm/vec-common.md (mul3): Use the new mode macros + ARM_HAVE__ARITH. Use mode iterator VDQWH instead of VALLW. + +2020-10-22 Andrew MacLeod + + 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 + + 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 + Andrew MacLeod + Martin Liska + + PR target/97360 + * config/rs6000/rs6000-call.c (rs6000_init_builtins): Remove call to + build_distinct_type_copy(). + +2020-10-21 Jan Hubicka + + 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 + + * config/vx-common.h (LINK_SPEC, LIB_SPEC): Remove #undef. + +2020-10-21 Douglas Rupp + Olivier Hainque + + * 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 + + PR tree-optimization/97500 + * tree-vect-slp.c (vect_analyze_slp_backedges): Do not + fill backedges for inductions. + +2020-10-21 liuhongt + + 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 + + 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 + + * cfg.c (htab_bb_copy_original_entry): Remove. + (bb_copy_hasher): Likewise. + (bb_original, bb_copy, loop_copy): Use + hash_map, 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 + + * cfghooks.c (copy_bbs): Split out loop computing new_edges. + +2020-10-21 Aldy Hernandez + + * 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 + + * 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 * config/arm/mve.md (mve_vmaxq_): Replace with ... diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 8a26653d7f8..d3ccbf5b38e 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20201021 +20201022 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 85d1f54f020..dceca5b9b9a 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,608 @@ +2020-10-22 Martin Liska + + 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 + + * Makefile.rtl (LIBGNAT_TARGET_PAIRS) : Rely on + Aux_Long_Float for all real types. + +2020-10-22 Alexandre Oliva + + * 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 + + * Makefile.rtl (LIBGNAT_TARGET_PAIRS) : + Use wraplf version of a-nallfl. + +2020-10-22 Alexandre Oliva + + * 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 + + * gcc-interface/trans.c: Include tree-nested.h + (walk_nesting_tree): Update for new nested function info. + +2020-10-21 Eric Botcazou + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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) : 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) : + 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) : 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 + + * 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 + + * 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 + + * exp_aggr.adb (Expand_N_Aggregate): Refactor repeated calls to + Etype (N). + (Build_Array_Aggr_Code): Fix whitespace. + +2020-10-21 Dmitriy Anisimkov + + * 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 + + * 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 + + * sem_aggr.adb (Resolve_Iterated_Component_Association): Use + existing defining identifier for index parameter. + +2020-10-21 Javier Miranda + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * libgnarl/s-osinte__lynxos178e.ads: Remove -mthreads switch. + +2020-10-21 Patrick Bernardi + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * exp_ch7.adb (Build_Finalizer): Disable warnings on referenced + entity. + +2020-10-21 Piotr Trojanek + + * einfo.ads, sem_ch3.adb, sem_util.adb: Fix comments. + +2020-10-21 Javier Miranda + + * sem_ch3.adb (Build_Derived_Type): Propagate convention of + class-wide parent. + +2020-10-21 Claire Dross + + * 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 * sem_ch3.adb (Constrain_Decimal, Constrain_Enumeration, diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index f711a2908df..e6f1920da86 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,19 @@ +2020-10-22 Martin Liska + + 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 + + * c-cppbuiltin.c (c_cpp_builtins): Use the stack_protector enum. + +2020-10-22 Jan Hubicka + + * c-gimplify.c: Include tree-nested.h + (c_genericize): Update for new nested function info. + 2020-10-14 Martin Sebor PR c/97413 diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog index 58a732f26b5..e35f984386f 100644 --- a/gcc/d/ChangeLog +++ b/gcc/d/ChangeLog @@ -1,3 +1,8 @@ +2020-10-22 Jan Hubicka + + * decl.cc: Include tree-nested.h + (get_symbol_decl): Update for new nested function info. + 2020-10-12 Iain Buclaw * dmd/MERGE: Merge upstream dmd 70aabfb51 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index c8274bc017b..8b4e3296151 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2020-10-21 Tobias Burnus + + PR fortran/45516 + * class.c: Add _deallocate to the vtable documentation + comment. + 2020-10-16 Harald Anlauf PR fortran/95979 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 304d44c9de6..888d99c043a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,151 @@ +2020-10-22 Martin Liska + + 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 + + * gcc.target/i386/pr97249-1.c: New test. + +2020-10-22 Dennis Zhang + + * gcc.target/arm/simd/mve-vminmax_1.c: New test. + +2020-10-22 Andrew MacLeod + + * gcc.dg/pr97520.c: New. + +2020-10-22 Dennis Zhang + + * gcc.target/arm/simd/mve-vmul_1.c: New test. + +2020-10-22 Andrew MacLeod + + PR tree-optimization/97515 + * gcc.dg/pr97515.c: New file. + +2020-10-21 David Edelsohn + + * 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 + Andrew MacLeod + + PR target/97360 + * gcc.target/powerpc/pr97360.c: New test. + +2020-10-21 Jan Hubicka + + PR ipa/97445 + * gcc.dg/ipa/inlinehint-5.c: New test. + +2020-10-21 David Edelsohn + + * 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 + + PR tree-optimization/97500 + * gfortran.dg/pr97500.f90: New testcase. + +2020-10-21 liuhongt + + PR target/97506 + * gcc.target/i386/pr97506.c: New test. + +2020-10-21 Jakub Jelinek + + PR tree-optimization/97503 + * gcc.dg/tree-ssa/pr97503.c: New test. + +2020-10-21 Martin Liska + + PR sanitizer/97414 + * g++.dg/asan/pr97414.C: New test. + +2020-10-21 Eric Botcazou + + * gnat.dg/multfixed.adb: Update expected exception message. + +2020-10-21 Andrea Corallo + + * 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 + + * gcc.dg/Walloca-1.c: Adjust for 32-bits. + 2020-10-22 Dennis Zhang * gcc.target/arm/simd/mve-vminmax_1.c: New test. diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index d8cd4325905..5b1faafc9aa 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,11 @@ +2020-10-21 Douglas Rupp + Olivier Hainque + + * 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 * config/gthr-vxworks.h: Condition the ___GTHREADS_CXX0X diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog index 931df0a19eb..35b6689276e 100644 --- a/libgomp/ChangeLog +++ b/libgomp/ChangeLog @@ -1,3 +1,34 @@ +2020-10-22 Jakub Jelinek + + * testsuite/libgomp.c/target-41.c: New test. + +2020-10-22 Jakub Jelinek + + * 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 + + * 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 * target.c (gomp_target_init): Inside of the function, use automatic diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index b898cee8295..1dd1b69f476 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,41 @@ +2020-10-21 Jonathan Wakely + + * 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 + + PR libstdc++/97512 + * include/bits/ranges_util.h (tuple_size) + (tuple_element): Move here from ... + * include/std/ranges: ... here. + * testsuite/std/ranges/subrange/97512.cc: New test. + +2020-10-21 Thomas Rodgers + + * 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 * include/bits/hashtable_policy.h