public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* HELP: GCC Passes and Files
@ 2004-05-10 15:18 perugupa
  2004-05-14  1:21 ` Jim Wilson
  0 siblings, 1 reply; 14+ messages in thread
From: perugupa @ 2004-05-10 15:18 UTC (permalink / raw)
  To: gcc

Hi all,
   I have a question regarding the source code of gcc.Is there any way to
   find out details about the source files in gcc(3.2.3) ie. to find out
   which file contributes to which phase(PASS) of the compiler.The
   document(Passes and Files of the Compiler) available on net
http://gcc.gnu.org/onlinedocs/gccint/Passes.html#Passes

 mensioned a few files and their use but it is missing many files that are
 there in gcc subdirectory.may be that is too old.is there any new
 document like this.i have so many files that are missing. your help will
 be appreciated.thank you
best regards,
nath.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: HELP: GCC Passes and Files
  2004-05-10 15:18 HELP: GCC Passes and Files perugupa
@ 2004-05-14  1:21 ` Jim Wilson
  2004-05-18 18:09   ` change the sampling time in the gprof perugupa
       [not found]   ` <2861.157.182.194.86.1084812450.squirrel@www.csee.wvu.edu>
  0 siblings, 2 replies; 14+ messages in thread
From: Jim Wilson @ 2004-05-14  1:21 UTC (permalink / raw)
  To: perugupa; +Cc: gcc

perugupa@csee.wvu.edu wrote:
http://gcc.gnu.org/onlinedocs/gccint/Passes.html#Passes
 mensioned a few files and their use but it is missing many files that are
 there in gcc subdirectory.
We have only the document you are looking at.  Keeping doc files up to 
date is a never ending problem.  Try looking at the sources for anything 
that isn't obvious from the Passes.html file.  You will have to look at 
sources anyways if you want to do anything major with gcc.

If you want to help with doc updates, that would be useful.

If you ask questions about specific files you will probably get specific 
answers.  Vague questions like this one can't easily be answered though.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com


^ permalink raw reply	[flat|nested] 14+ messages in thread

* change the sampling time in the gprof
  2004-05-14  1:21 ` Jim Wilson
@ 2004-05-18 18:09   ` perugupa
  2004-05-18 18:35     ` Ian Lance Taylor
       [not found]   ` <2861.157.182.194.86.1084812450.squirrel@www.csee.wvu.edu>
  1 sibling, 1 reply; 14+ messages in thread
From: perugupa @ 2004-05-18 18:09 UTC (permalink / raw)
  To: gcc

Hi,
   i am extracting the execution profiles of the test cases on gcc sing
   gprof.the output of the profile has all 0's for the self seconds
   colomn.is there any way to change the sample time so that i can get
   reasonable numbers in the colomn.default is 0.01 sec.i would like to
   change that to 0.001.any help will be appreciated.thank you.
regards
nath.



> perugupa@csee.wvu.edu wrote:
>> http://gcc.gnu.org/onlinedocs/gccint/Passes.html#Passes
>>  mensioned a few files and their use but it is missing many files that
>>  are there in gcc subdirectory.
>
> We have only the document you are looking at.  Keeping doc files up to
> date is a never ending problem.  Try looking at the sources for
> anything  that isn't obvious from the Passes.html file.  You will have
> to look at  sources anyways if you want to do anything major with gcc.
>
> If you want to help with doc updates, that would be useful.
>
> If you ask questions about specific files you will probably get
> specific  answers.  Vague questions like this one can't easily be
> answered though. --
> Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: change the sampling time in the gprof
  2004-05-18 18:09   ` change the sampling time in the gprof perugupa
@ 2004-05-18 18:35     ` Ian Lance Taylor
  2004-05-18 18:46       ` Zack Weinberg
  0 siblings, 1 reply; 14+ messages in thread
From: Ian Lance Taylor @ 2004-05-18 18:35 UTC (permalink / raw)
  To: perugupa; +Cc: gcc

<perugupa@csee.wvu.edu> writes:

>    i am extracting the execution profiles of the test cases on gcc sing
>    gprof.the output of the profile has all 0's for the self seconds
>    colomn.is there any way to change the sample time so that i can get
>    reasonable numbers in the colomn.default is 0.01 sec.i would like to
>    change that to 0.001.any help will be appreciated.thank you.

This is not a gcc question.

The profiling routines are part of the system library--glibc on
GNU/Linux systems.  Those routines invoke system calls.  gprof is part
of the binutils.

On typical Unix systems, as well as on GNU/Linux, the precision of the
gprof timer is determined by the behaviour of the profil() function.
I don't know whether there is any way to adjust that on your
particular system.

Ian

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: change the sampling time in the gprof
  2004-05-18 18:35     ` Ian Lance Taylor
