HELP: GCC Passes and Files

Dave Korn dk@artimi.com
Fri May 21 17:04:00 GMT 2004


> -----Original Message-----
> From: gcc-owner On Behalf Of perugupa
> Sent: 21 May 2004 17:27

> Hi,
>   I have mailed to this group before about this.thanx for all 
> your help.I
>   am trying to build an operational profile for gcc and 
> trying to find out
>   the reliability of the components of gcc.I am considering 
> component as
>   'the group of source files that contribute to a particular 
> pass of the
>   compiler' like they mentioned in
> http://www.dis.com/gnu/gcc/Passes.html
> 
> but this document is missing many files that are there in gcc.

  That document is a slightly old version.  Are you using the docs that
relate to the particular release of gcc you're examining?

>i looked
> into the code and figured out the problem to some extent.but 
> i am unable
> to find out to which pass the following files belong

  Not all files 'belong' to a pass.  Some files implement passes of the
compiler, but others provide support and infrastructure that is used by all
the passes, or by none.  You need to rethink your analysis slightly.

> builtins.c

  If anything, you could say this is part of RTL generation.

> collect2.c

  This is part of a separate program altogether.  Haven't you even read the
gcc manual or documentation yet?  You ought to already know this.

> cfgbuild.c

  This contains support routines to generate control flow graphs, which are
used by many passes to analyze the structure of the program that is being
compiled.

> enquire.c
> diagnostic.c
> timevar.c
> sbitmap.c
> intl.c
> linemap.c
> mkdeps.c
> params.c
> prefix.c

  The remainder I leave as an exercise for the reader.  Meaning you.  Since
it's your homework, after all!

> and there are some files which i think will go to the same 
> pass but unable
> to assiggn them to any component.

  You have to get over this notion that there's a one-to-one relationship
between files and passes.  Hash tables are used all over, and the garbage
collector is a piece of memory management infrastructure, so it's not a pass
at all.

    cheers, 
      DaveK
-- 
Can't think of a witty .sigline today....



More information about the Gcc mailing list