extract has been renamed to llvm-extract to avoid conflicting with another tool
[oota-llvm.git] / docs / CommandGuide / llvm-extract.pod
1 =pod
2
3 =head1 NAME
4
5 llvm-extract - extract a function from an LLVM module
6
7 =head1 SYNOPSIS
8
9 B<llvm-extract> [I<options>] B<--func> I<function-name> [I<filename>]
10
11 =head1 DESCRIPTION
12
13 The B<llvm-extract> command takes the name of a function and extracts it from
14 the specified LLVM bytecode file.  It is primarily used as a debugging tool to
15 reduce test cases from larger programs that are triggering a bug.
16
17 In addition to extracting the bytecode of the specified function,
18 B<llvm-extract> will also remove unreachable global variables, prototypes, and
19 unused types.
20
21 The B<llvm-extract> command reads its input from standard input if filename is
22 omitted or if filename is -.  The output is always written to standard output,
23 unless the B<-o> option is specified (see below).
24
25 =head1 OPTIONS
26
27 =over
28
29 =item B<-f>
30
31 Force overwrite.  Normally, B<llvm-extract> will refuse to overwrite an
32 output file that already exists.  With this option, B<llvm-extract>
33 will overwrite the output file and replace it with new bytecode.
34
35 =item B<--func> I<function-name>
36
37 Extract the function named I<function-name> from the LLVM bytecode.
38
39 =item B<--help>
40
41 Print a summary of command line options.
42
43 =item B<-o> I<filename>
44
45 Specify the output filename.  If filename is "-" (the default), then
46 B<llvm-extract> sends its output to standard output.
47
48 =item B<--stats>
49
50 Print statistics.
51
52 =item B<--time-passes>
53
54 Record the amount of time needed for each pass and print it to standard
55 error.
56
57 =back
58
59 =head1 EXIT STATUS
60
61 If B<llvm-extract> succeeds, it will exit with 0.  Otherwise, if an error
62 occurs, it will exit with a non-zero value.
63
64 =head1 SEE ALSO
65
66 L<bugpoint|bugpoint>
67
68 =head1 AUTHORS
69
70 Maintained by the LLVM Team (L<http://llvm.cs.uiuc.edu>).
71
72 =cut