@ 2004-05-18 18:46       ` Zack Weinberg
  2004-05-18 18:57         ` Ian Lance Taylor
  2004-05-18 19:59         ` perugupa
  0 siblings, 2 replies; 14+ messages in thread
From: Zack Weinberg @ 2004-05-18 18:46 UTC (permalink / raw)
  To: Ian Lance Taylor; +Cc: perugupa, gcc

Ian Lance Taylor <ian@wasabisystems.com> writes:

> On typical Unix systems, as well as on GNU/Linux, the precision of the
> gprof timer is determined by the behaviour of the profil() function.
> I don't know whether there is any way to adjust that on your
> particular system.

Linux (the kernel) does not implement profil().  glibc uses
setitimer() and SIGPROF for profiling.

zw

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: change the sampling time in the gprof
  2004-05-18 18:46       ` Zack Weinberg
@ 2004-05-18 18:57         ` Ian Lance Taylor
  2004-05-18 19:59         ` perugupa
  1 sibling, 0 replies; 14+ messages in thread
From: Ian Lance Taylor @ 2004-05-18 18:57 UTC (permalink / raw)
  To: Zack Weinberg; +Cc: perugupa, gcc

Zack Weinberg <zack@codesourcery.com> writes:

> Ian Lance Taylor <ian@wasabisystems.com> writes:
> 
> > On typical Unix systems, as well as on GNU/Linux, the precision of the
> > gprof timer is determined by the behaviour of the profil() function.
> > I don't know whether there is any way to adjust that on your
> > particular system.
> 
> Linux (the kernel) does not implement profil().  glibc uses
> setitimer() and SIGPROF for profiling.

Yeah, I was somewhat ambiguous.  glibc does use the profil function,
but as you say the function is not in the kernel.  It is just another
part of glibc.

Ian

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: change the sampling time in the gprof
  2004-05-18 18:46       ` Zack Weinberg
  2004-05-18 18:57         ` Ian Lance Taylor
@ 2004-05-18 19:59         ` perugupa
  2004-05-18 20:11           ` Ian Lance Taylor
  1 sibling, 1 reply; 14+ messages in thread
From: perugupa @ 2004-05-18 19:59 UTC (permalink / raw)
  To: zack; +Cc: ian, gcc

> Ian Lance Taylor <ian@wasabisystems.com> writes:
>
>> On typical Unix systems, as well as on GNU/Linux, the precision of the
>> gprof timer is determined by the behaviour of the profil() function. I
>> don't know whether there is any way to adjust that on your
>> particular system.
>
> Linux (the kernel) does not implement profil().  glibc uses
> setitimer() and SIGPROF for profiling.
>
> zw

is there any way to change the sample time in Linux using setitimer or
SGPROF.
nath.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: change the sampling time in the gprof
  2004-05-18 19:59         ` perugupa
@ 2004-05-18 20:11           ` Ian Lance Taylor
  0 siblings, 0 replies; 14+ messages in thread
From: Ian Lance Taylor @ 2004-05-18 20:11 UTC (permalink / raw)
  To: perugupa; +Cc: gcc

<perugupa@csee.wvu.edu> writes:

> is there any way to change the sample time in Linux using setitimer or
> SGPROF.

Again, this is not a gcc question.  You are asking the wrong people.

I don't know of a way, but that doesn't mean that there isn't one.

Ian

^ permalink raw reply	[flat|nested] 14+ messages in thread

