dwww Home | Manual pages | Find package

LLVM-EXTRACT(1)                      LLVM                      LLVM-EXTRACT(1)

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 debug-
       ging 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  file-
       name  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 termi-
          nal.  With this option, llvm-extract will write raw bitcode  regard-
          less 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 ex-
          tracted.  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/).

COPYRIGHT
       2003-2023, LLVM Project

15                                2023-10-16                   LLVM-EXTRACT(1)

Generated by dwww version 1.15 on Sun Jun 23 10:25:52 CEST 2024.