Daily bump.
This commit is contained in:
parent
346b302d09
commit
56ddd5e23a
332
gcc/ChangeLog
332
gcc/ChangeLog
@ -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 ...
|
||||
|
@ -1 +1 @@
|
||||
20201021
|
||||
20201022
|
||||
|
@ -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,
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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.
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user