* HELP: GCC Passes and Files
       [not found]     ` <1084818403.1072.25.camel@leaf.tuliptree.org>
@ 2004-05-21 16:26       ` perugupa
  2004-05-21 17:04         ` Dave Korn
  0 siblings, 1 reply; 14+ messages in thread
From: perugupa @ 2004-05-21 16:26 UTC (permalink / raw)
  To: gcc; +Cc: perugupa

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.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
builtins.c
collect2.c
cfgbuild.c
enquire.c
diagnostic.c
timevar.c
sbitmap.c
intl.c
linemap.c
mkdeps.c
params.c
prefix.c

and there are some files which i think will go to the same pass but unable
to assiggn them to any component.
hash.c
hastab.c
hashtable.c
ggc-common.c
ggc-none.c
ggc-page.c

i will be glad if anyone can help me with this.thank you in advance

best regards
nath.



> On Mon, 2004-05-17 at 09:47, perugupa@csee.wvu.edu wrote:
>> out which source files contributer to which pass of the compiler.but
>> the document has very few source file names.i would like to find out
>> the information about the remaining source files.there are more than
>> 70 files, so i couldn't give the names.
>
> I see 381 files and directories in the gcc directory as of today.  I am
> not going to go through all of them and try to categorize them.  You
> should try to categorize files yourself, and then ask questions about
> the ones you can't figure out.  You may be able to figure out some
> cases yourself from profiles.  Files that contain functions that are
> only called from a particular place will obviously be part of that
> module.
>
>  --
> Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com



^ permalink raw reply	[flat|nested] 14+ messages in thread

* RE: HELP: GCC Passes and Files
  2004-05-21 16:26       ` HELP: GCC Passes and Files perugupa
@ 2004-05-21 17:04         ` Dave Korn
  0 siblings, 0 replies; 14+ messages in thread
From: Dave Korn @ 2004-05-21 17:04 UTC (permalink / raw)
  To: gcc

> -----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....

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: HELP: GCC Passes and Files
  2004-06-07 15:11   ` perugupa
@ 2004-06-07 16:58     ` Jim Wilson
  0 siblings, 0 replies; 14+ messages in thread
From: Jim Wilson @ 2004-06-07 16:58 UTC (permalink / raw)
  To: perugupa; +Cc: gcc

perugupa@csee.wvu.edu wrote:
>   thank you very much for the information.it helps me a lot.and I have a
>   question regarding sampling time in gprof."how to change the sampling
>   time in gprof to get reasonable numbers in self seconds colomn ?"

I don't know anything about changing the sampling time.  This isn't 
controlled by gcc.
-- 
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: HELP: GCC Passes and Files
  2004-06-07  0:53 ` Jim Wilson
@ 2004-06-07 15:11   ` perugupa
  2004-06-07 16:58     ` Jim Wilson
  0 siblings, 1 reply; 14+ messages in thread
From: perugupa @ 2004-06-07 15:11 UTC (permalink / raw)
  To: wilson; +Cc: gcc


Hi Jim,
  thank you very much for the information.it helps me a lot.and I have a
  question regarding sampling time in gprof."how to change the sampling
  time in gprof to get reasonable numbers in self seconds colomn ?"
  sorry for asking this here but i didn't get any reply from the glibc
  people.please tell me if u have idea about this.
best regards,
nath

> perugupa@csee.wvu.edu wrote:
>> builtins.c
>
> built-in function support.  Used by several language front ends,
> primarly C/C++.
>
>> collect2.c
>
> Linker front-end for things like C++ static constructors/destructors,
> template repositories.  Not used by all targets.  Should be considered
> part of gcc driver.
>
>> cfgbuild.c
>
> Builds a cfg.  Infrastructure used by a number of optimization passes.
>
>> enquire.c
>
> Build time only, not part of gcc binary.  Produces FP constants
> suitable  for float.h header file.  No longer used, except possibly for
> an initial  port.  Has since been deleted from code base.
>
>> diagnostic.c
>
> Prints diagnostics.  Used in multiple places.
>
>> timevar.c
>
> Prints timing info used for simple gcc profiling.  Part of compiler
> infrastructure.
>
>> sbitmap.c
>
> bitmap data structures.  Part of infrastructure.  Used in multiple
> places.
>
>> intl.c
>
> Internationalization code.  Used in multiple places, anyplace that
> parses or prints strings.
>
>> linemap.c
>
> Tracks file names and line numbers.  Used for printing diagnostics in
> the preprocessor.
>
>> mkdeps.c
>
> Makefile dependency generator.  Used in preprocessor.
>
>> params.c
>
> Used for run-time controllable parameters, cf the --parm option.
> Infrastructure used in many optimization passes.
>
>> prefix.c
>
> Used for converting file name paths, intended for Windows registry
> support, but not really used by anyone.  Infrastructure.
>
>> hash.c
>> hastab.c
>> hashtable.c
>
> hash table data structures.  Infrastructure used in multiple places.
>
>> ggc-common.c
>> ggc-none.c
>> ggc-page.c
>
> gcc garbage collector for memory management.  Infrastructure, used in
> multiple places.
> --
> Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: HELP: GCC Passes and Files
  2004-06-01 17:05 perugupa
