From patchwork Wed Jul 5 08:10:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Thomas Schwinge X-Patchwork-Id: 1803476 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=8.43.85.97; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Received: from server2.sourceware.org (ip-8-43-85-97.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4QwsmV4075z20bK for ; Wed, 5 Jul 2023 18:10:50 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 87FC6385558C for ; Wed, 5 Jul 2023 08:10:48 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from esa2.mentor.iphmx.com (esa2.mentor.iphmx.com [68.232.141.98]) by sourceware.org (Postfix) with ESMTPS id 6A6A33857343 for ; Wed, 5 Jul 2023 08:10:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6A6A33857343 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=mentor.com X-IronPort-AV: E=Sophos;i="6.01,182,1684828800"; d="scan'208,223";a="12268168" Received: from orw-gwy-01-in.mentorg.com ([192.94.38.165]) by esa2.mentor.iphmx.com with ESMTP; 05 Jul 2023 00:10:33 -0800 IronPort-SDR: VYn8wpsus/hMLBG1FWparUcYkcyloYUgd0S3eg7p9CoXfbHaJs8jBBQ31pZ+yTRoDPxI3dv/Ea tUsze/G6tT4luFexhiEwQCSjWgeFf6+ShtMSIVxJzIasrAPHRNL6teXRLbrejnuoO7gACWbKle E5mNm7z8swN4DFO6+jV6FyGfm63/Fr6PPQA2lIJkGlUKj91CCtCtX2IF15NMkh2zcblODv3n/5 YY4xiRlV7hAFj/VkCfudjzqsJ+1HL0rAepfX8WrqDz5FN6A3DE57hn1OKheApPTqjuSGHZ9XGq PT4= From: Thomas Schwinge To: Subject: GTY: Clean up obsolete 'bool needs_cast_p' field of 'gcc/gengtype.cc:struct walk_type_data' (was: [PATCH 3/3] remove gengtype support for param_is use_param, if_marked and splay tree allocators) In-Reply-To: <1416802296-15833-4-git-send-email-tsaunders@mozilla.com> References: <1416802296-15833-1-git-send-email-tsaunders@mozilla.com> <1416802296-15833-4-git-send-email-tsaunders@mozilla.com> User-Agent: Notmuch/0.29.3+94~g74c3f1b (https://notmuchmail.org) Emacs/28.2 (x86_64-pc-linux-gnu) Date: Wed, 5 Jul 2023 10:10:27 +0200 Message-ID: <875y6yvkwc.fsf@euler.schwinge.homeip.net> MIME-Version: 1.0 X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-15.mgc.mentorg.com (139.181.222.15) To svr-ies-mbx-10.mgc.mentorg.com (139.181.222.10) X-Spam-Status: No, score=-11.8 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" Hi! On 2014-11-23T23:11:36-0500, tsaunders@mozilla.com wrote: > gcc/ > > * plugin.c, plugin.def, ggc.h, ggc-common.c, gengtype.h, gengtype.c, > gengtype-state.c, gengtype-parse.c, gentype-lex.l, gcc-plugin.h, > doc/plugins.texi, doc/gty.texi: Remove support for if_marked and > param_is. > --- a/gcc/gengtype.c > +++ b/gcc/gengtype.c > @@ -2861,39 +2733,6 @@ walk_type (type_p t, struct walk_type_data *d) > if (d->used_length) > length = NULL; > > -[...] > - d->needs_cast_p = (t->kind != TYPE_POINTER > - && (nt->kind == TYPE_POINTER > - || nt->kind == TYPE_STRING)); > -[...] OK to push the attached "GTY: Clean up obsolete 'bool needs_cast_p' field of 'gcc/gengtype.cc:struct walk_type_data'"? No change in the 'gengtype'-generated files in my test build. Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955 From 12cad7f5b3bfd8b01c90f9e7817fd2d837f2802b Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 4 Jul 2023 22:47:48 +0200 Subject: [PATCH] GTY: Clean up obsolete 'bool needs_cast_p' field of 'gcc/gengtype.cc:struct walk_type_data' Last use disappeared in 2014 with commit 63f5d5b818319129217e41bcb23db53f99ff11b0 (Subversion r218558) "remove gengtype support for param_is use_param, if_marked and splay tree allocators". gcc/ * gengtype.cc (struct walk_type_data): Remove 'needs_cast_p'. Adjust all users. --- gcc/gengtype.cc | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/gcc/gengtype.cc b/gcc/gengtype.cc index 04dbb0de8bd..54d3c8aaec3 100644 --- a/gcc/gengtype.cc +++ b/gcc/gengtype.cc @@ -2447,7 +2447,6 @@ struct walk_type_data int used_length; type_p orig_s; const char *reorder_fn; - bool needs_cast_p; bool fn_wants_lvalue; bool in_record_p; int loopcounter; @@ -2663,7 +2662,6 @@ walk_type (type_p t, struct walk_type_data *d) options_p oo; const struct nested_ptr_data *nested_ptr_d = NULL; - d->needs_cast_p = false; for (oo = d->opt; oo; oo = oo->next) if (strcmp (oo->name, "length") == 0 && oo->kind == OPTION_STRING) length = oo->info.string; @@ -3186,7 +3184,6 @@ static void write_types_process_field (type_p f, const struct walk_type_data *d) { const struct write_types_data *wtd; - const char *cast = d->needs_cast_p ? "(void *)" : ""; wtd = (const struct write_types_data *) d->cookie; switch (f->kind) @@ -3195,8 +3192,8 @@ write_types_process_field (type_p f, const struct walk_type_data *d) case TYPE_UNDEFINED: gcc_unreachable (); case TYPE_POINTER: - oprintf (d->of, "%*s%s (%s%s", d->indent, "", - wtd->subfield_marker_routine, cast, d->val); + oprintf (d->of, "%*s%s (%s", d->indent, "", + wtd->subfield_marker_routine, d->val); if (wtd->param_prefix) { if (f->u.p->kind == TYPE_SCALAR) @@ -3229,8 +3226,8 @@ write_types_process_field (type_p f, const struct walk_type_data *d) } oprintf (d->of, ");\n"); if (d->reorder_fn && wtd->reorder_note_routine) - oprintf (d->of, "%*s%s (%s%s, %s, %s);\n", d->indent, "", - wtd->reorder_note_routine, cast, d->val, + oprintf (d->of, "%*s%s (%s, %s, %s);\n", d->indent, "", + wtd->reorder_note_routine, d->val, d->prev_val[3], d->reorder_fn); break; @@ -3262,16 +3259,16 @@ write_types_process_field (type_p f, const struct walk_type_data *d) : nullptr); if (length_override) { - oprintf (d->of, "2 (%s%s, ", cast, d->val); + oprintf (d->of, "2 (%s, ", d->val); output_escaped_param (d, length_override, "string_length"); } else - oprintf (d->of, " (%s%s", cast, d->val); + oprintf (d->of, " (%s", d->val); oprintf (d->of, ");\n"); if (d->reorder_fn && wtd->reorder_note_routine) - oprintf (d->of, "%*s%s (%s%s, %s%s, %s);\n", d->indent, "", - wtd->reorder_note_routine, cast, d->val, cast, d->val, + oprintf (d->of, "%*s%s (%s, %s, %s);\n", d->indent, "", + wtd->reorder_note_routine, d->val, d->val, d->reorder_fn); } break; -- 2.34.1