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

Reply via email to