The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Интерактивная система просмотра системных руководств (man-ов)

 ТемаНаборКатегория 
 
 [Cписок руководств | Печать]

cflow (1)
  • >> cflow (1) ( Solaris man: Команды и прикладные программы пользовательского уровня )
  • cflow (1) ( POSIX man: Команды и прикладные программы пользовательского уровня )
  • 
    NAME
         cflow - generate C flowgraph
    
    SYNOPSIS
         ccffllooww [[--rr]] [[--iixx]] [[--ii_]] [[--ddnum]] files
    
    DESCRIPTION
         The ccffllooww command analyzes a collection  of  C,  yyaacccc,  lleexx,
         assembler,  and object files and builds a graph charting the
         external function references.  Files suffixed with  ..yy,  ..ll,
         and  ..cc  are  processed  by yyaacccc, lleexx, and the C compiler as
         appropriate.  The results of  the  preprocessed  files,  and
         files  suffixed with ..ii, are then run through the first pass
         of lliinntt.  Files suffixed with ..ss are  assembled.   Assembled
         files,   and   files  suffixed  with  ..oo,  have  information
         extracted from their symbol tables.  The  results  are  col-
         lected  and  turned into a graph of external references that
         is written on the standard output.
    
         Each line of output begins with a reference number, followed
         by  a suitable number of tabs indicating the level, then the
         name of the global symbol followed by a colon and its defin-
         ition.   Normally only function names that do not begin with
         an underscore are listed (see the --ii  options  below).   For
         information extracted from C source, the definition consists
         of an abstract type declaration (e.g., cchhaarr **), and,  delim-
         ited  by angle brackets, the name of the source file and the
         line number where the  definition  was  found.   Definitions
         extracted from object files indicate the file name and loca-
         tion counter under which the symbol appeared  (e.g.,  text).
         Leading  underscores  in C-style external names are deleted.
         Once a definition of a name  has  been  printed,  subsequent
         references to that name contain only the reference number of
         the line where the definition may be found.   For  undefined
         references, only <<>> is printed.
    
         As an example, suppose the following code is in ffiillee..cc:
    
              iinntt  ii;;
              mmaaiinn(())
              {{
                   ff(());;
                   gg(());;
                   ff(());;
              }}
              ff(())
              {{
                   ii == hh(());;
              }}
    
    
    
         The command
    
              ccffllooww --iixx ffiillee..cc
    
         produces the output
    
              11    mmaaiinn:: iinntt(()),, <<ffiillee..cc 44>>
              22         ff:: iinntt(()),, <<ffiillee..cc 1111>>
              33              hh:: <<>>
              44              ii:: iinntt,, <<ffiillee..cc 11>>
              55         gg:: <<>>
    
         When the nesting level becomes too deep, the output of ccffllooww
         can  be  piped  to  the  pprr command, using the --ee option, to
         compress the tab expansion  to  something  less  than  every
         eight spaces.
    
         In addition to the --DD, --II, and --UU options, which are  inter-
         preted  just  as  they  are by cccc, the following options are
         interpreted by ccffllooww:
    
         --rr     Reverse the ``caller:callee'' relationship  producing
                an inverted listing showing the callers of each func-
                tion.  The listing is also sorted in  lexicographical
                order by callee.
    
         --iixx    Include external and static data symbols. The default
                is to include only functions in the flowgraph.
    
         --ii_    Include names that  begin  with  an  underscore.  The
                default  is  to  exclude these functions (and data if
                --iixx is used).
    
         --ddnum  The num decimal integer indicates the depth at  which
                the  flowgraph is cut off.  By default this number is
                very large.  Attempts to set the cutoff  depth  to  a
                nonpositive integer will be ignored.
    
    SEE ALSO
         as(1), cc(1) lex(1), lint(1), nm(1), pr(1), yacc(1)
    
    DIAGNOSTICS
         Complains about multiple definitions and only  believes  the
         first.
    
    NOTES
         Files produced by lleexx and yyaacccc cause the reordering of  line
         number declarations, which can confuse ccffllooww.  To get proper
         results, feed ccffllooww the yyaacccc or lleexx input.
    
    
    
    


    Поиск по тексту MAN-ов: 




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру