From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 120291 invoked by alias); 30 Jul 2019 08:07:03 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 120283 invoked by uid 89); 30 Jul 2019 08:07:03 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-4.9 required=5.0 tests=AWL,BAYES_00,SPF_PASS autolearn=ham version=3.3.1 spammy=HContent-Transfer-Encoding:8bit X-HELO: mx1.suse.de Received: from mx2.suse.de (HELO mx1.suse.de) (195.135.220.15) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 30 Jul 2019 08:07:02 +0000 Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id EEDE4ADE0; Tue, 30 Jul 2019 08:06:59 +0000 (UTC) Subject: Re: [PATCH] Remove also 2nd argument for unused delete operator (PR tree-optimization/91270). From: =?UTF-8?Q?Martin_Li=c5=a1ka?= To: Richard Biener Cc: Marc Glisse , Jason Merrill , GCC Patches , David Malcolm , dominik.infuehr@theobroma-systems.com, Nathan Sidwell References: <8305B5F4-2A96-4698-8C2E-3255658B5C12@theobroma-systems.com> <70688da3-caf4-53c1-d0ee-63d16cbaadd9@suse.cz> <12f00f76-31c1-d3ca-a71b-c14b85892ef5@suse.cz> <6b43a610-4a16-cd1a-b7fa-ef2da7a77729@redhat.com> <74ce7d0b-2610-8cb6-4c22-60f9ed2bfc23@suse.cz> <3a940ca7-b024-61d1-3b05-6d36d3e22f25@suse.cz> <6c25e7d2-81eb-fb59-bd44-839c70cdebcd@suse.cz> <1440d96e-9563-ea58-39e1-1a623db1a03e@suse.cz> Message-ID: <61147c67-56c8-78b5-2776-d25ea4d8ed7e@suse.cz> Date: Tue, 30 Jul 2019 08:09:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <1440d96e-9563-ea58-39e1-1a623db1a03e@suse.cz> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes X-SW-Source: 2019-07/txt/msg01764.txt.bz2 On 7/30/19 9:46 AM, Martin Liška wrote: > Anyway that's not a candidate for DCE. I'm testing following patch. Patch can bootstrap on x86_64-linux-gnu and survives regression tests. One alternative approach can be to drop DECL_SET_IS_OPERATOR_DELETE in: cat -n gcc/cp/decl.c | less ... 4410 deltype = cp_build_type_attribute_variant (deltype, extvisattr); 4411 deltype = build_exception_variant (deltype, empty_except_spec); 4412 opdel = push_cp_library_fn (DELETE_EXPR, deltype, ECF_NOTHROW); 4413 DECL_SET_IS_OPERATOR_DELETE (opdel, true); 4414 opdel = push_cp_library_fn (VEC_DELETE_EXPR, deltype, ECF_NOTHROW); 4415 DECL_SET_IS_OPERATOR_DELETE (opdel, true); 4416 4417 if (flag_sized_deallocation) 4418 { 4419 /* operator delete (void *, size_t, align_val_t); */ 4420 deltype = build_function_type_list (void_type_node, ptr_type_node, 4421 size_type_node, align_type_node, 4422 NULL_TREE); 4423 deltype = cp_build_type_attribute_variant (deltype, extvisattr); 4424 deltype = build_exception_variant (deltype, empty_except_spec); 4425 opdel = push_cp_library_fn (DELETE_EXPR, deltype, ECF_NOTHROW); 4426 DECL_SET_IS_OPERATOR_DELETE (opdel, true); 4427 opdel = push_cp_library_fn (VEC_DELETE_EXPR, deltype, ECF_NOTHROW); 4428 DECL_SET_IS_OPERATOR_DELETE (opdel, true); 4429 } 4430 } at lines 4426 and 4428. Richi what do you prefer? Martin