Provided by: llvm-16_16.0.6-27_amd64 bug

NAME

       opt - LLVM optimizer

SYNOPSIS

       opt [options] [filename]

DESCRIPTION

       The opt command is the modular LLVM optimizer and analyzer.  It takes LLVM source files as
       input, runs the specified optimizations or analyses on it, and then outputs the  optimized
       file.  The  optimizations available via opt depend upon what libraries were linked into it
       as well as any additional libraries that have been loaded with the -load option.  Use  the
       -help option to determine what optimizations you can use.

       If  filename is omitted from the command line or is “-”, opt reads its input from standard
       input.  Inputs can be in either the LLVM  assembly  language  format  (.ll)  or  the  LLVM
       bitcode format (.bc).

       If  an  output  filename is not specified with the -o option, opt writes its output to the
       standard output.

OPTIONS

       -f     Enable binary output on terminals.  Normally, opt will refuse to write raw  bitcode
              output  if  the  output stream is a terminal.  With this option, opt will write raw
              bitcode regardless of the output device.

       -help  Print a summary of command line options.

       -o <filename>
              Specify the output filename.

       -S     Write output in LLVM intermediate language (instead of bitcode).

       -{passname}
              opt provides the ability to run any of LLVM’s optimization or  analysis  passes  in
              any  order.   The  -help option lists all the passes available.  The order in which
              the options occur on the command line are the order  in  which  they  are  executed
              (within pass constraints).

       -strip-debug
              This  option  causes opt to strip debug information from the module before applying
              other optimizations.  It is essentially the same as  -strip  but  it  ensures  that
              stripping of debug information is done first.

       -verify-each
              This option causes opt to add a verify pass after every pass otherwise specified on
              the command line (including -verify).   This  is  useful  for  cases  where  it  is
              suspected  that a pass is creating an invalid module but it is not clear which pass
              is doing it.

       -stats Print statistics.

       -time-passes
              Record the amount of time needed for each pass and print it to standard error.

       -debug If this is a debug build, this option will enable debug printouts from passes which
              use  the  LLVM_DEBUG() macro.  See the LLVM Programmer’s Manual, section #DEBUG for
              more information.

       -load=<plugin>
              Load the dynamic object plugin.  This object should register  new  optimization  or
              analysis  passes.   Once  loaded,  the  object will add new command line options to
              enable various optimizations  or  analyses.   To  see  the  new  complete  list  of
              optimizations, use the -help and -load options together.  For example:

                 opt -load=plugin.so -help

       -print-passes
              Print all available passes and exit.

EXIT STATUS

       If  opt succeeds, it will exit with 0.  Otherwise, if an error occurs, it will exit with a
       non-zero value.

AUTHOR

       Maintained by the LLVM Team (https://llvm.org/).

COPYRIGHT

       2003-2024, LLVM Project