From patchwork Fri Apr 1 19:01:43 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nathan Froyd X-Patchwork-Id: 89327 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id 129B7B6F75 for ; Sat, 2 Apr 2011 06:01:52 +1100 (EST) Received: (qmail 18874 invoked by alias); 1 Apr 2011 19:01:50 -0000 Received: (qmail 18864 invoked by uid 22791); 1 Apr 2011 19:01:48 -0000 X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL, BAYES_00, T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 01 Apr 2011 19:01:44 +0000 Received: (qmail 26637 invoked from network); 1 Apr 2011 19:01:43 -0000 Received: from unknown (HELO localhost) (froydnj@127.0.0.2) by mail.codesourcery.com with ESMTPA; 1 Apr 2011 19:01:43 -0000 Date: Fri, 1 Apr 2011 12:01:43 -0700 From: Nathan Froyd To: gcc-patches@gcc.gnu.org Subject: [PATCH] make CONST_DECL a direct subclass of tree_decl_common Message-ID: <20110401190142.GU23480@codesourcery.com> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.5.17+20080114 (2008-01-14) X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Nobody touches CONST_DECL's DECL_RTL, so there's no reason to for CONST_DECL to inherit from tree_decl_with_rtl. This patch adjusts the inheritance structure accordingly. Bootstrapped on x86_64-unknown-linux-gnu; tests in progress. OK to commit once those complete? -Nathan * tree.h (struct tree_const_decl): Inherit from tree_decl_common. * tree.c (initialize_tree_contains_struct): Adjust accordingly. diff --git a/gcc/tree.c b/gcc/tree.c index 69d5ecb..3d8abee 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -439,6 +439,7 @@ initialize_tree_contains_struct (void) break; case TS_DECL_WRTL: + case TS_CONST_DECL: MARK_TS_DECL_COMMON (code); break; @@ -450,7 +451,6 @@ initialize_tree_contains_struct (void) case TS_PARM_DECL: case TS_LABEL_DECL: case TS_RESULT_DECL: - case TS_CONST_DECL: MARK_TS_DECL_WRTL (code); break; @@ -488,7 +488,6 @@ initialize_tree_contains_struct (void) gcc_assert (tree_contains_struct[TRANSLATION_UNIT_DECL][TS_DECL_COMMON]); gcc_assert (tree_contains_struct[LABEL_DECL][TS_DECL_COMMON]); gcc_assert (tree_contains_struct[FIELD_DECL][TS_DECL_COMMON]); - gcc_assert (tree_contains_struct[CONST_DECL][TS_DECL_WRTL]); gcc_assert (tree_contains_struct[VAR_DECL][TS_DECL_WRTL]); gcc_assert (tree_contains_struct[PARM_DECL][TS_DECL_WRTL]); gcc_assert (tree_contains_struct[RESULT_DECL][TS_DECL_WRTL]); diff --git a/gcc/tree.h b/gcc/tree.h index 9a288cb..e166ae3 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -2962,7 +2962,7 @@ struct GTY(()) tree_result_decl { }; struct GTY(()) tree_const_decl { - struct tree_decl_with_rtl common; + struct tree_decl_common common; }; /* For a PARM_DECL, records the data type used to pass the argument,