noble (1) llvm-extract.1.gz

Provided by: llvm-18_18.1.3-1ubuntu1_amd64 bug

NAME

       llvm-extract - extract a function from an LLVM module

SYNOPSIS

       llvm-extract [options] --func function-name [filename]

DESCRIPTION

       The  llvm-extract  command  takes  the name of a function and extracts it from the specified LLVM bitcode
       file.  It is primarily used as a debugging tool to reduce  test  cases  from  larger  programs  that  are
       triggering a bug.

       In  addition  to  extracting  the  bitcode  of  the  specified  function,  llvm-extract  will also remove
       unreachable global variables, prototypes, and unused types.

       The llvm-extract command reads its input from standard input if filename is omitted or if filename is  -.
       The output is always written to standard output, unless the -o option is specified (see below).

OPTIONS

       --alias alias-name
          Extract  the  alias  named  function-name  from  the LLVM bitcode.  May be specified multiple times to
          extract multiple alias at once.

       --ralias alias-regular-expr
          Extract the alias matching alias-regular-expr from the LLVM bitcode.  All alias matching  the  regular
          expression will be extracted.  May be specified multiple times.

       --bb basic-block-specifier
          Extract  basic  blocks(s)  specified  in  basic-block-specifier. May be specified multiple times. Each
          <function:bb[;bb]> specifier pair will create a function. If multiple basic blocks  are  specified  in
          one pair, the first block in the sequence should dominate the rest.

       --delete
          Delete specified Globals from Module.

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

       --func function-name
          Extract  the  function  named function-name from the LLVM bitcode.  May be specified multiple times to
          extract multiple functions at once.

       --rfunc function-regular-expr
          Extract the function(s) matching function-regular-expr from the LLVM bitcode.  All functions  matching
          the regular expression will be extracted.  May be specified multiple times.

       --glob global-name
          Extract  the global variable named global-name from the LLVM bitcode.  May be specified multiple times
          to extract multiple global variables at once.

       --rglob glob-regular-expr
          Extract the global variable(s)  matching  global-regular-expr  from  the  LLVM  bitcode.   All  global
          variables matching the regular expression will be extracted.  May be specified multiple times.

       --keep-const-init
          Preserve the values of constant globals.

       --recursive
          Recursively extract all called functions

       -help
          Print a summary of command line options.

       -o filename
          Specify  the output filename.  If filename is "-" (the default), then llvm-extract sends its output to
          standard output.

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

EXIT STATUS

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

SEE ALSO

       bugpoint(1)

AUTHOR

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

       2003-2024, LLVM Project