On 7/11/19 12:45 AM, Martin Liška wrote: > On 7/9/19 11:00 PM, Jason Merrill wrote:
> Ok, I hopefully addressed the suggested improvements to the patch. > > Patch can bootstrap on x86_64-linux-gnu and survives regression tests. > > Ready to be installed? > Thanks, > Martin > > 0001-Extend-DCE-to-remove-unnecessary-new-delete-pairs-PR.patch > > From 771d9128144745fe530577912521fc8228ca7424 Mon Sep 17 00:00:00 2001 > From: Martin Liska <mli...@suse.cz> > Date: Tue, 2 Jul 2019 09:08:27 +0200 > Subject: [PATCH] Extend DCE to remove unnecessary new/delete-pairs (PR > c++/23383). > > gcc/ChangeLog: > > 2019-07-02 Martin Liska <mli...@suse.cz> > Dominik Infuhr <dominik.infu...@theobroma-systems.com> > > PR c++/23383 > * common.opt: Add -fallocation-dce > * gimple.c (gimple_call_operator_delete_p): New. > * gimple.h (gimple_call_operator_delete_p): Likewise. > * tree-core.h (enum function_decl_type): Add OPERATOR_DELETE. > * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Handle > DECL_IS_OPERATOR_DELETE_P. > (mark_all_reaching_defs_necessary_1): Likewise. > (propagate_necessity): Likewise. > (eliminate_unnecessary_stmts): Handle > gimple_call_operator_delete_p. > * tree-streamer-in.c (unpack_ts_function_decl_value_fields): > Add packing of OPERATOR_DELETE. > * tree-streamer-out.c (pack_ts_function_decl_value_fields): > Similarly here. > * tree.h (DECL_IS_OPERATOR_DELETE_P): New. > (DECL_SET_IS_OPERATOR_DELETE): New. > (DECL_IS_REPLACEABLE_OPERATOR_NEW_P): Likewise. > > gcc/c/ChangeLog: > > 2019-07-02 Martin Liska <mli...@suse.cz> > Dominik Infuhr <dominik.infu...@theobroma-systems.com> > > PR c++/23383 > * c-decl.c (merge_decls): Merge OPERATOR_DELETE flag. > > gcc/cp/ChangeLog: > > 2019-07-02 Martin Liska <mli...@suse.cz> > Dominik Infuhr <dominik.infu...@theobroma-systems.com> > > PR c++/23383 > * decl.c (cxx_init_decl_processing): Mark delete operators > with DECL_SET_IS_OPERATOR_DELETE. > > gcc/testsuite/ChangeLog: > > 2019-07-02 Martin Liska <mli...@suse.cz > Dominik Infuhr <dominik.infu...@theobroma-systems.com> > > PR c++/23383 > * g++.dg/cpp1y/new1.C: New test. > > libstdc++-v3/ChangeLog: > > 2019-07-02 Martin Liska <mli...@suse.cz> > Dominik Infuhr <dominik.infu...@theobroma-systems.com> > > PR c++/23383 > * testsuite/ext/bitmap_allocator/check_delete.cc: Add > -fno-allocation-dce. > * testsuite/ext/bitmap_allocator/check_new.cc: Likewise. > * testsuite/ext/new_allocator/check_delete.cc: Likewise. > * testsuite/ext/new_allocator/check_new.cc: Likewise. OK. I don't see the 2/2 from this series in my queue. Has it already been dealt with? jeff