1LLVMC(1) LLVM Command Guide LLVMC(1)
2
3
4
6 llvmc - The LLVM Compiler Driver (WIP)
7
9 llvmc [options] filenames...
10
12 llvmc is a configurable driver for invoking other LLVM (and non-LLVM)
13 tools in order to compile, optimize and link software for multiple
14 languages. For those familiar with FSF's gcc tool, it is very similar.
15 Please note that llvmc is considered an experimental tool.
16
18 Built-in Options
19 LLVMC has some built-in options that can't be overridden in the
20 configuration libraries.
21
22 -o filename
23 Output file name.
24
25 -x language
26 Specify the language of the following input files until the next -x
27 option.
28
29 -load plugin_name
30 Load the specified plugin DLL. Example:
31 -load $LLVM_DIR/Release/lib/LLVMCSimple.so.
32
33 -v or --verbose
34 Enable verbose mode, i.e. print out all executed commands.
35
36 --check-graph
37 Check the compilation for common errors like mismatched
38 output/input language names, multiple default edges and cycles.
39 Because of plugins, these checks can't be performed at compile-
40 time. Exit with code zero if no errors were found, and return the
41 number of found errors otherwise. Hidden option, useful for
42 debugging LLVMC plugins.
43
44 --view-graph
45 Show a graphical representation of the compilation graph and exit.
46 Requires that you have dot and gv programs installed. Hidden
47 option, useful for debugging LLVMC plugins.
48
49 --write-graph
50 Write a compilation-graph.dot file in the current directory with
51 the compilation graph description in Graphviz format (identical to
52 the file used by the --view-graph option). The -o option can be
53 used to set the output file name. Hidden option, useful for
54 debugging LLVMC plugins.
55
56 --save-temps
57 Write temporary files to the current directory and do not delete
58 them on exit. This option can also take an argument: the
59 --save-temps=obj switch will write files into the directory
60 specified with the -o option. The --save-temps=cwd and --save-temps
61 switches are both synonyms for the default behaviour.
62
63 --temp-dir directory
64 Store temporary files in the given directory. This directory is
65 deleted on exit unless --save-temps is specified. If
66 --save-temps=obj is also specified, --temp-dir is given the
67 precedence.
68
69 -help
70 Print a summary of command-line options and exit.
71
72 -help-hidden
73 Print a summary of command-line options and exit. Print help even
74 for options intended for developers.
75
76 --version
77 Print version information and exit.
78
79 @file
80 Read command-line options from file. The options read are inserted
81 in place of the original @file option. If file does not exist, or
82 cannot be read, then the option will be treated literally, and not
83 removed.
84
85 Options in file are separated by whitespace. A whitespace character
86 may be included in an option by surrounding the entire option in
87 either single or double quotes. Any character (including a
88 backslash) may be included by prefixing the character to be
89 included with a backslash. The file may itself contain additional
90 @file options; any such options will be processed recursively.
91
92 Control Options
93 By default, LLVMC is built with some standard configuration libraries
94 that define the following options:
95
96 -clang
97 Use Clang instead of llvm-gcc.
98
99 -opt
100 Enable optimization passes with opt. To pass options to the opt
101 program use the -Wo, option.
102
103 -I directory
104 Add a directory to the header file search path.
105
106 -L directory
107 Add directory to the library search path.
108
109 -F directory
110 Add directory to the framework search path.
111
112 -lname
113 Link in the library libname.[bc | a | so]. This library should be
114 a bitcode library.
115
116 -framework name
117 Link in the library libname.[bc | a | so]. This library should be
118 a bitcode library.
119
120 -emit-llvm
121 Output LLVM bitcode (with -c) or assembly (with -S) instead of
122 native object (or assembly). If -emit-llvm is given without either
123 -c or -S it has no effect.
124
125 -Wa Pass options to assembler.
126
127 -Wl Pass options to linker.
128
129 -Wo Pass options to opt.
130
131 -Wllc
132 Pass options to llc (code generator).
133
135 If llvmc succeeds, it will exit with code 0. Otherwise, if an error
136 occurs, it will exit with a non-zero value. If one of the compilation
137 tools returns a non-zero status, pending actions will be discarded and
138 llvmc will return the same result code as the failing compilation tool.
139
141 llvm-gcc, llvm-g++, llvm-as, llvm-dis, llc, llvm-link
142
144 Maintained by the LLVM Team (<http://llvm.org>).
145
146
147
148CVS 2010-05-07 LLVMC(1)