Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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) specicified 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-2025, LLVM Project

11				  2025-04-17		       LLVM-EXTRACT(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=llvm-extract11&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help