diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b3d8d96d85e..23a703bf78f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,58 @@ +2021-02-26 Richard Biener + + PR middle-end/99281 + * expr.c (store_field): For calls with return-slot optimization + and addressable return type expand the store directly. + +2021-02-26 Richard Biener + + PR c/99275 + * builtins.c (warn_string_no_nul): Fix diagnostic formatting. + +2021-02-26 Peter Bergner + + PR target/99279 + * config/rs6000/rs6000-call.c (rs6000_init_builtins): Replace assert + with an "if" test. + +2021-02-26 Aaron Sawdey + + * config.gcc: Add rs6000-pcrel-opt.o. + * config/rs6000/rs6000-pcrel-opt.c: New file. + * config/rs6000/pcrel-opt.md: New file. + * config/rs6000/predicates.md: Add d_form_memory predicate. + * config/rs6000/rs6000-cpus.def: Add OPTION_MASK_PCREL_OPT. + * config/rs6000/rs6000-passes.def: Add pass_pcrel_opt. + * config/rs6000/rs6000-protos.h: Add reg_to_non_prefixed(), + pcrel_opt_valid_mem_p(), output_pcrel_opt_reloc(), + and make_pass_pcrel_opt(). + * config/rs6000/rs6000.c (reg_to_non_prefixed): Make global. + (rs6000_option_override_internal): Add pcrel-opt. + (rs6000_delegitimize_address): Support pcrel-opt. + (rs6000_opt_masks): Add pcrel-opt. + (pcrel_opt_valid_mem_p): New function. + (reg_to_non_prefixed): Make global. + (rs6000_asm_output_opcode): Reset prepend_p_to_next_insn. + (output_pcrel_opt_reloc): New function. + * config/rs6000/rs6000.md (loads_extern_addr): New attr. + (pcrel_extern_addr): Set loads_extern_addr. + Add include for pcrel-opt.md. + * config/rs6000/rs6000.opt: Add -mpcrel-opt. + * config/rs6000/t-rs6000: Add rules for pcrel-opt.c and + pcrel-opt.md. + +2021-02-26 YunQiang Su + + PR target/98996 + * config/mips/mips.c (mips_expand_ext_as_unaligned_load): + If TARGET_64BIT and dest is SUBREG, we check the width, if it + equal to SImode, we use SImode operation, just like what we are + doing for REG one. + +2021-02-26 Marek Polacek + + * builtins.c (warn_for_access): Fix typos. + 2021-02-25 Iain Sandoe * config/aarch64/aarch64.md (_rol3): Add a '#' diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 912738ecba1..72828d4af81 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20210226 +20210227 diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 52faefaa2ae..8a980ded0d1 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,10 @@ +2021-02-26 YunQiang Su + + PR ada/98996 + * Makefile.rtl: + add 128Bit operation file for MIPS N64 and N32 to + LIBGNAT_TARGET_PAIRS and EXTRA_GNATRTL_NONTASKING_OBJS + 2021-02-12 Arnaud Charlet * repinfo.ads, repinfo.adb (*SO_Ref*): Restore. diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 955e89f5fdc..57c945ebad9 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,68 @@ +2021-02-26 David Malcolm + + * engine.cc (exploded_path::exploded_path): New copy-ctor. + * exploded-graph.h (exploded_path::operator=): Drop decl. + +2021-02-26 David Malcolm + + PR analyzer/96374 + * diagnostic-manager.cc (class epath_finder): New. + (epath_finder::get_best_epath): New. + (saved_diagnostic::saved_diagnostic): Update for replacement of + m_state and m_epath_length with m_best_epath. + (saved_diagnostic::~saved_diagnostic): Delete m_best_epath. + (saved_diagnostic::to_json): Update "path_length" to be optional. + (saved_diagnostic::calc_best_epath): New, based on + dedupe_winners::add and parts of dedupe_key::dedupe_key. + (saved_diagnostic::get_epath_length): New. + (saved_diagnostic::add_duplicate): New. + (dedupe_key::dedupe_key): Drop epath param. Move invocation of + stmt_finder to saved_diagnostic::calc_best_epath. + (class dedupe_candidate): Delete. + (class dedupe_hash_map_traits): Update to use saved_diagnotic * + rather than dedupe_candidate * as the value_type/compare_type. + (dedupe_winners::~dedupe_winners): Don't delete the values. + (dedupe_winners::add): Convert param from shortest_exploded_paths to + epath_finder. Drop "eg" param. Drop dedupe_candidate, moving + path generation and feasiblity checking to + epath_finder::get_best_epath. Update winner-selection for move + of epaths from dedupe_candidate to saved_diagnostic. + (dedupe_winners::emit_best): Update for removal of class + dedupe_candidate. + (dedupe_winners::map_t): Update to use saved_diagnotic * rather + than dedupe_candidate * as the value_type/compare_type. + (diagnostic_manager::emit_saved_diagnostics): Move + shortest_exploded_paths instance into epath_finder and pass that + around instead. + (diagnostic_manager::emit_saved_diagnostic): Drop epath, stmt + and num_dupes params, instead getting these from the + saved_diagnostic. Use correct location in inform_n call. + * diagnostic-manager.h (class epath_finder): New forward decl. + (saved_diagnostic::status): Drop enum. + (saved_diagnostic::set_feasible): Drop. + (saved_diagnostic::set_infeasible): Drop. + (saved_diagnostic::get_status): Drop. + (saved_diagnostic::calc_best_epath): New decl. + (saved_diagnostic::get_best_epath): New decl. + (saved_diagnostic::get_epath_length): New decl. + (saved_diagnostic::set_epath_length): Drop. + (saved_diagnostic::get_epath_length): Drop inline implementation. + (saved_diagnostic::add_duplicate): New. + (saved_diagnostic::get_num_dupes): New. + (saved_diagnostic::m_d): Document ownership. + (saved_diagnostic::m_trailing_eedge): Make const. + (saved_diagnostic::m_status): Drop field. + (saved_diagnostic::m_epath_length): Drop field. + (saved_diagnostic::m_best_epath): New field. + (saved_diagnostic::m_problem): Document ownership. + (saved_diagnostic::m_duplicates): New field. + (diagnostic_manager::emit_saved_diagnostic): Drop params epath, + stmt, and num_dupes. + * engine.cc (exploded_graph_annotator::print_saved_diagnostic): + Update for changes to saved_diagnostic class. + * exploded-graph.h (exploded_path::feasible_p): Drop unused + overloaded decl. + 2021-02-25 David Malcolm PR analyzer/99193 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 9b12a171feb..b5c05426c13 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,30 @@ +2021-02-26 Jakub Jelinek + + * parser.c (cp_parser_lambda_declarator_opt): Implement + P1102R2 - Down with ()! Make ()s optional before lambda specifiers + for -std={c,gnu}++2b or with pedwarn in earlier versions. + +2021-02-26 Jakub Jelinek + + PR c++/95451 + * lambda.c (is_lambda_ignored_entity): Before checking for + LAMBDA_FUNCTION_P, use OVL_FIRST. Drop FUNCTION_DECL check. + +2021-02-26 Jason Merrill + + PR c++/98810 + * pt.c (tsubst_copy) [VIEW_CONVERT_EXPR]: Add const + to a class non-type template argument that needs it. + +2021-02-26 Patrick Palka + + PR c++/98990 + * pt.c (splice_late_return_type): Rebuild the entire return type + if we have to adjust the level of an auto within. + (type_uses_auto): Adjust call to find_type_usage. + * type-utils.h (find_type_usage): Revert r10-6571 change that + made this function return a pointer to the auto node. + 2021-02-25 Patrick Palka PR c++/99213 diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog index be1d18673c4..12537ef23aa 100644 --- a/gcc/po/ChangeLog +++ b/gcc/po/ChangeLog @@ -1,3 +1,7 @@ +2021-02-26 Joseph Myers + + * de.po: Update. + 2021-02-23 Joseph Myers * sv.po: Update. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 93933e7fb0f..414fd7b482c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,65 @@ +2021-02-26 Alexandre Oliva + + * gcc.target/powerpc/pr67789.c: Revert fpic target requirement + duplication. + * gcc.target/powerpc/pr83629.c: Likewise. + * gcc.target/powerpc/pr84112.c: Likewise. + +2021-02-26 Olivier Hainque + + * gcc.target/powerpc/compress-float-ppc-pic.c: Add + dg-require-effective-target fpic. + * gcc.target/powerpc/ppc-eabi.c: Likewise. + * gcc.target/powerpc/pr26350.c: Likewise. + * gcc.target/powerpc/pr67789.c: Likewise. + * gcc.target/powerpc/pr79439-1.c: Likewise. + * gcc.target/powerpc/pr79439-2.c: Likewise. + * gcc.target/powerpc/pr79439-3.c: Likewise. + * gcc.target/powerpc/pr83629.c: Likewise. + * gcc.target/powerpc/pr84112.c: Likewise. + +2021-02-26 Richard Biener + + PR middle-end/99281 + * g++.dg/pr99218.C: New testcase. + +2021-02-26 Jakub Jelinek + + * g++.dg/cpp23/lambda-specifiers1.C: New test. + +2021-02-26 Jakub Jelinek + + PR c++/95451 + * g++.dg/cpp1y/lambda-generic-95451.C: New test. + +2021-02-26 Jason Merrill + + PR c++/98810 + * g++.dg/cpp2a/nontype-class-defarg1.C: New test. + +2021-02-26 Aaron Sawdey + + * gcc.target/powerpc/pcrel-opt-inc-di.c: New test. + * gcc.target/powerpc/pcrel-opt-ld-df.c: New test. + * gcc.target/powerpc/pcrel-opt-ld-di.c: New test. + * gcc.target/powerpc/pcrel-opt-ld-hi.c: New test. + * gcc.target/powerpc/pcrel-opt-ld-qi.c: New test. + * gcc.target/powerpc/pcrel-opt-ld-sf.c: New test. + * gcc.target/powerpc/pcrel-opt-ld-si.c: New test. + * gcc.target/powerpc/pcrel-opt-ld-vector.c: New test. + * gcc.target/powerpc/pcrel-opt-st-df.c: New test. + * gcc.target/powerpc/pcrel-opt-st-di.c: New test. + * gcc.target/powerpc/pcrel-opt-st-hi.c: New test. + * gcc.target/powerpc/pcrel-opt-st-qi.c: New test. + * gcc.target/powerpc/pcrel-opt-st-sf.c: New test. + * gcc.target/powerpc/pcrel-opt-st-si.c: New test. + * gcc.target/powerpc/pcrel-opt-st-vector.c: New test. + +2021-02-26 Patrick Palka + + PR c++/98990 + * g++.dg/concepts/abbrev8.C: New test. + 2021-02-25 Patrick Palka PR c++/99213