aboutsummaryrefslogtreecommitdiff
path: root/usr.bin/clang/clang
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2021-04-26 11:23:24 +0000
committerDimitry Andric <dim@FreeBSD.org>2021-06-13 20:01:15 +0000
commitd409305fa3838fb39b38c26fc085fb729b8766d5 (patch)
treefd234b27775fb59a57266cf36a05ec916e79a85f /usr.bin/clang/clang
parente8d8bef961a50d4dc22501cde4fb9fb0be1b2532 (diff)
parentb4125f7d51da2bb55d3b850dba9a69c201c3422c (diff)
downloadsrc-d409305fa3838fb39b38c26fc085fb729b8766d5.tar.gz
src-d409305fa3838fb39b38c26fc085fb729b8766d5.zip
Merge llvm-project 12.0.0 release
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-12.0.0-0-gd28af7c654d8, a.k.a. 12.0.0 release. PR: 255570 MFC after: 6 weeks
Diffstat (limited to 'usr.bin/clang/clang')
-rw-r--r--usr.bin/clang/clang/clang.142
1 files changed, 32 insertions, 10 deletions
diff --git a/usr.bin/clang/clang/clang.1 b/usr.bin/clang/clang/clang.1
index 1d3e9889da80..81acd576c127 100644
--- a/usr.bin/clang/clang/clang.1
+++ b/usr.bin/clang/clang/clang.1
@@ -1,9 +1,6 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "CLANG" "1" "2020-06-26" "10" "Clang"
-.SH NAME
-clang \- the Clang C, C++, and Objective-C compiler
.
.nr rst2man-indent-level 0
.
@@ -31,6 +28,9 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
+.TH "CLANG" "1" "2021-06-07" "12" "Clang"
+.SH NAME
+clang \- the Clang C, C++, and Objective-C compiler
.SH SYNOPSIS
.sp
\fBclang\fP [\fIoptions\fP] \fIfilename ...\fP
@@ -224,7 +224,7 @@ ISO C 2017 with GNU extensions
.UNINDENT
.UNINDENT
.sp
-The default C language standard is \fBgnu11\fP, except on PS4, where it is
+The default C language standard is \fBgnu17\fP, except on PS4, where it is
\fBgnu99\fP\&.
.sp
Supported values for the C++ language are:
@@ -417,7 +417,9 @@ Enable trigraphs.
.TP
.B \-ffreestanding
Indicate that the file should be compiled for a freestanding, not a hosted,
-environment.
+environment. Note that it is assumed that a freestanding environment will
+additionally provide \fImemcpy\fP, \fImemmove\fP, \fImemset\fP and \fImemcmp\fP
+implementations, as these are needed for efficient codegen for many programs.
.UNINDENT
.INDENT 0.0
.TP
@@ -525,13 +527,13 @@ application.
.TP
.B \-\-print\-supported\-cpus
Print out a list of supported processors for the given target (specified
-through \-\-target=<architecture> or \-arch <architecture>). If no target is
-specified, the system default target will be used.
+through \fB\-\-target=<architecture>\fP or \fI\%\-arch\fP \fB<architecture>\fP). If no
+target is specified, the system default target will be used.
.UNINDENT
.INDENT 0.0
.TP
.B \-mcpu=?, \-mtune=?
-Aliases of \-\-print\-supported\-cpus
+Acts as an alias for \fI\%\-\-print\-supported\-cpus\fP\&.
.UNINDENT
.INDENT 0.0
.TP
@@ -573,7 +575,7 @@ size further.
\fI\%\-Og\fP Like \fI\%\-O1\fP\&. In future versions, this option might
disable different optimizations in order to improve debuggability.
.sp
-\fI\%\-O\fP Equivalent to \fI\%\-O2\fP\&.
+\fI\%\-O\fP Equivalent to \fI\%\-O1\fP\&.
.sp
\fI\%\-O4\fP and higher
.INDENT 0.0
@@ -633,6 +635,13 @@ program.
.UNINDENT
.INDENT 0.0
.TP
+.B \-feliminate\-unused\-debug\-types
+By default, Clang does not emit type information for types that are defined
+but not used in a program. To retain the debug info for these unused types,
+the negation \fB\-fno\-eliminate\-unused\-debug\-types\fP can be used.
+.UNINDENT
+.INDENT 0.0
+.TP
.B \-fexceptions
Enable generation of unwind information. This allows exceptions to be thrown
through Clang compiled stack frames. This is on by default in x86\-64.
@@ -677,6 +686,19 @@ LLVM bitcode is suitable for monolithic Link Time Optimization (LTO), where
the linker merges all such modules into a single combined module for
optimization. With "thin", ThinLTO
compilation is invoked instead.
+.sp
+\fBNOTE:\fP
+.INDENT 7.0
+.INDENT 3.5
+On Darwin, when using \fI\%\-flto\fP along with \fB\-g\fP and
+compiling and linking in separate steps, you also need to pass
+\fB\-Wl,\-object_path_lto,<lto\-filename>.o\fP at the linking step to instruct the
+ld64 linker not to delete the temporary object file generated during Link
+Time Optimization (this flag is automatically passed to the linker by Clang
+if compilation and linking are done in a single step). This allows debugging
+the executable as well as generating the \fB\&.dSYM\fP bundle using \fBdsymutil(1)\fP\&.
+.UNINDENT
+.UNINDENT
.UNINDENT
.SS Driver Options
.INDENT 0.0
@@ -882,6 +904,6 @@ output of the compiler, along with information to reproduce.
.SH AUTHOR
Maintained by the Clang / LLVM Team (<http://clang.llvm.org>)
.SH COPYRIGHT
-2007-2020, The Clang Team
+2007-2021, The Clang Team
.\" Generated by docutils manpage writer.
.