diff options
author | dim <dim@FreeBSD.org> | 2013-12-22 00:07:40 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2013-12-22 00:07:40 +0000 |
commit | 952eddef9aff85b1e92626e89baaf7a360e2ac85 (patch) | |
tree | df8df0b0067b381eab470a3b8f28d14a552a6340 /docs/tools/clang.pod | |
parent | ea266cad53e3d49771fa38103913d3ec7a166694 (diff) | |
download | FreeBSD-src-952eddef9aff85b1e92626e89baaf7a360e2ac85.zip FreeBSD-src-952eddef9aff85b1e92626e89baaf7a360e2ac85.tar.gz |
Vendor import of clang release_34 branch r197841 (effectively, 3.4 RC3):
https://llvm.org/svn/llvm-project/cfe/branches/release_34@197841
Diffstat (limited to 'docs/tools/clang.pod')
-rw-r--r-- | docs/tools/clang.pod | 69 |
1 files changed, 49 insertions, 20 deletions
diff --git a/docs/tools/clang.pod b/docs/tools/clang.pod index d2394a8..a58986c 100644 --- a/docs/tools/clang.pod +++ b/docs/tools/clang.pod @@ -7,7 +7,7 @@ clang - the Clang C, C++, and Objective-C compiler =head1 SYNOPSIS B<clang> [B<-c>|B<-S>|B<-E>] B<-std=>I<standard> B<-g> - [B<-O0>|B<-O1>|B<-O2>|B<-Os>|B<-Oz>|B<-O3>|B<-Ofast>|B<-O4>] + [B<-O0>|B<-O1>|B<-O2>|B<-O3>|B<-Ofast>|B<-Os>|B<-Oz>|B<-O>|B<-O4>] B<-W>I<warnings...> B<-pedantic> B<-I>I<dir...> B<-L>I<dir...> B<-D>I<macro[=defn]> @@ -81,7 +81,8 @@ B<Clang Static Analyzer> The Clang Static Analyzer is a tool that scans source code to try to find bugs through code analysis. This tool uses many parts of Clang and is built into the -same driver. +same driver. Please see L<http://clang-analyzer.llvm.org> for more details +on how to use the static analyzer. =head1 OPTIONS @@ -112,10 +113,6 @@ Run all of the above, plus the assembler, generating a target ".o" object file. If no stage selection option is specified, all stages above are run, and the linker is run to combine the results into an executable or shared library. -=item B<--analyze> - -Run the Clang Static Analyzer. - =back @@ -263,20 +260,52 @@ may not exist on earlier ones. =over -=item B<-O0> B<-O1> B<-O2> B<-Os> B<-Oz> B<-O3> B<-Ofast> B<-O4> - -Specify which optimization level to use. B<-O0> means "no optimization": this -level compiles the fastest and generates the most debuggable code. B<-O2> is a -moderate level of optimization which enables most optimizations. B<-Os> is like -B<-O2> with extra optimizations to reduce code size. B<-Oz> is like B<-Os> -(and thus B<-O2>), but reduces code size further. B<-O3> is like B<-O2>, -except that it enables optimizations that take longer to perform or that may -generate larger code (in an attempt to make the program run faster). -B<-Ofast> enables all the optimizations from B<-O3> along with other aggressive -optimizations that may violate strict compliance with language standards. On -supported platforms, B<-O4> enables link-time optimization; object files are -stored in the LLVM bitcode file format and whole program optimization is done at -link time. B<-O1> is somewhere between B<-O0> and B<-O2>. +=item B<-O0> B<-O1> B<-O2> B<-O3> B<-Ofast> B<-Os> B<-Oz> B<-O> B<-O4> + +Specify which optimization level to use: + +=over + +=item B<-O0> + +Means "no optimization": this level compiles the fastest and +generates the most debuggable code. + +=item B<-O1> + +Somewhere between B<-O0> and B<-O2>. + +=item B<-O2> + +Moderate level of optimization which enables most optimizations. + +=item B<-O3> + +Like B<-O2>, except that it enables optimizations that take longer to perform +or that may generate larger code (in an attempt to make the program run faster). + +=item B<-Ofast> + +Enables all the optimizations from B<-O3> along with other aggressive +optimizations that may violate strict compliance with language standards. + +=item B<-Os> + +Like B<-O2> with extra optimizations to reduce code size. + +=item B<-Oz> + +Like B<-Os> (and thus B<-O2>), but reduces code size further. + +=item B<-O> + +Equivalent to B<-O2>. + +=item B<-O4> and higher + +Currently equivalent to B<-O3> + +=back =item B<-g> |