From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18925 invoked by alias); 12 Jul 2011 17:59:01 -0000 Received: (qmail 18917 invoked by uid 22791); 12 Jul 2011 17:59:01 -0000 X-SWARE-Spam-Status: No, hits=-6.3 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 12 Jul 2011 17:58:28 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p6CHwSQV004967 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 12 Jul 2011 13:58:28 -0400 Received: from [10.16.3.196] (dhcp-100-3-196.bos.redhat.com [10.16.3.196]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p6CHwREW026814; Tue, 12 Jul 2011 13:58:27 -0400 Subject: Re: A visualization of GCC's passes, as a subway map From: David Malcolm To: Xinliang David Li Cc: "Paulo J. Matos" , gcc@gcc.gnu.org In-Reply-To: References: <1310406999.23887.34257.camel@surprise> <4E1BF650.1010503@gnu.org> <1310486854.23887.35650.camel@surprise> Content-Type: text/plain; charset="UTF-8" Date: Tue, 12 Jul 2011 18:08:00 -0000 Message-ID: <1310493331.23887.35775.camel@surprise> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2011-07/txt/msg00195.txt.bz2 On Tue, 2011-07-12 at 09:15 -0700, Xinliang David Li wrote: > FYI. If you just want text dump of gcc passes and their on|off > settings, option -fdump-passes can be used. This can be enhanced to > dump properties and TODOs. Thanks! I got a bit mystified by: $ gcc -fdump-passes test.c cc1: error: unrecognized command line option ‘-fdump-passes’ but it turns out I'm still stuck on 4.6.0 (though that's a restriction I've imposed on myself), and that you added it in 4.7, if I'm reading the history right: http://gcc.gnu.org/viewcvs?view=revision&revision=174930 FWIW, the analagous python code I used to generate my tables of passes is here: http://git.fedorahosted.org/git/?p=gcc-python-plugin.git;a=blob;f=generate-tables-of-passes-rst.py I don't know if it's sane in 4.6 to expose the "is_on" and "is_really_on" booleans as (readonly) attributes of the Python gcc.Pass objects; there seem to have been a lot of cleanups to that code in 4.7 [snip] Dave