This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Remove also 2nd argument for unused delete operator (PR tree-optimization/91270).
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