https://gcc.gnu.org/g:bfb9105ffbff952599ec949cee1e18ddc1f849ba
commit r15-3534-gbfb9105ffbff952599ec949cee1e18ddc1f849ba Author: GCC Administrator <gccadmin@gcc.gnu.org> Date: Sun Sep 8 00:17:46 2024 +0000 Daily bump. Diff: --- gcc/ChangeLog | 20 +++++++ gcc/DATESTAMP | 2 +- gcc/cp/ChangeLog | 19 ++++++ gcc/fortran/ChangeLog | 152 ++++++++++++++++++++++++++++++++++++++++++++++++ gcc/testsuite/ChangeLog | 52 +++++++++++++++++ libgfortran/ChangeLog | 39 +++++++++++++ libiberty/ChangeLog | 21 +++++++ 7 files changed, 304 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3cbbba915cc7..ebd72ded6eb3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,23 @@ +2024-09-07 Andrew Pinski <quic_apin...@quicinc.com> + + * gimple-ssa-split-paths.cc (is_feasible_trace): Fix wording + on the print. + +2024-09-07 Andrew MacLeod <amacl...@redhat.com> + + PR tree-optimization/116588 + * tree-vrp.cc (execute_fast_vrp): Start with all edges executable. + +2024-09-07 Zhao Dingyi <dingyizhao....@outlook.com> + + * config/riscv/xiangshan.md: Add atomic, trap, fcvt_i2f, fcvt_f2i. + +2024-09-07 Jin Ma <ji...@linux.alibaba.com> + + PR target/116592 + * config/riscv/thead.cc (th_asm_output_opcode): Change '0' to + "zero" + 2024-09-06 Carl Love <c...@linux.ibm.com> * config/rs6000/rs6000-overload.def (vec_test_lsbb_all_ones, diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 346d3ce69070..e8f2bd3ba1b0 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20240907 +20240908 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index e45494f464c1..debad0eece0e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,22 @@ +2024-09-07 Jason Merrill <ja...@redhat.com> + + * decl.cc (check_redeclaration_exception_specification): Remove + OPT_Wsystem_headers from pedwarn when the old declaration is + in a system header. Also check std namespace. + +2024-09-07 Patrick Palka <ppa...@redhat.com> + + PR c++/116567 + * pt.cc (coerce_template_parms): Set tf_partial when substituting + into a default template argument in a template context. + (build_extra_args): Set TREE_STATIC on the deferred args if this + is a partial substitution. + (add_extra_args): Check TREE_STATIC instead of dependence of args. + Adjust merging behavior in that case. + (tsubst_lammda_expr): Check for tf_partial instead of dependence + of args when determining whether to defer substitution. + (tsubst_expr) <case LAMBDA_EXPR>: Remove tf_partial early exit. + 2024-09-06 Jakub Jelinek <ja...@redhat.com> PR c++/115769 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 268e567bb32f..ee92963b2890 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,155 @@ +2024-09-07 Thomas Koenig <tkoe...@gcc.gnu.org> + + * arith.cc (gfc_reduce_unsigned): New function. + (gfc_arith_error): Add ARITH_UNSIGNED_TRUNCATED and + ARITH_UNSIGNED_NEGATIVE. + (gfc_arith_init_1): Initialize unsigned types. + (gfc_check_unsigned_range): New function. + (gfc_range_check): Handle unsigned types. + (gfc_arith_uminus): Likewise. + (gfc_arith_plus): Likewise. + (gfc_arith_minus): Likewise. + (gfc_arith_times): Likewise. + (gfc_arith_divide): Likewise. + (gfc_compare_expr): Likewise. + (eval_intrinsic): Likewise. + (gfc_int2int): Also convert unsigned. + (gfc_uint2uint): New function. + (gfc_int2uint): New function. + (gfc_uint2int): New function. + (gfc_uint2real): New function. + (gfc_uint2complex): New function. + (gfc_real2uint): New function. + (gfc_complex2uint): New function. + (gfc_log2uint): New function. + (gfc_uint2log): New function. + * arith.h (gfc_int2uint, gfc_uint2uint, gfc_uint2int, gfc_uint2real): + Add prototypes. + (gfc_uint2complex, gfc_real2uint, gfc_complex2uint, gfc_log2uint): + Likewise. + (gfc_uint2log): Likewise. + * check.cc (gfc_boz2uint): New function + (type_check2): New function. + (int_or_real_or_unsigned_check): New function. + (less_than_bitsizekind): Adjust for unsingeds. + (less_than_bitsize2): Likewise. + (gfc_check_allocated): Likewise. + (gfc_check_mod): Likewise. + (gfc_check_bge_bgt_ble_blt): Likewise. + (gfc_check_bitfcn): Likewise. + (gfc_check_digits): Likewise. + (gfc_check_dshift): Likewise. + (gfc_check_huge): Likewise. + (gfc_check_iu): New function. + (gfc_check_iand_ieor_ior): Adjust for unsigneds. + (gfc_check_ibits): Likewise. + (gfc_check_uint): New function. + (gfc_check_ishft): Adjust for unsigneds. + (gfc_check_ishftc): Likewise. + (gfc_check_min_max): Likewise. + (gfc_check_merge_bits): Likewise. + (gfc_check_selected_int_kind): Likewise. + (gfc_check_shift): Likewise. + (gfc_check_mvbits): Likewise. + (gfc_invalid_unsigned_ops): Likewise. + * decl.cc (gfc_match_decl_type_spec): Likewise. + * dump-parse-tree.cc (show_expr): Likewise. + * expr.cc (gfc_get_constant_expr): Likewise. + (gfc_copy_expr): Likewise. + (gfc_extract_int): Likewise. + (numeric_type): Likewise. + * gfortran.h (enum arith): Extend with ARITH_UNSIGNED_TRUNCATED + and ARITH_UNSIGNED_NEGATIVE. + (enum gfc_isym_id): Extend with GFC_ISYM_SU_KIND and GFC_ISYM_UINT. + (gfc_check_unsigned_range): New prototype- + (gfc_arith_error): Likewise. + (gfc_reduce_unsigned): Likewise. + (gfc_boz2uint): Likewise. + (gfc_invalid_unsigned_ops): Likewise. + (gfc_convert_mpz_to_unsigned): Likewise. + * gfortran.texi: Add some rudimentary documentation. + * intrinsic.cc (gfc_type_letter): Adjust for unsigneds. + (add_functions): Add uint and adjust functions to be called. + (add_conversions): Add unsigned conversions. + (gfc_convert_type_warn): Adjust for unsigned. + * intrinsic.h (gfc_check_iu, gfc_check_uint, gfc_check_mod, gfc_simplify_uint, + gfc_simplify_selected_unsigned_kind, gfc_resolve_uint): New prototypes. + * invoke.texi: Add -funsigned. + * iresolve.cc (gfc_resolve_dshift): Handle unsigneds. + (gfc_resolve_iand): Handle unsigneds. + (gfc_resolve_ibclr): Handle unsigneds. + (gfc_resolve_ibits): Handle unsigneds. + (gfc_resolve_ibset): Handle unsigneds. + (gfc_resolve_ieor): Handle unsigneds. + (gfc_resolve_ior): Handle unsigneds. + (gfc_resolve_uint): Handle unsigneds. + (gfc_resolve_merge_bits): Handle unsigneds. + (gfc_resolve_not): Handle unsigneds. + * lang.opt: Add -funsigned. + * libgfortran.h: Add BT_UNSIGNED. + * match.cc (gfc_match_type_spec): Match UNSIGNED. + * misc.cc (gfc_basic_typename): Add UNSIGNED. + (gfc_typename): Likewise. + * primary.cc (convert_unsigned): New function. + (match_unsigned_constant): New function. + (gfc_match_literal_constant): Handle unsigned. + * resolve.cc (resolve_operator): Handle unsigned. + (resolve_ordinary_assign): Likewise. + * simplify.cc (convert_mpz_to_unsigned): Renamed to... + (gfc_convert_mpz_to_unsigned): and adjusted. + (gfc_simplify_bit_size): Adjusted for unsigned. + (compare_bitwise): Likewise. + (gfc_simplify_bge): Likewise. + (gfc_simplify_bgt): Likewise. + (gfc_simplify_ble): Likewise. + (gfc_simplify_blt): Likewise. + (simplify_cmplx): Likewise. + (gfc_simplify_digits): Likewise. + (simplify_dshift): Likewise. + (gfc_simplify_huge): Likewise. + (gfc_simplify_iand): Likewise. + (gfc_simplify_ibclr): Likewise. + (gfc_simplify_ibits): Likewise. + (gfc_simplify_ibset): Likewise. + (gfc_simplify_ieor): Likewise. + (gfc_simplify_uint): Likewise. + (gfc_simplify_ior): Likewise. + (simplify_shift): Likewise. + (gfc_simplify_ishftc): Likewise. + (gfc_simplify_merge_bits): Likewise. + (min_max_choose): Likewise. + (gfc_simplify_mod): Likewise. + (gfc_simplify_modulo): Likewise. + (gfc_simplify_popcnt): Likewise. + (gfc_simplify_range): Likewise. + (gfc_simplify_selected_unsigned_kind): Likewise. + (gfc_convert_constant): Likewise. + * target-memory.cc (size_unsigned): New function. + (gfc_element_size): Adjust for unsigned. + * trans-const.h (gfc_conv_mpz_unsigned_to_tree): Add prototype. + * trans-const.cc (gfc_conv_mpz_unsigned_to_tree): Handle unsigneds. + (gfc_conv_constant_to_tree): Likewise. + * trans-decl.cc (gfc_conv_cfi_to_gfc): Put in "not yet implemented". + * trans-expr.cc (gfc_conv_gfc_desc_to_cfi_desc): Likewise. + * trans-stmt.cc (gfc_trans_integer_select): Handle unsigned. + (gfc_trans_select): Likewise. + * trans-intrinsic.cc (gfc_conv_intrinsic_mod): Handle unsigned. + (gfc_conv_intrinsic_shift): Likewise. + (gfc_conv_intrinsic_function): Add GFC_ISYM_UINT. + * trans-io.cc (enum iocall): Add IOCALL_X_UNSIGNED and IOCALL_X_UNSIGNED_WRITE. + (gfc_build_io_library_fndecls): Add transfer_unsigned and transfer_unsigned_write. + (transfer_expr): Handle unsigneds. + * trans-types.cc (gfc_unsinged_kinds): New array. + (gfc_unsigned_types): Likewise. + (gfc_init_kinds): Handle them. + (validate_unsigned): New function. + (gfc_validate_kind): Use it. + (gfc_build_unsigned_type): New function. + (gfc_init_types): Use it. + (gfc_get_unsigned_type): New function. + (gfc_typenode_for_spec): Handle unsigned. + * trans-types.h (gfc_get_unsigned_type): New prototype. + 2024-09-06 Tobias Burnus <tbur...@baylibre.com> * dump-parse-tree.cc (show_omp_namelist): Handle OMP_LIST_INIT. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index e28168c2fff0..7c9443657ef7 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,55 @@ +2024-09-07 Andrew Pinski <quic_apin...@quicinc.com> + + * gcc.dg/pr116588.c: Require int128. + +2024-09-07 Jason Merrill <ja...@redhat.com> + + * g++.dg/diagnostic/pr65923.C: Add noexcept. + * g++.dg/cpp1z/aligned-new3.C: Expect pedwarn. + * g++.dg/cpp1z/noexcept-type19.C: Add comment. + +2024-09-07 Patrick Palka <ppa...@redhat.com> + + PR c++/116567 + * g++.dg/cpp2a/lambda-targ7.C: New test. + +2024-09-07 Andrew MacLeod <amacl...@redhat.com> + + PR tree-optimization/116588 + * gcc.dg/pr116588.c: New. + +2024-09-07 Jin Ma <ji...@linux.alibaba.com> + + PR target/116592 + * gcc.target/riscv/rvv/xtheadvector/pr116592.c: New test. + +2024-09-07 Thomas Koenig <tkoe...@gcc.gnu.org> + + * gfortran.dg/unsigned_1.f90: New test. + * gfortran.dg/unsigned_10.f90: New test. + * gfortran.dg/unsigned_11.f90: New test. + * gfortran.dg/unsigned_12.f90: New test. + * gfortran.dg/unsigned_13.f90: New test. + * gfortran.dg/unsigned_14.f90: New test. + * gfortran.dg/unsigned_15.f90: New test. + * gfortran.dg/unsigned_16.f90: New test. + * gfortran.dg/unsigned_17.f90: New test. + * gfortran.dg/unsigned_18.f90: New test. + * gfortran.dg/unsigned_19.f90: New test. + * gfortran.dg/unsigned_2.f90: New test. + * gfortran.dg/unsigned_20.f90: New test. + * gfortran.dg/unsigned_21.f90: New test. + * gfortran.dg/unsigned_22.f90: New test. + * gfortran.dg/unsigned_23.f90: New test. + * gfortran.dg/unsigned_24.f: New test. + * gfortran.dg/unsigned_3.f90: New test. + * gfortran.dg/unsigned_4.f90: New test. + * gfortran.dg/unsigned_5.f90: New test. + * gfortran.dg/unsigned_6.f90: New test. + * gfortran.dg/unsigned_7.f90: New test. + * gfortran.dg/unsigned_8.f90: New test. + * gfortran.dg/unsigned_9.f90: New test. + 2024-09-06 Jason Merrill <ja...@redhat.com> PR tree-optimization/107919 diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 721aebaceb25..1d218c176b3a 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,42 @@ +2024-09-07 Thomas Koenig <tkoe...@gcc.gnu.org> + + * gfortran.map: Add _gfortran_transfer_unsgned and + _gfortran_transfer-signed. + * io/io.h (set_unsigned): New prototype. + (us_max): New prototype. + (read_decimal_unsigned): New prototype. + (write_iu): New prototype. + * io/list_read.c (convert_unsigned): New function. + (read_integer): Also handle unsigneds. + (list_formatted_read_scalar): Handle unsigneds. + (nml_read_obj): Likewise. + * io/read.c (set_unsigned): New function. + (us_max): New function. + (read_utf8): Whitespace fixes. + (read_default_char1): Whitespace fixes. + (read_a_char4): Whitespace fixes. + (next_char): Whiltespace fixes. + (read_decimal_unsigned): New function. + (read_f): Whitespace fixes. + (read_x): Whitespace fixes. + * io/transfer.c (transfer_unsigned): New function. + (transfer_unsigned_write): New function. + (require_one_of_two_types): New function. + (formatted_transfer_scalar_read): Use it. + (formatted_transfer_scalar_write): Also use it. + * io/write.c (write_decimal_unsigned): New function. + (write_iu): New function. + (write_unsigned): New function. + (list_formatted_write_scalar): Adjust for unsigneds. + * libgfortran.h (GFC_UINTEGER_1_HUGE): Define. + (GFC_UINTEGER_2_HUGE): Define. + (GFC_UINTEGER_4_HUGE): Define. + (GFC_UINTEGER_8_HUGE): Define. + (GFC_UINTEGER_16_HUGE): Define. + (HAVE_GFC_UINTEGER_1): Undefine (done by mk-kind-h.sh) + (HAVE_GFC_UINTEGER_4): Likewise. + * mk-kinds-h.sh: Add GFC_UINTEGER_*_HUGE. + 2024-08-20 Andre Vehreschild <ve...@gcc.gnu.org> PR fortran/84246 diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 949fec62fe41..24b5c53fc8da 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,24 @@ +2024-09-07 Jakub Jelinek <ja...@redhat.com> + + PR lto/116614 + * simple-object-elf.c (SHN_COMMON): Align comment with neighbouring + comments. + (SHN_HIRESERVE): Use uppercase hex digits instead of lowercase for + consistency. + (simple_object_elf_find_sections): Formatting fixes. + (simple_object_elf_fetch_attributes): Likewise. + (simple_object_elf_attributes_merge): Likewise. + (simple_object_elf_start_write): Likewise. + (simple_object_elf_write_ehdr): Likewise. + (simple_object_elf_write_shdr): Likewise. + (simple_object_elf_write_to_file): Likewise. + (simple_object_elf_copy_lto_debug_section): Likewise. Don't fail for + new_i - 1 >= SHN_LORESERVE, instead arrange in that case to copy + over .symtab_shndx sections, though emit those last and compute their + section content when processing associated .symtab sections. Handle + simple_object_internal_read failure even in the .symtab_shndx reading + case. + 2024-08-05 Andrew Burgess <aburg...@redhat.com> * argv.c (only_whitespace): Delete.