home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / forut062.zip / ForUtil-0.62 / man / doc / fflow.txt < prev    next >
Text File  |  1996-08-28  |  9KB  |  331 lines

  1.  
  2.  
  3.  
  4. FFLOW(1)              ForUtil Fortran Tools              FFLOW(1)
  5.  
  6.  
  7. NAME
  8.        fflow - generate a flowgraph for fortran files.
  9.  
  10. SYNOPSIS
  11.        fflow  [-cefhinpqtuv]  -Eext  -Idir -ddepth -llevel -ofile
  12.        -sname -xname [files]
  13.  
  14.  
  15. DESCRIPTION
  16.        fflow Generates a (partial) flowgraph of a  collection  of
  17.        fortran  files.   When  fed  with  a couple of directories
  18.        and/or files, fflow creates  a  flowgraph  indicating  the
  19.        flow  in  your program. The output is written on stdout by
  20.        default but can be written to file.  fflow is very usefull
  21.        for  large  programs  where you only want to see the flow-
  22.        graph of a certain part of a program.
  23.  
  24.  
  25. OPTIONS
  26.        -c     Using this option instructs  fflow  to  generate  a
  27.               complete  flowgraph for each subroutine or function
  28.               it encounters. By default, fflow will  place  a  ==
  29.               Line  XX  ==  in  the output for each subroutine or
  30.               function for which it has already generated a flow-
  31.               graph.  Beware  though  that  using this option can
  32.               significantly increase the size of the output  file
  33.               and  that  it  can take a little longer to generate
  34.               all flowgraphs.
  35.  
  36.  
  37.        -e     Using this option will cause fflow to  not  include
  38.               functions  without  calls  in  the output. Helps to
  39.               decrease the size of the output file.
  40.  
  41.  
  42.        -f     Include the full path of files in the  output.  The
  43.               default  is  to  print  the  name of the file only.
  44.               Using this option increases the memory  fflow  uses
  45.               to  store  its  data,  so it might be unwise to use
  46.               this option on msdos systems with their 640kb  mem-
  47.               ory limit.
  48.  
  49.  
  50.        -h, --help
  51.               gives  a  short description of every option you can
  52.               use.
  53.  
  54.  
  55.        -i     Using this option causes fflow to not print unknown
  56.               function  calls  in the output. Usefull if you only
  57.               want to have a flowgraph of  a  part  of  a  source
  58.               tree.
  59.  
  60.  
  61.  
  62.  
  63.  
  64. Linux                      August 1996                          1
  65.  
  66.  
  67.  
  68.  
  69.  
  70. FFLOW(1)              ForUtil Fortran Tools              FFLOW(1)
  71.  
  72.  
  73.        -n, -n-
  74.               Using  this  option  will  cause fflow to tell what
  75.               subroutines are never invoked. If you only want  to
  76.               check your files for this and do not want to gener-
  77.               ate a flowgraph, use -n-
  78.  
  79.  
  80.        -p     Starts the flowgraph  at  the  PROGRAM  definition.
  81.               When used with -u , fflow generates a flowgraph for
  82.               PROGRAM only.
  83.  
  84.               Note: if you use the -u option, fflow will generate
  85.               a  flowgraph  for  the  first  PROGRAM statement it
  86.               encounters.
  87.  
  88.  
  89.        -q     Be really quiet (usefull if called from a  script).
  90.               Only error messages will be shown.
  91.  
  92.  
  93.        -t     Use tabs instead of | as level indicator.
  94.  
  95.  
  96.        -u     Do  not  print unused functions in the output file.
  97.               Using this option will cause  fflow  to  not  print
  98.               functions and/or routines which are not referenced.
  99.               Use the -n or -n- option if you only want to  print
  100.               unused subroutines.
  101.  
  102.  
  103.        -v     Be  verbose.  Using this option shows a lot of use-
  104.               full information about the files being scanned.
  105.  
  106.  
  107.        --version
  108.               Show the version number of fflow
  109.  
  110.  
  111.        -Eext  Extensions fflow must use to determine which  files
  112.               it  has  to  scan. Up to eight -E are allowed.  The
  113.               default extension is .f
  114.  
  115.  
  116.        -Idir  Using this option tells fflow which directories  it
  117.               has  to  search for f77 files. Only the contents of
  118.               that  directory  are  scanned.  Subdirectories  are
  119.               ignored.  Up to 64 -I are allowed.
  120.  
  121.  
  122.        -ddepth
  123.               Sets  the  maximum  recursion  depth  to depth. The
  124.               default value is 64. This recursion  depth  is  the
  125.               maximum depth of function calls, and is mainly used
  126.               as a test for detecting recursion. If fflow manages
  127.  
  128.  
  129.  
  130. Linux                      August 1996                          2
  131.  
  132.  
  133.  
  134.  
  135.  
  136. FFLOW(1)              ForUtil Fortran Tools              FFLOW(1)
  137.  
  138.  
  139.               to  get  to  the default value, this probably indi-
  140.               cates  that  somewhere  in  your  program  infinite
  141.               recursion  might  occur.  If fflow aborts saying it
  142.               has reached the maximum recursion depth,  it  means
  143.               that  this  number  has  been hit. If you are abso-
  144.               lutely sure that recursion does not appear in  your
  145.               program,  you can increase this number to the maxi-
  146.               mum value of an unsigned integer on your system.
  147.  
  148.               The default value of 64 should be  enough  for  any
  149.               program.
  150.  
  151.  
  152.        -llevel
  153.               Using  this  option  will cause fflow to generate a
  154.               flowgraph which is only  level  levels  deep.  This
  155.               option can be very usefull to get a general idea on
  156.               the flow in a very large program. It also will help
  157.               reduce the size of the generated flowgraph.
  158.  
  159.  
  160.        -ofile file  to write flowgraph to. The default is stdout.
  161.  
  162.  
  163.        -sname This option causes fflow to start the  output  file
  164.               with the named function.  When used with -u , fflow
  165.               generates a flowgraph for this function only.
  166.  
  167.  
  168.        -xname Tells fflow to exclude the named file when scanning
  169.               the files found with the -I -E options. Up to 64 -x
  170.               options can be given.
  171.  
  172.  
  173. EXAMPLES
  174.        fflow -p -u fortran-files generates a flowgraph  for  your
  175.        program only.
  176.  
  177.        fflow  -sname  -u  fortran-files generates a flowgraph for
  178.        [name] only.
  179.  
  180.        fflow -Idir1 -Idir2 -E.f -E.f,v generates a flowgraph from
  181.        files  ending in .f and .f,v from the directories dir1 and
  182.        dir2.
  183.  
  184.  
  185. DIAGNOSTICS
  186.        The following warning messages can occur:
  187.  
  188.        WARNING: no program entry point found in file <file>
  189.               a call statement was encountered before  a  PROGRAM
  190.               statement  was  found.   fflow will use the name of
  191.               the file where this warning  occurs  as  a  program
  192.               name and continue.
  193.  
  194.  
  195.  
  196. Linux                      August 1996                          3
  197.  
  198.  
  199.  
  200.  
  201.  
  202. FFLOW(1)              ForUtil Fortran Tools              FFLOW(1)
  203.  
  204.  
  205.        Write failed
  206.               This  error can occur when fflow is writing a flow-
  207.               graph to file and a write error occurs.   The  most
  208.               likely  reasons  for  this  error to occur are disk
  209.               full or no space left on device
  210.  
  211.               The flowgraph generated by fflow can be very  huge.
  212.               We have seen a complete flowgraph of a single func-
  213.               tion which was in excess of 50MB, so it's  easy  to
  214.               fill  up  your  disk. When you encounter such large
  215.               flowgraphs, you  might  want  to  use  the  -llevel
  216.               option in order to generate a useable flowgraph.
  217.  
  218.  
  219. DISTRIBUTION POLICY
  220.        All  utilities  in  this  fortran  utility  suite are dis-
  221.        tributed under the GNU Public License.
  222.  
  223.  
  224. COMPATIBILITY
  225.        fflow has run under HP-UX 9 and 10, SGI IRIX  5.2  &  5.3,
  226.        DEC  OSF1,  SunOs  4.1 and 4.3, Cray Unicos, IBM AIX 3.2 &
  227.        4.1, Linux and MSDOS 6.2.  fflow also runs in  a  dos  box
  228.        under  Windows 3.1, 3.11 and Win95. An MS-Windows version,
  229.        Winfflow, is also available.
  230.  
  231.  
  232. SHORTCOMINGS
  233.        The output of fflow contains a flowgraph for each  subrou-
  234.        tine  or  function found in the input files. When you give
  235.        fflow the -c option, it can take a long time to write  the
  236.        flowgraph  to  file  if  you  have  fed it a collection of
  237.        source files with a huge number  of  calls.  This  can  be
  238.        annoying especially when running fflow on MSDOS.
  239.  
  240.        Currently,  fflow only looks at CALL, so although FUNCTION
  241.        is found, these do not show up in the flowgraph.
  242.  
  243.  
  244. BUGS
  245.        The MS-DOS versions of  these  tools  can  cause  problems
  246.        under  MS-DOS  if you feed them with a large collection of
  247.        files, few files with a lot of calls or a  combination  of
  248.        both. This is totally due to the 640kb memory limit MS-DOS
  249.        has.
  250.  
  251.        If you think you have found a bug, you can send  email  to
  252.        the  author, describing what the bug is, how you generated
  253.        it and if you can reproduce it. Also specify the  platform
  254.        where this bug occured.
  255.  
  256.  
  257. AUTHOR
  258.        Koen D'Hondt
  259.  
  260.  
  261.  
  262. Linux                      August 1996                          4
  263.  
  264.  
  265.  
  266.  
  267.  
  268. FFLOW(1)              ForUtil Fortran Tools              FFLOW(1)
  269.  
  270.  
  271.        ripley@xs4all.nl
  272.        (C)Copyright 1995-1996 by Ripley Software Development
  273.  
  274.  
  275. SEE ALSO
  276.        ftags(1),   ffscan(1),   scan_commons(1),   get_common(1),
  277.        list_commons(1)
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328. Linux                      August 1996                          5
  329.  
  330.  
  331.