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 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-ex-
     tract 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 out-
     put, 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 spec-
	ified 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  out-
	put 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  oc-
     curs, it will exit with a non-zero value.

SEE ALSO
     bugpoint(1)

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

COPYRIGHT
     2003-2026, LLVM Project

19				   2026-07-30			 LLVM-EXTRACT(1)

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

home | help