@ 2004-06-07  0:53 ` Jim Wilson
  2004-06-07 15:11   ` perugupa
  0 siblings, 1 reply; 14+ messages in thread
From: Jim Wilson @ 2004-06-07  0:53 UTC (permalink / raw)
  To: perugupa; +Cc: gcc

perugupa@csee.wvu.edu wrote:
> builtins.c

built-in function support.  Used by several language front ends, 
primarly C/C++.

> collect2.c

Linker front-end for things like C++ static constructors/destructors, 
template repositories.  Not used by all targets.  Should be considered 
part of gcc driver.

> cfgbuild.c

Builds a cfg.  Infrastructure used by a number of optimization passes.

> enquire.c

Build time only, not part of gcc binary.  Produces FP constants suitable 
for float.h header file.  No longer used, except possibly for an initial 
port.  Has since been deleted from code base.

> diagnostic.c

Prints diagnostics.  Used in multiple places.

> timevar.c

Prints timing info used for simple gcc profiling.  Part of compiler 
infrastructure.

> sbitmap.c

bitmap data structures.  Part of infrastructure.  Used in multiple places.

> intl.c

Internationalization code.  Used in multiple places, anyplace that 
parses or prints strings.

> linemap.c

Tracks file names and line numbers.  Used for printing diagnostics in 
the preprocessor.

> mkdeps.c

Makefile dependency generator.  Used in preprocessor.

> params.c

Used for run-time controllable parameters, cf the --parm option. 
Infrastructure used in many optimization passes.

> prefix.c

Used for converting file name paths, intended for Windows registry 
support, but not really used by anyone.  Infrastructure.

> hash.c
> hastab.c
> hashtable.c

hash table data structures.  Infrastructure used in multiple places.

> ggc-common.c
> ggc-none.c
> ggc-page.c

gcc garbage collector for memory management.  Infrastructure, used in 
multiple places.
-- 
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com

^ permalink raw reply	[flat|nested] 14+ messages in thread

* HELP: GCC Passes and Files
@ 2004-06-01 17:05 perugupa
  2004-06-07  0:53 ` Jim Wilson
  0 siblings, 1 reply; 14+ messages in thread
From: perugupa @ 2004-06-01 17:05 UTC (permalink / raw)
  To: gcc

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.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

builtins.c
collect2.c
cfgbuild.c
enquire.c
diagnostic.c
timevar.c
sbitmap.c
intl.c
linemap.c
mkdeps.c
params.c
prefix.c

and there are some files which i think will go to the same pass but unable
to assiggn them to any component.
hash.c
hastab.c
hashtable.c
ggc-common.c
ggc-none.c
ggc-page.c

i will be glad if anyone can help me with this.thank you in advance

best regards
nath.



^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2004-06-07 16:58 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-05-10 15:18 HELP: GCC Passes and Files perugupa
2004-05-14  1:21 ` Jim Wilson
2004-05-18 18:09   ` change the sampling time in the gprof perugupa
2004-05-18 18:35     ` Ian Lance Taylor
2004-05-18 18:46       ` Zack Weinberg
2004-05-18 18:57         ` Ian Lance Taylor
2004-05-18 19:59         ` perugupa
2004-05-18 20:11           ` Ian Lance Taylor
     [not found]   ` <2861.157.182.194.86.1084812450.squirrel@www.csee.wvu.edu>
     [not found]     ` <1084818403.1072.25.camel@leaf.tuliptree.org>
2004-05-21 16:26       ` HELP: GCC Passes and Files perugupa
2004-05-21 17:04         ` Dave Korn
2004-06-01 17:05 perugupa
2004-06-07  0:53 ` Jim Wilson
2004-06-07 15:11   ` perugupa
2004-06-07 16:58     ` Jim Wilson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).