From patchwork Mon Jun 28 20:01:36 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?b?TWFudWVsIEzDs3Blei1JYsOhw7Fleg==?= X-Patchwork-Id: 57185 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 38025B6EEE for ; Tue, 29 Jun 2010 06:02:08 +1000 (EST) Received: (qmail 31920 invoked by alias); 28 Jun 2010 20:02:06 -0000 Received: (qmail 31714 invoked by uid 22791); 28 Jun 2010 20:02:05 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL, BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM X-Spam-Check-By: sourceware.org Received: from mail-wy0-f175.google.com (HELO mail-wy0-f175.google.com) (74.125.82.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 28 Jun 2010 20:01:59 +0000 Received: by wyb36 with SMTP id 36so2753162wyb.20 for ; Mon, 28 Jun 2010 13:01:57 -0700 (PDT) Received: by 10.216.85.73 with SMTP id t51mr8624350wee.3.1277755316798; Mon, 28 Jun 2010 13:01:56 -0700 (PDT) MIME-Version: 1.0 Received: by 10.216.28.76 with HTTP; Mon, 28 Jun 2010 13:01:36 -0700 (PDT) In-Reply-To: <20100628195620.GA47082@adacore.com> References: <20100628195620.GA47082@adacore.com> From: =?ISO-8859-1?Q?Manuel_L=F3pez=2DIb=E1=F1ez?= Date: Mon, 28 Jun 2010 22:01:36 +0200 Message-ID: Subject: Re: [Ada/C/C++] Do not include tree-flow.h in FEs To: Arnaud Charlet Cc: Gcc Patch List , Steven Bosscher , Eric Botcazou , "Joseph S. Myers" , Jason Merrill 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 On 28 June 2010 21:56, Arnaud Charlet wrote: >> The subject says all. Bootstrapped and regression tested on >> x86_64-linux-gnu with --enable-languages=all,ada > > Can you please include the patch for review? Well, if it is necessary, here it is, but I think the GCC project should work on improving its mind-reading skills, it will give it a key advantage over its competitors ;-) Manuel. Index: gcc/c-family/c-gimplify.c =================================================================== --- gcc/c-family/c-gimplify.c (revision 161481) +++ gcc/c-family/c-gimplify.c (working copy) @@ -30,11 +30,10 @@ along with GCC; see the file COPYING3. #include "tm.h" #include "tree.h" #include "c-common.h" #include "gimple.h" #include "basic-block.h" -#include "tree-flow.h" #include "tree-inline.h" #include "diagnostic-core.h" #include "langhooks.h" #include "langhooks-def.h" #include "flags.h" Index: gcc/tree.h =================================================================== --- gcc/tree.h (revision 161481) +++ gcc/tree.h (working copy) @@ -1885,15 +1885,12 @@ struct GTY(()) tree_exp { /* Attributes for SSA_NAMEs for pointer-type variables. */ #define SSA_NAME_PTR_INFO(N) \ SSA_NAME_CHECK (N)->ssa_name.ptr_info -#ifndef _TREE_FLOW_H +/* Defined in tree-flow.h. */ struct ptr_info_def; -#endif - - /* Immediate use linking structure. This structure is used for maintaining a doubly linked list of uses of an SSA_NAME. */ typedef struct GTY(()) ssa_use_operand_d { struct ssa_use_operand_d* GTY((skip(""))) prev; @@ -5568,6 +5565,9 @@ static inline bool is_lang_specific (tree t) { return TREE_CODE (t) == LANG_TYPE || TREE_CODE (t) >= NUM_TREE_CODES; } +/* In gimple-low.c. */ +extern bool block_may_fallthru (const_tree); + #endif /* GCC_TREE_H */ Index: gcc/cp/decl.c =================================================================== --- gcc/cp/decl.c (revision 161481) +++ gcc/cp/decl.c (working copy) @@ -49,11 +49,10 @@ along with GCC; see the file COPYING3. #include "c-family/c-pragma.h" #include "diagnostic.h" #include "intl.h" #include "debug.h" #include "timevar.h" -#include "tree-flow.h" #include "pointer-set.h" #include "splay-tree.h" #include "plugin.h" /* Possible cases of bad specifiers type used by bad_specifiers. */ Index: gcc/cp/tree.c =================================================================== --- gcc/cp/tree.c (revision 161481) +++ gcc/cp/tree.c (working copy) @@ -29,13 +29,13 @@ along with GCC; see the file COPYING3. #include "flags.h" #include "toplev.h" #include "tree-inline.h" #include "debug.h" #include "convert.h" -#include "tree-flow.h" #include "cgraph.h" #include "splay-tree.h" +#include "gimple.h" /* gimple_has_body_p */ static tree bot_manip (tree *, int *, void *); static tree bot_replace (tree *, int *, void *); static int list_hash_eq (const void *, const void *); static hashval_t list_hash_pieces (tree, tree, tree); Index: gcc/ada/gcc-interface/trans.c =================================================================== --- gcc/ada/gcc-interface/trans.c (revision 161481) +++ gcc/ada/gcc-interface/trans.c (working copy) @@ -31,11 +31,10 @@ #include "flags.h" #include "ggc.h" #include "output.h" #include "libfuncs.h" /* For set_stack_check_libfunc. */ #include "tree-iterator.h" -#include "tree-flow.h" #include "gimple.h" #include "ada.h" #include "adadecode.h" #include "types.h" Index: gcc/c-typeck.c =================================================================== --- gcc/c-typeck.c (revision 161481) +++ gcc/c-typeck.c (working copy) @@ -37,11 +37,12 @@ along with GCC; see the file COPYING3. #include "output.h" #include "toplev.h" #include "intl.h" #include "target.h" #include "tree-iterator.h" -#include "tree-flow.h" +#include "bitmap.h" +#include "gimple.h" /* Possible cases of implicit bad conversions. Used to select diagnostic messages in convert_for_assignment. */ enum impl_conv { ic_argpass, Index: gcc/tree-flow.h =================================================================== --- gcc/tree-flow.h (revision 161481) +++ gcc/tree-flow.h (working copy) @@ -538,11 +538,10 @@ extern void phinodes_print_statistics (v #endif /* In gimple-low.c */ extern void record_vars_into (tree, tree); extern void record_vars (tree); -extern bool block_may_fallthru (const_tree); extern bool gimple_seq_may_fallthru (gimple_seq); extern bool gimple_stmt_may_fallthru (gimple); extern bool gimple_check_call_args (gimple);