summaryrefslogtreecommitdiffstats
path: root/usr.bin/clang
diff options
context:
space:
mode:
authorsjg <sjg@FreeBSD.org>2015-05-27 01:19:58 +0000
committersjg <sjg@FreeBSD.org>2015-05-27 01:19:58 +0000
commit65145fa4c81da358fcbc3b650156dab705dfa34e (patch)
tree55c065b6730aaac2afb6c29933ee6ec5fa4c4249 /usr.bin/clang
parent60ff4eb0dff94a04d75d0d52a3957aaaf5f8c693 (diff)
parente6b664c390af88d4a87208bc042ce503da664c3b (diff)
downloadFreeBSD-src-65145fa4c81da358fcbc3b650156dab705dfa34e.zip
FreeBSD-src-65145fa4c81da358fcbc3b650156dab705dfa34e.tar.gz
Merge sync of head
Diffstat (limited to 'usr.bin/clang')
-rw-r--r--usr.bin/clang/Makefile3
-rw-r--r--usr.bin/clang/bugpoint/Makefile11
-rw-r--r--usr.bin/clang/bugpoint/bugpoint.111
-rw-r--r--usr.bin/clang/clang/Makefile34
-rw-r--r--usr.bin/clang/clang/Makefile.depend10
-rw-r--r--usr.bin/clang/clang/clang.1731
-rw-r--r--usr.bin/clang/llc/Makefile22
-rw-r--r--usr.bin/clang/llc/llc.112
-rw-r--r--usr.bin/clang/lldb/Makefile89
-rw-r--r--usr.bin/clang/lli/Makefile19
-rw-r--r--usr.bin/clang/lli/lli.111
-rw-r--r--usr.bin/clang/llvm-ar/Makefile56
-rw-r--r--usr.bin/clang/llvm-ar/llvm-ar.14
-rw-r--r--usr.bin/clang/llvm-as/llvm-as.14
-rw-r--r--usr.bin/clang/llvm-bcanalyzer/llvm-bcanalyzer.14
-rw-r--r--usr.bin/clang/llvm-cov/Makefile26
-rw-r--r--usr.bin/clang/llvm-cov/llvm-cov.1165
-rw-r--r--usr.bin/clang/llvm-diff/llvm-diff.14
-rw-r--r--usr.bin/clang/llvm-dis/Makefile1
-rw-r--r--usr.bin/clang/llvm-dis/llvm-dis.14
-rw-r--r--usr.bin/clang/llvm-extract/Makefile7
-rw-r--r--usr.bin/clang/llvm-extract/llvm-extract.14
-rw-r--r--usr.bin/clang/llvm-link/Makefile1
-rw-r--r--usr.bin/clang/llvm-link/llvm-link.14
-rw-r--r--usr.bin/clang/llvm-mc/Makefile22
-rw-r--r--usr.bin/clang/llvm-nm/Makefile56
-rw-r--r--usr.bin/clang/llvm-nm/llvm-nm.14
-rw-r--r--usr.bin/clang/llvm-objdump/Makefile26
-rw-r--r--usr.bin/clang/llvm-profdata/Makefile18
-rw-r--r--usr.bin/clang/llvm-profdata/llvm-profdata.1117
-rw-r--r--usr.bin/clang/llvm-rtdyld/Makefile25
-rw-r--r--usr.bin/clang/llvm-symbolizer/Makefile22
-rw-r--r--usr.bin/clang/llvm-symbolizer/llvm-symbolizer.1144
-rw-r--r--usr.bin/clang/macho-dump/Makefile4
-rw-r--r--usr.bin/clang/opt/Makefile23
-rw-r--r--usr.bin/clang/opt/opt.140
-rw-r--r--usr.bin/clang/tblgen/Makefile2
-rw-r--r--usr.bin/clang/tblgen/tblgen.16
38 files changed, 1133 insertions, 613 deletions
diff --git a/usr.bin/clang/Makefile b/usr.bin/clang/Makefile
index 9655b06..4d4d2ec 100644
--- a/usr.bin/clang/Makefile
+++ b/usr.bin/clang/Makefile
@@ -13,13 +13,16 @@ SUBDIR+=bugpoint \
llvm-as \
llvm-bcanalyzer \
llvm-diff \
+ llvm-cov \
llvm-dis \
llvm-extract \
llvm-link \
llvm-mc \
llvm-nm \
llvm-objdump \
+ llvm-profdata \
llvm-rtdyld \
+ llvm-symbolizer \
macho-dump \
opt
.endif
diff --git a/usr.bin/clang/bugpoint/Makefile b/usr.bin/clang/bugpoint/Makefile
index 6599b03..a8b34c3 100644
--- a/usr.bin/clang/bugpoint/Makefile
+++ b/usr.bin/clang/bugpoint/Makefile
@@ -16,14 +16,18 @@ SRCS= BugDriver.cpp \
bugpoint.cpp
TGHDRS= Intrinsics
-LIBDEPS=llvmirreader \
+LIBDEPS=llvmcodegen \
+ llvmobjcarcopts \
+ llvmirreader \
llvmbitwriter \
- llvmbitreader \
llvmlinker \
llvmipo \
- llvmobjcarcopts \
llvmvectorize \
llvmscalaropts \
+ llvmprofiledata \
+ llvmobject \
+ llvmmcparser \
+ llvmbitreader \
llvminstcombine \
llvminstrumentation \
llvmtransformutils \
@@ -31,7 +35,6 @@ LIBDEPS=llvmirreader \
llvmanalysis \
llvmtarget \
llvmmc \
- llvmobject \
llvmasmparser \
llvmcore \
llvmsupport
diff --git a/usr.bin/clang/bugpoint/bugpoint.1 b/usr.bin/clang/bugpoint/bugpoint.1
index 8597c27..9537d9e 100644
--- a/usr.bin/clang/bugpoint/bugpoint.1
+++ b/usr.bin/clang/bugpoint/bugpoint.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "BUGPOINT" "1" "2014-01-01" "3.4" "LLVM"
+.TH "BUGPOINT" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
bugpoint \- automatic test case reduction tool
.
@@ -211,13 +211,6 @@ by compiling the program with the "safe" backend and running it.
.UNINDENT
.UNINDENT
.sp
-\fB\-\-profile\-info\-file\fP \fIfilename\fP
-.INDENT 0.0
-.INDENT 3.5
-Profile file loaded by \fB\-\-profile\-loader\fP\&.
-.UNINDENT
-.UNINDENT
-.sp
\fB\-\-run\-{int,jit,llc,custom}\fP
.INDENT 0.0
.INDENT 3.5
@@ -295,6 +288,6 @@ opt|opt
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/clang/Makefile b/usr.bin/clang/clang/Makefile
index 345efde..201e494 100644
--- a/usr.bin/clang/clang/Makefile
+++ b/usr.bin/clang/clang/Makefile
@@ -28,8 +28,7 @@ MLINKS+= clang.1 cc.1 \
clang.1 cpp.1
.endif
-TGHDRS= CC1AsOptions \
- DiagnosticCommonKinds \
+TGHDRS= DiagnosticCommonKinds \
DiagnosticDriverKinds \
DiagnosticFrontendKinds \
DiagnosticLexKinds \
@@ -43,9 +42,6 @@ _clangstaticanalyzer= \
clangstaticanalyzercore
_clangarcmigrate= \
clangarcmigrate
-_clangrewriter= \
- clangrewritefrontend \
- clangrewritecore
.endif # MK_CLANG_FULL
LIBDEPS=clangfrontendtool \
@@ -55,23 +51,31 @@ LIBDEPS=clangfrontendtool \
clangcodegen \
clangparse \
clangsema \
+ clangrewritefrontend \
+ clangrewrite \
${_clangstaticanalyzer} \
${_clangarcmigrate} \
- ${_clangrewriter} \
clanganalysis \
clangedit \
clangast \
- clangbasic \
clanglex \
+ clangbasic \
llvmoption \
+ llvmobjcarcopts \
llvmlinker \
llvmirreader \
llvmipo \
llvmvectorize \
llvminstrumentation \
llvmbitwriter \
- llvmbitreader \
llvmasmparser \
+ llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
llvmarmdisassembler \
llvmarmcodegen \
llvmarmasmparser \
@@ -84,6 +88,7 @@ LIBDEPS=clangfrontendtool \
llvmmipsdesc \
llvmmipsinfo \
llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
llvmpowerpccodegen \
llvmpowerpcasmparser \
llvmpowerpcdesc \
@@ -100,22 +105,27 @@ LIBDEPS=clangfrontendtool \
llvmx86codegen \
llvmselectiondag \
llvmasmprinter \
- llvmmcparser \
llvmcodegen \
- llvmobjcarcopts \
llvmscalaropts \
+ llvmprofiledata \
llvminstcombine \
llvmtransformutils \
llvmipa \
llvmanalysis \
+ llvmtarget \
llvmx86desc \
+ llvmobject \
+ llvmmcparser \
+ llvmbitreader \
+ llvmmcdisassembler \
llvmx86info \
- llvmtarget \
llvmx86instprinter \
llvmmc \
- llvmobject \
llvmx86utils \
llvmcore \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/clang/Makefile.depend b/usr.bin/clang/clang/Makefile.depend
index 64aadbc..ba86a94 100644
--- a/usr.bin/clang/clang/Makefile.depend
+++ b/usr.bin/clang/clang/Makefile.depend
@@ -18,6 +18,16 @@ DIRDEPS = \
lib/clang/libclangfrontendtool \
lib/clang/libclanglex \
lib/clang/libclangparse \
+ lib/clang/libclangrewrite \
+ lib/clang/libllvmaarch64disassembler \
+ lib/clang/libllvmaarch64codegen \
+ lib/clang/libllvmaarch64asmparser \
+ lib/clang/libllvmaarch64desc \
+ lib/clang/libllvmaarch64info \
+ lib/clang/libllvmaarch64instprinter \
+ lib/clang/libllvmaarch64utils \
+ lib/clang/libllvmpowerpcdisassembler \
+ lib/clang/libllvmprofiledata \
lib/clang/libclangrewritecore \
lib/clang/libclangrewritefrontend \
lib/clang/libclangsema \
diff --git a/usr.bin/clang/clang/clang.1 b/usr.bin/clang/clang/clang.1
index 0e84db1..2420722 100644
--- a/usr.bin/clang/clang/clang.1
+++ b/usr.bin/clang/clang/clang.1
@@ -1,542 +1,403 @@
.\" $FreeBSD$
-.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
-.\"
-.\" Standard preamble:
-.\" ========================================================================
-.de Sp \" Vertical space (when we can't use .PP)
-.if t .sp .5v
-.if n .sp
-..
-.de Vb \" Begin verbatim text
-.ft CW
-.nf
-.ne \\$1
-..
-.de Ve \" End verbatim text
-.ft R
-.fi
-..
-.\" Set up some character translations and predefined strings. \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote. \*(C+ will
-.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
-.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
-.\" nothing in troff, for use with C<>.
-.tr \(*W-
-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
-.ie n \{\
-. ds -- \(*W-
-. ds PI pi
-. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
-. ds L" ""
-. ds R" ""
-. ds C` ""
-. ds C' ""
-'br\}
-.el\{\
-. ds -- \|\(em\|
-. ds PI \(*p
-. ds L" ``
-. ds R" ''
-. ds C`
-. ds C'
-'br\}
-.\"
-.\" Escape single quotes in literal strings from groff's Unicode transform.
-.ie \n(.g .ds Aq \(aq
-.el .ds Aq '
-.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
-.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
-.\" entries marked with X<> in POD. Of course, you'll have to process the
-.\" output yourself in some meaningful fashion.
-.\"
-.\" Avoid warning from groff about undefined register 'F'.
-.de IX
-..
-.nr rF 0
-.if \n(.g .if rF .nr rF 1
-.if (\n(rF:(\n(.g==0)) \{
-. if \nF \{
-. de IX
-. tm Index:\\$1\t\\n%\t"\\$2"
-..
-. if !\nF==2 \{
-. nr % 0
-. nr F 2
-. \}
-. \}
-.\}
-.rr rF
-.\"
-.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
-.\" Fear. Run. Save yourself. No user-serviceable parts.
-. \" fudge factors for nroff and troff
-.if n \{\
-. ds #H 0
-. ds #V .8m
-. ds #F .3m
-. ds #[ \f1
-. ds #] \fP
-.\}
-.if t \{\
-. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
-. ds #V .6m
-. ds #F 0
-. ds #[ \&
-. ds #] \&
-.\}
-. \" simple accents for nroff and troff
-.if n \{\
-. ds ' \&
-. ds ` \&
-. ds ^ \&
-. ds , \&
-. ds ~ ~
-. ds /
-.\}
-.if t \{\
-. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
-.\}
-. \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
-.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
-.ds ae a\h'-(\w'a'u*4/10)'e
-.ds Ae A\h'-(\w'A'u*4/10)'E
-. \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-. \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
-\{\
-. ds : e
-. ds 8 ss
-. ds o a
-. ds d- d\h'-1'\(ga
-. ds D- D\h'-1'\(hy
-. ds th \o'bp'
-. ds Th \o'LP'
-. ds ae ae
-. ds Ae AE
-.\}
-.rm #[ #] #H #V #F C
-.\" ========================================================================
-.\"
-.IX Title "CLANG 1"
-.TH CLANG 1 "2014-01-01" "clang 3.4" "Clang Tools Documentation"
-.\" For nroff, turn off justification. Always turn off hyphenation; it makes
-.\" way too many mistakes in technical documents.
-.if n .ad l
-.nh
-.SH "NAME"
-clang \- the Clang C, C++, and Objective\-C compiler
-.SH "SYNOPSIS"
-.IX Header "SYNOPSIS"
-\&\fBclang\fR [\fB\-c\fR|\fB\-S\fR|\fB\-E\fR] \fB\-std=\fR\fIstandard\fR \fB\-g\fR
- [\fB\-O0\fR|\fB\-O1\fR|\fB\-O2\fR|\fB\-O3\fR|\fB\-Ofast\fR|\fB\-Os\fR|\fB\-Oz\fR|\fB\-O\fR|\fB\-O4\fR]
- \fB\-W\fR\fIwarnings...\fR \fB\-pedantic\fR
- \fB\-I\fR\fIdir...\fR \fB\-L\fR\fIdir...\fR
- \fB\-D\fR\fImacro[=defn]\fR
- \fB\-f\fR\fIfeature-option...\fR
- \fB\-m\fR\fImachine-option...\fR
- \fB\-o\fR \fIoutput-file\fR
- \fB\-stdlib=\fR\fIlibrary\fR
- \fIinput-filenames\fR
-.SH "DESCRIPTION"
-.IX Header "DESCRIPTION"
-\&\fBclang\fR is a C, \*(C+, and Objective-C compiler which encompasses preprocessing,
+.Dd February 25, 2015
+.Dt CLANG 1
+.Os
+.Sh NAME
+.Nm clang
+.Nd the Clang C, C++, and Objective-C compiler
+.Sh SYNOPSIS
+.Nm clang
+.Oo
+.Fl c Ns | Ns Fl S Ns | Ns Fl E Ns
+.Oc
+.Ar std= Ns Em standard
+.Fl g
+.br
+.Oo
+.Fl O0 Ns | Ns Fl O1 Ns | Ns Fl O2 Ns | Ns Fl O3 Ns | Ns Fl Ofast Ns | Ns Fl Os Ns | Ns Fl Oz Ns | Ns Fl O Ns | Ns Fl O4 Ns
+.Oc
+.br
+.Fl W Ns Em warnings...
+.Fl pedantic
+.br
+.Fl I Ns Em dir...
+.Fl L Ns Em dir...
+.br
+.Fl D Ns Em macro[=defn]
+.br
+.Fl f Ns Em feature-option...
+.br
+.Fl m Ns Em machine-option...
+.br
+.Fl o
+.Em output-file
+.br
+.Ar stdlib= Ns Em library
+.br
+.Em input-filenames
+.Sh DESCRIPTION
+.Sy clang
+is a C, C++, and Objective-C compiler which encompasses preprocessing,
parsing, optimization, code generation, assembly, and linking. Depending on
which high-level mode setting is passed, Clang will stop before doing a full
link. While Clang is highly integrated, it is important to understand the
stages of compilation, to understand how to invoke it. These stages are:
-.IP "\fBDriver\fR" 4
-.IX Item "Driver"
-The \fBclang\fR executable is actually a small driver which controls the overall
+.Bl -tag -width Ds
+.It Sy Driver
+The
+.Sy clang
+executable is actually a small driver which controls the overall
execution of other tools such as the compiler, assembler and linker. Typically
you do not need to interact with the driver, but you transparently use it to run
the other tools.
-.IP "\fBPreprocessing\fR" 4
-.IX Item "Preprocessing"
+.It Sy Preprocessing
This stage handles tokenization of the input source file, macro expansion,
#include expansion and handling of other preprocessor directives. The output of
-this stage is typically called a \*(L".i\*(R" (for C), \*(L".ii\*(R" (for \*(C+), \*(L".mi\*(R" (for
-Objective-C) , or \*(L".mii\*(R" (for Objective\-\*(C+) file.
-.IP "\fBParsing and Semantic Analysis\fR" 4
-.IX Item "Parsing and Semantic Analysis"
+this stage is typically called a ".i" (for C), ".ii" (for C++), ".mi" (for
+Objective-C) , or ".mii" (for Objective-C++) file.
+.It Sy Parsing and Semantic Analysis
This stage parses the input file, translating preprocessor tokens into a parse
tree. Once in the form of a parser tree, it applies semantic analysis to compute
types for expressions as well and determine whether the code is well formed. This
stage is responsible for generating most of the compiler warnings as well as
-parse errors. The output of this stage is an \*(L"Abstract Syntax Tree\*(R" (\s-1AST\s0).
-.IP "\fBCode Generation and Optimization\fR" 4
-.IX Item "Code Generation and Optimization"
-This stage translates an \s-1AST\s0 into low-level intermediate code (known as \*(L"\s-1LLVM
-IR\*(R"\s0) and ultimately to machine code. This phase is responsible for optimizing
+parse errors. The output of this stage is an "Abstract Syntax Tree" (AST).
+.It Sy Code Generation and Optimization
+This stage translates an AST into low-level intermediate code (known as "LLVM
+IR") and ultimately to machine code. This phase is responsible for optimizing
the generated code and handling target-specific code generation. The output of
-this stage is typically called a \*(L".s\*(R" file or \*(L"assembly\*(R" file.
-.Sp
+this stage is typically called a ".s" file or "assembly" file.
+.Pp
Clang also supports the use of an integrated assembler, in which the code
generator produces object files directly. This avoids the overhead of generating
-the \*(L".s\*(R" file and of calling the target assembler.
-.IP "\fBAssembler\fR" 4
-.IX Item "Assembler"
+the ".s" file and of calling the target assembler.
+.It Sy Assembler
This stage runs the target assembler to translate the output of the compiler
-into a target object file. The output of this stage is typically called a \*(L".o\*(R"
-file or \*(L"object\*(R" file.
-.IP "\fBLinker\fR" 4
-.IX Item "Linker"
+into a target object file. The output of this stage is typically called a ".o"
+file or "object" file.
+.It Sy Linker
This stage runs the target linker to merge multiple object files into an
executable or dynamic library. The output of this stage is typically called an
-\&\*(L"a.out\*(R", \*(L".dylib\*(R" or \*(L".so\*(R" file.
-.PP
+"a.out", ".dylib" or ".so" file.
+.El
+.Pp
The Clang compiler supports a large number of options to control each of these
stages. In addition to compilation of code, Clang also supports other tools:
-.PP
-\&\fBClang Static Analyzer\fR
-.PP
+.Pp
+.Sy Clang Static Analyzer
+.Pp
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. Please see <http://clang\-analyzer.llvm.org> for more details
+same driver. Please see
+.Lk http://clang-analyzer.llvm.org
+for more details
on how to use the static analyzer.
-.SH "OPTIONS"
-.IX Header "OPTIONS"
-.SS "Stage Selection Options"
-.IX Subsection "Stage Selection Options"
-.IP "\fB\-E\fR" 4
-.IX Item "-E"
+.Sh OPTIONS
+.Ss Stage Selection Options
+.Bl -tag -width Ds
+.It Sy -E
Run the preprocessor stage.
-.IP "\fB\-fsyntax\-only\fR" 4
-.IX Item "-fsyntax-only"
+.It Sy -fsyntax-only
Run the preprocessor, parser and type checking stages.
-.IP "\fB\-S\fR" 4
-.IX Item "-S"
-Run the previous stages as well as \s-1LLVM\s0 generation and optimization stages and
+.It Sy -S
+Run the previous stages as well as LLVM generation and optimization stages and
target-specific code generation, producing an assembly file.
-.IP "\fB\-c\fR" 4
-.IX Item "-c"
-Run all of the above, plus the assembler, generating a target \*(L".o\*(R" object file.
-.IP "\fBno stage selection option\fR" 4
-.IX Item "no stage selection option"
+.It Sy -c
+Run all of the above, plus the assembler, generating a target ".o" object file.
+.It Sy no stage selection option
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.
-.SS "Language Selection and Mode Options"
-.IX Subsection "Language Selection and Mode Options"
-.IP "\fB\-x\fR \fIlanguage\fR" 4
-.IX Item "-x language"
-Treat subsequent input files as having type \fIlanguage\fR.
-.IP "\fB\-std\fR=\fIlanguage\fR" 4
-.IX Item "-std=language"
+.El
+.Ss Language Selection and Mode Options
+.Bl -tag -width Ds
+.It Sy -x Em language
+Treat subsequent input files as having type
+.Em language .
+.It Sy -std Ns = Ns Em language
Specify the language standard to compile for.
-.IP "\fB\-stdlib\fR=\fIlibrary\fR" 4
-.IX Item "-stdlib=library"
-Specify the \*(C+ standard library to use; supported options are libstdc++ and
+.It Sy -stdlib Ns = Ns Em library
+Specify the C++ standard library to use; supported options are libstdc++ and
libc++.
-.IP "\fB\-ansi\fR" 4
-.IX Item "-ansi"
-Same as \fB\-std=c89\fR.
-.IP "\fB\-ObjC++\fR" 4
-.IX Item "-ObjC++"
-Treat source input files as Objective\-\*(C+ inputs.
-.IP "\fB\-ObjC\fR" 4
-.IX Item "-ObjC"
+.It Sy -ansi
+Same as
+.Sy -std=c89 .
+.It Sy -ObjC++
+Treat source input files as Objective-C++ inputs.
+.It Sy -ObjC
Treat source input files as Objective-C inputs.
-.IP "\fB\-trigraphs\fR" 4
-.IX Item "-trigraphs"
+.It Sy -trigraphs
Enable trigraphs.
-.IP "\fB\-ffreestanding\fR" 4
-.IX Item "-ffreestanding"
+.It Sy -ffreestanding
Indicate that the file should be compiled for a freestanding, not a hosted,
environment.
-.IP "\fB\-fno\-builtin\fR" 4
-.IX Item "-fno-builtin"
+.It Sy -fno-builtin
Disable special handling and optimizations of builtin functions like strlen and
malloc.
-.IP "\fB\-fmath\-errno\fR" 4
-.IX Item "-fmath-errno"
+.It Sy -fmath-errno
Indicate that math functions should be treated as updating errno.
-.IP "\fB\-fpascal\-strings\fR" 4
-.IX Item "-fpascal-strings"
-Enable support for Pascal-style strings with \*(L"\epfoo\*(R".
-.IP "\fB\-fms\-extensions\fR" 4
-.IX Item "-fms-extensions"
+.It Sy -fpascal-strings
+Enable support for Pascal-style strings with "\epfoo".
+.It Sy -fms-extensions
Enable support for Microsoft extensions.
-.IP "\fB\-fmsc\-version=\fR" 4
-.IX Item "-fmsc-version="
+.It Sy -fmsc-version=
Set _MSC_VER. Defaults to 1300 on Windows. Not set otherwise.
-.IP "\fB\-fborland\-extensions\fR" 4
-.IX Item "-fborland-extensions"
+.It Sy -fborland-extensions
Enable support for Borland extensions.
-.IP "\fB\-fwritable\-strings\fR" 4
-.IX Item "-fwritable-strings"
+.It Sy -fwritable-strings
Make all string literals default to writable. This disables uniquing of
strings and other optimizations.
-.IP "\fB\-flax\-vector\-conversions\fR" 4
-.IX Item "-flax-vector-conversions"
+.It Sy -flax-vector-conversions
Allow loose type checking rules for implicit vector conversions.
-.IP "\fB\-fblocks\fR" 4
-.IX Item "-fblocks"
-Enable the \*(L"Blocks\*(R" language feature.
-.IP "\fB\-fobjc\-gc\-only\fR" 4
-.IX Item "-fobjc-gc-only"
+.It Sy -fblocks
+Enable the "Blocks" language feature.
+.It Sy -fobjc-gc-only
Indicate that Objective-C code should be compiled in GC-only mode, which only
works when Objective-C Garbage Collection is enabled.
-.IP "\fB\-fobjc\-gc\fR" 4
-.IX Item "-fobjc-gc"
+.It Sy -fobjc-gc
Indicate that Objective-C code should be compiled in hybrid-GC mode, which works
-with both \s-1GC\s0 and non-GC mode.
-.IP "\fB\-fobjc\-abi\-version\fR=\fIversion\fR" 4
-.IX Item "-fobjc-abi-version=version"
-Select the Objective-C \s-1ABI\s0 version to use. Available versions are 1 (legacy
-\&\*(L"fragile\*(R" \s-1ABI\s0), 2 (non-fragile \s-1ABI 1\s0), and 3 (non-fragile \s-1ABI 2\s0).
-.IP "\fB\-fobjc\-nonfragile\-abi\-version\fR=\fIversion\fR" 4
-.IX Item "-fobjc-nonfragile-abi-version=version"
-Select the Objective-C non-fragile \s-1ABI\s0 version to use by default. This will only
-be used as the Objective-C \s-1ABI\s0 when the non-fragile \s-1ABI\s0 is enabled (either via
-\&\-fobjc\-nonfragile\-abi, or because it is the platform default).
-.IP "\fB\-fobjc\-nonfragile\-abi\fR" 4
-.IX Item "-fobjc-nonfragile-abi"
-Enable use of the Objective-C non-fragile \s-1ABI.\s0 On platforms for which this is
-the default \s-1ABI,\s0 it can be disabled with \fB\-fno\-objc\-nonfragile\-abi\fR.
-.SS "Target Selection Options"
-.IX Subsection "Target Selection Options"
+with both GC and non-GC mode.
+.It Sy -fobjc-abi-version Ns = Ns Em version
+Select the Objective-C ABI version to use. Available versions are 1 (legacy
+"fragile" ABI), 2 (non-fragile ABI 1), and 3 (non-fragile ABI 2).
+.It Sy -fobjc-nonfragile-abi-version Ns = Ns Em version
+Select the Objective-C non-fragile ABI version to use by default. This will only
+be used as the Objective-C ABI when the non-fragile ABI is enabled (either via
+-fobjc-nonfragile-abi, or because it is the platform default).
+.It Sy -fobjc-nonfragile-abi
+Enable use of the Objective-C non-fragile ABI. On platforms for which this is
+the default ABI, it can be disabled with
+.Sy -fno-objc-nonfragile-abi .
+.El
+.Ss Target Selection Options
Clang fully supports cross compilation as an inherent part of its design.
Depending on how your version of Clang is configured, it may have support for
a number of cross compilers, or may only support a native target.
-.IP "\fB\-arch\fR \fIarchitecture\fR" 4
-.IX Item "-arch architecture"
+.Bl -tag -width Ds
+.It Sy -arch Em architecture
Specify the architecture to build for.
-.IP "\fB\-mmacosx\-version\-min\fR=\fIversion\fR" 4
-.IX Item "-mmacosx-version-min=version"
-When building for Mac \s-1OS/X,\s0 specify the minimum version supported by your
+.It Sy -mmacosx-version-min Ns = Ns Em version
+When building for Mac OS X, specify the minimum version supported by your
application.
-.IP "\fB\-miphoneos\-version\-min\fR" 4
-.IX Item "-miphoneos-version-min"
-When building for iPhone \s-1OS,\s0 specify the minimum version supported by your
+.It Sy -miphoneos-version-min
+When building for iPhone OS, specify the minimum version supported by your
application.
-.IP "\fB\-march\fR=\fIcpu\fR" 4
-.IX Item "-march=cpu"
+.It Sy -march Ns = Ns Em cpu
Specify that Clang should generate code for a specific processor family member
-and later. For example, if you specify \-march=i486, the compiler is allowed to
+and later. For example, if you specify -march=i486, the compiler is allowed to
generate instructions that are valid on i486 and later processors, but which
may not exist on earlier ones.
-.SS "Code Generation Options"
-.IX Subsection "Code Generation Options"
-.IP "\fB\-O0\fR \fB\-O1\fR \fB\-O2\fR \fB\-O3\fR \fB\-Ofast\fR \fB\-Os\fR \fB\-Oz\fR \fB\-O\fR \fB\-O4\fR" 4
-.IX Item "-O0 -O1 -O2 -O3 -Ofast -Os -Oz -O -O4"
+.El
+.Ss Code Generation Options
+.Bl -tag -width Ds
+.It Sy -O0 Sy -O1 Sy -O2 Sy -O3 Sy -Ofast Sy -\&Os Sy -\&Oz Sy -O Sy -O4
Specify which optimization level to use:
-.RS 4
-.IP "\fB\-O0\fR" 4
-.IX Item "-O0"
-Means \*(L"no optimization\*(R": this level compiles the fastest and
+.Bl -tag -width Ds
+.It Sy -O0
+Means "no optimization": this level compiles the fastest and
generates the most debuggable code.
-.IP "\fB\-O1\fR" 4
-.IX Item "-O1"
-Somewhere between \fB\-O0\fR and \fB\-O2\fR.
-.IP "\fB\-O2\fR" 4
-.IX Item "-O2"
+.It Sy -O1
+Somewhere between
+.Sy -O0
+and
+.Sy -O2 .
+.It Sy -O2
Moderate level of optimization which enables most optimizations.
-.IP "\fB\-O3\fR" 4
-.IX Item "-O3"
-Like \fB\-O2\fR, except that it enables optimizations that take longer to perform
+.It Sy -O3
+Like
+.Sy -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).
-.IP "\fB\-Ofast\fR" 4
-.IX Item "-Ofast"
-Enables all the optimizations from \fB\-O3\fR along with other aggressive
+.It Sy -Ofast
+Enables all the optimizations from
+.Sy -O3
+along with other aggressive
optimizations that may violate strict compliance with language standards.
-.IP "\fB\-Os\fR" 4
-.IX Item "-Os"
-Like \fB\-O2\fR with extra optimizations to reduce code size.
-.IP "\fB\-Oz\fR" 4
-.IX Item "-Oz"
-Like \fB\-Os\fR (and thus \fB\-O2\fR), but reduces code size further.
-.IP "\fB\-O\fR" 4
-.IX Item "-O"
-Equivalent to \fB\-O2\fR.
-.IP "\fB\-O4\fR and higher" 4
-.IX Item "-O4 and higher"
-Currently equivalent to \fB\-O3\fR
-.RE
-.RS 4
-.RE
-.IP "\fB\-g\fR" 4
-.IX Item "-g"
+.It Sy -\&Os
+Like
+.Sy -O2
+with extra optimizations to reduce code size.
+.It Sy -\&Oz
+Like
+.Sy -\&Os
+(and thus
+.Sy -O2 Ns ), but reduces code size further.
+.It Sy -O
+Equivalent to
+.Sy -O2 .
+.It Sy -O4 No and higher
+Currently equivalent to
+.Sy -O3
+.El
+.It Sy -g
Generate debug information. Note that Clang debug information works best at
-\&\fB\-O0\fR. At higher optimization levels, only line number information is
-currently available.
-.IP "\fB\-fexceptions\fR" 4
-.IX Item "-fexceptions"
+.Sy -O0 .
+.It Sy -fstandalone-debug Sy -fno-standalone-debug
+Clang supports a number of optimizations to reduce the size of debug
+information in the binary. They work based on the assumption that the
+debug type information can be spread out over multiple compilation
+units. For instance, Clang will not emit type definitions for types
+that are not needed by a module and could be replaced with a forward
+declaration. Further, Clang will only emit type info for a dynamic
+C++ class in the module that contains the vtable for the class.
+.Pp
+The
+.Sy -fstandalone-debug
+option turns off these optimizations. This
+is useful when working with 3rd-party libraries that don't come with
+debug information. This is the default on Darwin. Note that Clang
+will never emit type information for types that are not referenced at
+all by the program.
+.It Sy -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.
-.IP "\fB\-ftrapv\fR" 4
-.IX Item "-ftrapv"
+through Clang compiled stack frames. This is on by default in x86-64.
+.It Sy -ftrapv
Generate code to catch integer overflow errors. Signed integer overflow is
undefined in C, with this flag, extra code is generated to detect this and abort
when it happens.
-.IP "\fB\-fvisibility\fR" 4
-.IX Item "-fvisibility"
+.It Sy -fvisibility
This flag sets the default visibility level.
-.IP "\fB\-fcommon\fR" 4
-.IX Item "-fcommon"
+.It Sy -fcommon
This flag specifies that variables without initializers get common linkage. It
-can be disabled with \fB\-fno\-common\fR.
-.IP "\fB\-ftls\-model\fR" 4
-.IX Item "-ftls-model"
-Set the default thread-local storage (\s-1TLS\s0) model to use for thread-local
-variables. Valid values are: \*(L"global-dynamic\*(R", \*(L"local-dynamic\*(R", \*(L"initial-exec\*(R"
-and \*(L"local-exec\*(R". The default is \*(L"global-dynamic\*(R". The default model can be
+can be disabled with
+.Sy -fno-common .
+.It Sy -ftls-model
+Set the default thread-local storage (TLS) model to use for thread-local
+variables. Valid values are: "global-dynamic", "local-dynamic", "initial-exec"
+and "local-exec". The default is "global-dynamic". The default model can be
overridden with the tls_model attribute. The compiler will try to choose a more
efficient model if possible.
-.IP "\fB\-flto\fR \fB\-emit\-llvm\fR" 4
-.IX Item "-flto -emit-llvm"
-Generate output files in \s-1LLVM\s0 formats, suitable for link time optimization. When
-used with \fB\-S\fR this generates \s-1LLVM\s0 intermediate language assembly files,
-otherwise this generates \s-1LLVM\s0 bitcode format object files (which may be passed
+.It Sy -flto Sy -emit-llvm
+Generate output files in LLVM formats, suitable for link time optimization. When
+used with
+.Sy -S
+this generates LLVM intermediate language assembly files,
+otherwise this generates LLVM bitcode format object files (which may be passed
to the linker depending on the stage selection options).
-.SS "Driver Options"
-.IX Subsection "Driver Options"
-.IP "\fB\-###\fR" 4
-.IX Item "-###"
-Print the commands to run for this compilation.
-.IP "\fB\-\-help\fR" 4
-.IX Item "--help"
+.El
+.Ss Driver Options
+.Bl -tag -width Ds
+.It Sy -###
+Print (but do not run) the commands to run for this compilation.
+.It Sy --help
Display available options.
-.IP "\fB\-Qunused\-arguments\fR" 4
-.IX Item "-Qunused-arguments"
+.It Sy -Qunused-arguments
Don't emit warning for unused driver arguments.
-.IP "\fB\-Wa,\fR\fIargs\fR" 4
-.IX Item "-Wa,args"
-Pass the comma separated arguments in \fIargs\fR to the assembler.
-.IP "\fB\-Wl,\fR\fIargs\fR" 4
-.IX Item "-Wl,args"
-Pass the comma separated arguments in \fIargs\fR to the linker.
-.IP "\fB\-Wp,\fR\fIargs\fR" 4
-.IX Item "-Wp,args"
-Pass the comma separated arguments in \fIargs\fR to the preprocessor.
-.IP "\fB\-Xanalyzer\fR \fIarg\fR" 4
-.IX Item "-Xanalyzer arg"
-Pass \fIarg\fR to the static analyzer.
-.IP "\fB\-Xassembler\fR \fIarg\fR" 4
-.IX Item "-Xassembler arg"
-Pass \fIarg\fR to the assembler.
-.IP "\fB\-Xlinker\fR \fIarg\fR" 4
-.IX Item "-Xlinker arg"
-Pass \fIarg\fR to the linker.
-.IP "\fB\-Xpreprocessor\fR \fIarg\fR" 4
-.IX Item "-Xpreprocessor arg"
-Pass \fIarg\fR to the preprocessor.
-.IP "\fB\-o\fR \fIfile\fR" 4
-.IX Item "-o file"
-Write output to \fIfile\fR.
-.IP "\fB\-print\-file\-name\fR=\fIfile\fR" 4
-.IX Item "-print-file-name=file"
-Print the full library path of \fIfile\fR.
-.IP "\fB\-print\-libgcc\-file\-name\fR" 4
-.IX Item "-print-libgcc-file-name"
-Print the library path for \*(L"libgcc.a\*(R".
-.IP "\fB\-print\-prog\-name\fR=\fIname\fR" 4
-.IX Item "-print-prog-name=name"
-Print the full program path of \fIname\fR.
-.IP "\fB\-print\-search\-dirs\fR" 4
-.IX Item "-print-search-dirs"
+.It Sy -Wa, Ns Em args
+Pass the comma separated arguments in
+.Em args
+to the assembler.
+.It Sy -Wl, Ns Em args
+Pass the comma separated arguments in
+.Em args
+to the linker.
+.It Sy -Wp, Ns Em args
+Pass the comma separated arguments in
+.Em args
+to the preprocessor.
+.It Sy -Xanalyzer Em arg
+Pass
+.Em arg
+to the static analyzer.
+.It Sy -Xassembler Em arg
+Pass
+.Em arg
+to the assembler.
+.It Sy -Xlinker Em arg
+Pass
+.Em arg
+to the linker.
+.It Sy -Xpreprocessor Em arg
+Pass
+.Em arg
+to the preprocessor.
+.It Sy -o Em file
+Write output to
+.Em file .
+.It Sy -print-file-name Ns = Ns Em file
+Print the full library path of
+.Em file .
+.It Sy -print-libgcc-file-name
+Print the library path for "libgcc.a".
+.It Sy -print-prog-name Ns = Ns Em name
+Print the full program path of
+.Em name .
+.It Sy -print-search-dirs
Print the paths used for finding libraries and programs.
-.IP "\fB\-save\-temps\fR" 4
-.IX Item "-save-temps"
+.It Sy -save-temps
Save intermediate compilation results.
-.IP "\fB\-integrated\-as\fR \fB\-no\-integrated\-as\fR" 4
-.IX Item "-integrated-as -no-integrated-as"
+.It Sy -integrated-as Sy -no-integrated-as
Used to enable and disable, respectively, the use of the integrated
assembler. Whether the integrated assembler is on by default is target
dependent.
-.IP "\fB\-time\fR" 4
-.IX Item "-time"
+.It Sy -time
Time individual commands.
-.IP "\fB\-ftime\-report\fR" 4
-.IX Item "-ftime-report"
+.It Sy -ftime-report
Print timing summary of each stage of compilation.
-.IP "\fB\-v\fR" 4
-.IX Item "-v"
+.It Sy -v
Show commands to run and use verbose output.
-.SS "Diagnostics Options"
-.IX Subsection "Diagnostics Options"
-.IP "\fB\-fshow\-column\fR \fB\-fshow\-source\-location\fR \fB\-fcaret\-diagnostics\fR \fB\-fdiagnostics\-fixit\-info\fR \fB\-fdiagnostics\-parseable\-fixits\fR \fB\-fdiagnostics\-print\-source\-range\-info\fR \fB\-fprint\-source\-range\-info\fR \fB\-fdiagnostics\-show\-option\fR \fB\-fmessage\-length\fR" 4
-.IX Item "-fshow-column -fshow-source-location -fcaret-diagnostics -fdiagnostics-fixit-info -fdiagnostics-parseable-fixits -fdiagnostics-print-source-range-info -fprint-source-range-info -fdiagnostics-show-option -fmessage-length"
+.El
+.Ss Diagnostics Options
+.Bl -tag -width Ds
+.It Sy -fshow-column Sy -fshow-source-location Sy -fcaret-diagnostics Sy -fdiagnostics-fixit-info Sy -fdiagnostics-parseable-fixits Sy -fdiagnostics-print-source-range-info Sy -fprint-source-range-info Sy -fdiagnostics-show-option Sy -fmessage-length
These options control how Clang prints out information about diagnostics (errors
and warnings). Please see the Clang User's Manual for more information.
-.SS "Preprocessor Options"
-.IX Subsection "Preprocessor Options"
-.IP "\fB\-D\fR\fImacroname=value\fR" 4
-.IX Item "-Dmacroname=value"
+.El
+.Ss Preprocessor Options
+.Bl -tag -width Ds
+.It Sy -D Ns Em macroname=value
Adds an implicit #define into the predefines buffer which is read before the
source file is preprocessed.
-.IP "\fB\-U\fR\fImacroname\fR" 4
-.IX Item "-Umacroname"
+.It Sy -U Ns Em macroname
Adds an implicit #undef into the predefines buffer which is read before the
source file is preprocessed.
-.IP "\fB\-include\fR \fIfilename\fR" 4
-.IX Item "-include filename"
+.It Sy -include Em filename
Adds an implicit #include into the predefines buffer which is read before the
source file is preprocessed.
-.IP "\fB\-I\fR\fIdirectory\fR" 4
-.IX Item "-Idirectory"
+.It Sy -I Ns Em directory
Add the specified directory to the search path for include files.
-.IP "\fB\-F\fR\fIdirectory\fR" 4
-.IX Item "-Fdirectory"
+.It Sy -F Ns Em directory
Add the specified directory to the search path for framework include files.
-.IP "\fB\-nostdinc\fR" 4
-.IX Item "-nostdinc"
+.It Sy -nostdinc
Do not search the standard system directories or compiler builtin directories
for include files.
-.IP "\fB\-nostdlibinc\fR" 4
-.IX Item "-nostdlibinc"
+.It Sy -nostdlibinc
Do not search the standard system directories for include files, but do search
compiler builtin include directories.
-.IP "\fB\-nobuiltininc\fR" 4
-.IX Item "-nobuiltininc"
+.It Sy -nobuiltininc
Do not search clang's builtin directory for include files.
-.SH "ENVIRONMENT"
-.IX Header "ENVIRONMENT"
-.IP "\fB\s-1TMPDIR\s0\fR, \fB\s-1TEMP\s0\fR, \fB\s-1TMP\s0\fR" 4
-.IX Item "TMPDIR, TEMP, TMP"
+.El
+.Sh ENVIRONMENT
+.Bl -tag -width Ds
+.It Sy TMPDIR Ns , Sy TEMP Ns , Sy TMP
These environment variables are checked, in order, for the location to
write temporary files used during the compilation process.
-.IP "\fB\s-1CPATH\s0\fR" 4
-.IX Item "CPATH"
+.It Sy CPATH
If this environment variable is present, it is treated as a delimited
list of paths to be added to the default system include path list. The
-delimiter is the platform dependent delimiter, as used in the \fI\s-1PATH\s0\fR
+delimiter is the platform dependent delimitor, as used in the
+.Em PATH
environment variable.
-.Sp
+.Pp
Empty components in the environment variable are ignored.
-.IP "\fBC_INCLUDE_PATH\fR, \fB\s-1OBJC_INCLUDE_PATH\s0\fR, \fB\s-1CPLUS_INCLUDE_PATH\s0\fR, \fB\s-1OBJCPLUS_INCLUDE_PATH\s0\fR" 4
-.IX Item "C_INCLUDE_PATH, OBJC_INCLUDE_PATH, CPLUS_INCLUDE_PATH, OBJCPLUS_INCLUDE_PATH"
-These environment variables specify additional paths, as for \s-1CPATH,\s0
+.It Sy C_INCLUDE_PATH Ns , Sy OBJC_INCLUDE_PATH Ns , Sy CPLUS_INCLUDE_PATH Ns , Sy OBJCPLUS_INCLUDE_PATH
+These environment variables specify additional paths, as for CPATH,
which are only used when processing the appropriate language.
-.IP "\fB\s-1MACOSX_DEPLOYMENT_TARGET\s0\fR" 4
-.IX Item "MACOSX_DEPLOYMENT_TARGET"
-If \-mmacosx\-version\-min is unspecified, the default deployment target
+.It Sy MACOSX_DEPLOYMENT_TARGET
+If -mmacosx-version-min is unspecified, the default deployment target
is read from this environment variable. This option only affects darwin
targets.
-.SH "BUGS"
-.IX Header "BUGS"
-To report bugs, please visit <http://llvm.org/bugs/>. Most bug reports should
-include preprocessed source files (use the \fB\-E\fR option) and the full output of
+.El
+.Sh BUGS
+To report bugs, please visit
+.Lk http://llvm.org/bugs/ .
+Most bug reports should
+include preprocessed source files (use the
+.Sy -E
+option) and the full output of
the compiler, along with information to reproduce.
-.SH "SEE ALSO"
-.IX Header "SEE ALSO"
-.Vb 1
-\& as(1), ld(1)
-.Ve
-.SH "AUTHOR"
-.IX Header "AUTHOR"
-Maintained by the Clang / \s-1LLVM\s0 Team (<http://clang.llvm.org>).
+.Sh SEE ALSO
+.Bd -literal
+ as(1), ld(1)
+.Ed
+.Sh AUTHOR
+Maintained by the Clang / LLVM Team
+.Pf ( Lk http://clang.llvm.org Ns ).
diff --git a/usr.bin/clang/llc/Makefile b/usr.bin/clang/llc/Makefile
index 43eaf9b..eef537e 100644
--- a/usr.bin/clang/llc/Makefile
+++ b/usr.bin/clang/llc/Makefile
@@ -9,7 +9,13 @@ SRCS= llc.cpp
LIBDEPS=llvmirreader \
llvmasmparser \
- llvmbitreader \
+ llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
llvmarmdisassembler \
llvmarmcodegen \
llvmarmasmparser \
@@ -22,6 +28,7 @@ LIBDEPS=llvmirreader \
llvmmipsdesc \
llvmmipsinfo \
llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
llvmpowerpccodegen \
llvmpowerpcasmparser \
llvmpowerpcdesc \
@@ -38,22 +45,27 @@ LIBDEPS=llvmirreader \
llvmx86codegen \
llvmselectiondag \
llvmasmprinter \
- llvmmcparser \
llvmcodegen \
- llvmobjcarcopts \
llvmscalaropts \
+ llvmprofiledata \
llvminstcombine \
llvmtransformutils \
llvmipa \
llvmanalysis \
+ llvmtarget \
llvmx86desc \
+ llvmobject \
+ llvmmcparser \
+ llvmbitreader \
+ llvmmcdisassembler \
llvmx86info \
- llvmtarget \
llvmx86instprinter \
llvmmc \
- llvmobject \
llvmx86utils \
llvmcore \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/llc/llc.1 b/usr.bin/clang/llc/llc.1
index 81fd80a..02c2f9e 100644
--- a/usr.bin/clang/llc/llc.1
+++ b/usr.bin/clang/llc/llc.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLC" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLC" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llc \- LLVM static compiler
.
@@ -69,7 +69,7 @@ Print a summary of command line options.
.B \-O=uint
Generate code at different optimization levels. These correspond to the
\fB\-O0\fP, \fB\-O1\fP, \fB\-O2\fP, and \fB\-O3\fP optimization levels used by
-\fBllvm\-gcc\fP and \fBclang\fP\&.
+\fBclang\fP\&.
.UNINDENT
.INDENT 0.0
.TP
@@ -160,12 +160,6 @@ would otherwise not be usable (such as \fBfsin\fP on X86).
.UNINDENT
.INDENT 0.0
.TP
-.B \-\-enable\-correct\-eh\-support
-Instruct the \fBlowerinvoke\fP pass to insert code for correct exception
-handling support. This is expensive and is by default omitted for efficiency.
-.UNINDENT
-.INDENT 0.0
-.TP
.B \-\-stats
Print statistics recorded by code\-generation passes.
.UNINDENT
@@ -260,6 +254,6 @@ lli
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/lldb/Makefile b/usr.bin/clang/lldb/Makefile
index 92e2640..5102835 100644
--- a/usr.bin/clang/lldb/Makefile
+++ b/usr.bin/clang/lldb/Makefile
@@ -16,8 +16,8 @@ SRCS= Driver.cpp \
lldb.1:
ln -fs ${LLDB_SRCS}/docs/lldb.1 ${.TARGET}
-DPADD= ${LIBEDIT} ${LIBNCURSESW} ${LIBEXECINFO} ${LIBPANEL}
-LDADD= -ledit -lncursesw -lexecinfo -lpanel
+DPADD= ${LIBEDIT} ${LIBNCURSESW} ${LIBEXECINFO} ${LIBPANEL} ${LIBZ}
+LDADD= -ledit -lncursesw -lexecinfo -lpanel -lz
LLDB_LIBS=\
lldb \
@@ -30,21 +30,29 @@ LLDB_LIBS=\
lldbExpression \
lldbHostFreeBSD \
lldbHostCommon \
+ lldbHostPOSIX \
lldbInterpreter \
lldbSymbol \
lldbTarget \
lldbUtility \
\
+ lldbPluginABISysV_ppc \
+ lldbPluginABISysV_ppc64 \
lldbPluginABISysV_x86_64 \
lldbPluginCXXItaniumABI \
lldbPluginDisassemblerLLVM \
lldbPluginInstructionARM \
+ lldbPluginInstructionARM64 \
+ lldbPluginInstrumentationRuntimeAddressSanitizer \
+ lldbPluginJITLoaderGDB \
lldbPluginSymbolFileDWARF \
lldbPluginSymbolFileSymtab \
lldbPluginDynamicLoaderStatic \
lldbPluginDynamicLoaderPosixDYLD \
+ lldbPluginMemoryHistoryASan \
lldbPluginObjectContainerBSDArchive \
lldbPluginObjectFileELF \
+ lldbPluginObjectFileJIT \
lldbPluginSymbolVendorELF \
lldbPluginPlatformFreeBSD \
lldbPluginPlatformGDB \
@@ -78,65 +86,72 @@ LIBDEPS=\
clangbasic \
clanglex \
\
+ llvmmcdisassembler \
+ llvmobjcarcopts \
+ llvmprofiledata \
llvmoption \
- llvmarmasmparser \
- llvmarmcodegen \
- llvminstrumentation \
- llvmirreader \
llvmlinker \
- llvmmipsasmparser \
- llvmmipscodegen \
- llvmmipsdisassembler \
- llvmobjcarcopts \
- llvmpowerpccodegen \
- llvmx86asmparser \
- llvmx86codegen \
- llvmx86disassembler \
llvmmcjit \
- llvmmcdisassembler \
- llvmarmdisassembler \
- llvmselectiondag \
+ llvmruntimedyld \
+ llvmexecutionengine \
+ llvmirreader \
llvmipo \
+ llvmvectorize \
+ llvminstrumentation \
llvmbitwriter \
- llvmbitreader \
llvmasmparser \
- llvminterpreter \
- llvmjit \
+ llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
+ llvmarmdisassembler \
+ llvmarmcodegen \
+ llvmarmasmparser \
llvmarmdesc \
- llvmasmprinter \
+ llvmarminfo \
+ llvmarminstprinter \
+ llvmmipsdisassembler \
+ llvmmipscodegen \
+ llvmmipsasmparser \
llvmmipsdesc \
+ llvmmipsinfo \
llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
+ llvmpowerpccodegen \
+ llvmpowerpcasmparser \
llvmpowerpcdesc \
+ llvmpowerpcinfo \
llvmpowerpcinstprinter \
- llvmpowerpcasmparser \
- llvmruntimedyld \
- llvmvectorize \
- llvmx86desc \
- llvmx86instprinter \
- llvmexecutionengine \
- llvmcodegen \
- llvmscalaropts \
llvmsparcdisassembler \
llvmsparccodegen \
llvmsparcasmparser \
llvmsparcdesc \
llvmsparcinfo \
llvmsparcinstprinter \
- llvmarminfo \
- llvmarminstprinter \
- llvmmcparser \
- llvmmipsinfo \
- llvmpowerpcinfo \
- llvmx86info \
- llvmx86utils \
- llvmobject \
+ llvmx86disassembler \
+ llvmx86asmparser \
+ llvmx86codegen \
+ llvmselectiondag \
+ llvmasmprinter \
+ llvmcodegen \
+ llvmscalaropts \
llvminstcombine \
llvmtransformutils \
llvmipa \
llvmanalysis \
llvmtarget \
+ llvmx86desc \
+ llvmobject \
+ llvmmcparser \
+ llvmbitreader \
llvmcore \
+ llvmx86info \
+ llvmx86instprinter \
llvmmc \
+ llvmx86utils \
llvmsupport
.include "../clang.prog.mk"
diff --git a/usr.bin/clang/lli/Makefile b/usr.bin/clang/lli/Makefile
index ecce2c5..b672acf 100644
--- a/usr.bin/clang/lli/Makefile
+++ b/usr.bin/clang/lli/Makefile
@@ -14,32 +14,35 @@ LIBDEPS=llvmx86disassembler \
llvmx86asmparser \
llvmirreader \
llvmasmparser \
- llvmbitreader \
llvmx86codegen \
llvmx86desc \
llvmx86info \
+ llvmmcdisassembler \
llvmx86instprinter \
llvmx86utils \
llvmselectiondag \
llvmasmprinter \
- llvmmcparser \
llvminterpreter \
- llvminstrumentation \
- llvmmcjit \
- llvmjit \
llvmcodegen \
- llvmobjcarcopts \
llvmscalaropts \
+ llvmprofiledata \
llvminstcombine \
+ llvminstrumentation \
llvmtransformutils \
llvmipa \
llvmanalysis \
+ llvmmcjit \
+ llvmtarget \
llvmruntimedyld \
llvmexecutionengine \
- llvmtarget \
- llvmmc \
llvmobject \
+ llvmmcparser \
+ llvmbitreader \
+ llvmmc \
llvmcore \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/lli/lli.1 b/usr.bin/clang/lli/lli.1
index e1ea14c..de9e30c 100644
--- a/usr.bin/clang/lli/lli.1
+++ b/usr.bin/clang/lli/lli.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLI" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLI" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
lli \- directly execute programs from LLVM bitcode
.
@@ -216,13 +216,6 @@ Disable fusing of spill code into instructions.
.UNINDENT
.UNINDENT
.sp
-\fB\-enable\-correct\-eh\-support\fP
-.INDENT 0.0
-.INDENT 3.5
-Make the \-lowerinvoke pass insert expensive, but correct, EH code.
-.UNINDENT
-.UNINDENT
-.sp
\fB\-jit\-enable\-eh\fP
.INDENT 0.0
.INDENT 3.5
@@ -345,6 +338,6 @@ llc|llc
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-ar/Makefile b/usr.bin/clang/llvm-ar/Makefile
index fc41038..44586dc 100644
--- a/usr.bin/clang/llvm-ar/Makefile
+++ b/usr.bin/clang/llvm-ar/Makefile
@@ -7,9 +7,63 @@ PROG_CXX=llvm-ar
SRCDIR= tools/llvm-ar
SRCS= llvm-ar.cpp
-LIBDEPS=llvmobject \
+LIBDEPS=llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
+ llvmarmdisassembler \
+ llvmarmcodegen \
+ llvmarmasmparser \
+ llvmarmdesc \
+ llvmarminfo \
+ llvmarminstprinter \
+ llvmmipsdisassembler \
+ llvmmipscodegen \
+ llvmmipsasmparser \
+ llvmmipsdesc \
+ llvmmipsinfo \
+ llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
+ llvmpowerpccodegen \
+ llvmpowerpcasmparser \
+ llvmpowerpcdesc \
+ llvmpowerpcinfo \
+ llvmpowerpcinstprinter \
+ llvmsparcdisassembler \
+ llvmsparccodegen \
+ llvmsparcasmparser \
+ llvmsparcdesc \
+ llvmsparcinfo \
+ llvmsparcinstprinter \
+ llvmx86disassembler \
+ llvmx86asmparser \
+ llvmx86codegen \
+ llvmselectiondag \
+ llvmasmprinter \
+ llvmcodegen \
+ llvmscalaropts \
+ llvmprofiledata \
+ llvminstcombine \
+ llvmtransformutils \
+ llvmipa \
+ llvmanalysis \
+ llvmtarget \
+ llvmx86desc \
+ llvmobject \
+ llvmmcparser \
llvmbitreader \
+ llvmmcdisassembler \
+ llvmx86info \
+ llvmx86instprinter \
+ llvmmc \
+ llvmx86utils \
llvmcore \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/llvm-ar/llvm-ar.1 b/usr.bin/clang/llvm-ar/llvm-ar.1
index 11fc856..729e2d4 100644
--- a/usr.bin/clang/llvm-ar/llvm-ar.1
+++ b/usr.bin/clang/llvm-ar/llvm-ar.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLVM-AR" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLVM-AR" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llvm-ar \- LLVM archiver
.
@@ -385,6 +385,6 @@ ar(1)
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-as/llvm-as.1 b/usr.bin/clang/llvm-as/llvm-as.1
index bca402b..bda01da 100644
--- a/usr.bin/clang/llvm-as/llvm-as.1
+++ b/usr.bin/clang/llvm-as/llvm-as.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLVM-AS" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLVM-AS" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llvm-as \- LLVM assembler
.
@@ -82,6 +82,6 @@ llvm\-dis|llvm\-dis, gccas|gccas
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-bcanalyzer/llvm-bcanalyzer.1 b/usr.bin/clang/llvm-bcanalyzer/llvm-bcanalyzer.1
index 1745278..fef510d 100644
--- a/usr.bin/clang/llvm-bcanalyzer/llvm-bcanalyzer.1
+++ b/usr.bin/clang/llvm-bcanalyzer/llvm-bcanalyzer.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLVM-BCANALYZER" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLVM-BCANALYZER" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llvm-bcanalyzer \- LLVM bitcode analyzer
.
@@ -471,6 +471,6 @@ Rate encoding scheme. The percentage is relative to # of VBR Expanded Bytes.
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-cov/Makefile b/usr.bin/clang/llvm-cov/Makefile
new file mode 100644
index 0000000..16834cf
--- /dev/null
+++ b/usr.bin/clang/llvm-cov/Makefile
@@ -0,0 +1,26 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+PROG_CXX=llvm-cov
+
+SRCDIR= tools/llvm-cov
+SRCS= CodeCoverage.cpp \
+ CoverageFilters.cpp \
+ CoverageReport.cpp \
+ CoverageSummary.cpp \
+ CoverageSummaryInfo.cpp \
+ SourceCoverageView.cpp \
+ TestingSupport.cpp \
+ gcov.cpp \
+ llvm-cov.cpp
+
+LIBDEPS=llvmprofiledata \
+ llvmobject \
+ llvmmcparser \
+ llvmmc \
+ llvmbitreader \
+ llvmcore \
+ llvmsupport
+
+.include "../clang.prog.mk"
diff --git a/usr.bin/clang/llvm-cov/llvm-cov.1 b/usr.bin/clang/llvm-cov/llvm-cov.1
new file mode 100644
index 0000000..c76b7ab
--- /dev/null
+++ b/usr.bin/clang/llvm-cov/llvm-cov.1
@@ -0,0 +1,165 @@
+.\" $FreeBSD$
+.\" Man page generated from reStructuredText.
+.
+.TH "LLVM-COV" "1" "2015-04-01" "3.6" "LLVM"
+.SH NAME
+llvm-cov \- emit coverage information
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.SH SYNOPSIS
+.sp
+\fBllvm\-cov\fP [options] SOURCEFILE
+.SH DESCRIPTION
+.sp
+The \fBllvm\-cov\fP tool reads code coverage data files and displays the
+coverage information for a specified source file. It is compatible with the
+\fBgcov\fP tool from version 4.2 of \fBGCC\fP and may also be compatible with
+some later versions of \fBgcov\fP\&.
+.sp
+To use llvm\-cov, you must first build an instrumented version of your
+application that collects coverage data as it runs. Compile with the
+\fB\-fprofile\-arcs\fP and \fB\-ftest\-coverage\fP options to add the
+instrumentation. (Alternatively, you can use the \fB\-\-coverage\fP option, which
+includes both of those other options.) You should compile with debugging
+information (\fB\-g\fP) and without optimization (\fB\-O0\fP); otherwise, the
+coverage data cannot be accurately mapped back to the source code.
+.sp
+At the time you compile the instrumented code, a \fB\&.gcno\fP data file will be
+generated for each object file. These \fB\&.gcno\fP files contain half of the
+coverage data. The other half of the data comes from \fB\&.gcda\fP files that are
+generated when you run the instrumented program, with a separate \fB\&.gcda\fP
+file for each object file. Each time you run the program, the execution counts
+are summed into any existing \fB\&.gcda\fP files, so be sure to remove any old
+files if you do not want their contents to be included.
+.sp
+By default, the \fB\&.gcda\fP files are written into the same directory as the
+object files, but you can override that by setting the \fBGCOV_PREFIX\fP and
+\fBGCOV_PREFIX_STRIP\fP environment variables. The \fBGCOV_PREFIX_STRIP\fP
+variable specifies a number of directory components to be removed from the
+start of the absolute path to the object file directory. After stripping those
+directories, the prefix from the \fBGCOV_PREFIX\fP variable is added. These
+environment variables allow you to run the instrumented program on a machine
+where the original object file directories are not accessible, but you will
+then need to copy the \fB\&.gcda\fP files back to the object file directories
+where llvm\-cov expects to find them.
+.sp
+Once you have generated the coverage data files, run llvm\-cov for each main
+source file where you want to examine the coverage results. This should be run
+from the same directory where you previously ran the compiler. The results for
+the specified source file are written to a file named by appending a \fB\&.gcov\fP
+suffix. A separate output file is also created for each file included by the
+main source file, also with a \fB\&.gcov\fP suffix added.
+.sp
+The basic content of an llvm\-cov output file is a copy of the source file with
+an execution count and line number prepended to every line. The execution
+count is shown as \fB\-\fP if a line does not contain any executable code. If
+a line contains code but that code was never executed, the count is displayed
+as \fB#####\fP\&.
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \-a, \-\-all\-blocks
+Display all basic blocks. If there are multiple blocks for a single line of
+source code, this option causes llvm\-cov to show the count for each block
+instead of just one count for the entire line.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-b, \-\-branch\-probabilities
+Display conditional branch probabilities and a summary of branch information.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-c, \-\-branch\-counts
+Display branch counts instead of probabilities (requires \-b).
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-f, \-\-function\-summaries
+Show a summary of coverage for each function instead of just one summary for
+an entire source file.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-\-help
+Display available options (\-\-help\-hidden for more).
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-l, \-\-long\-file\-names
+For coverage output of files included from the main source file, add the
+main file name followed by \fB##\fP as a prefix to the output file names. This
+can be combined with the \-\-preserve\-paths option to use complete paths for
+both the main file and the included file.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-n, \-\-no\-output
+Do not output any \fB\&.gcov\fP files. Summary information is still
+displayed.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-o=<DIR|FILE>, \-\-object\-directory=<DIR>, \-\-object\-file=<FILE>
+Find objects in DIR or based on FILE\(aqs path. If you specify a particular
+object file, the coverage data files are expected to have the same base name
+with \fB\&.gcno\fP and \fB\&.gcda\fP extensions. If you specify a directory, the
+files are expected in that directory with the same base name as the source
+file.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-p, \-\-preserve\-paths
+Preserve path components when naming the coverage output files. In addition
+to the source file name, include the directories from the path to that
+file. The directories are separate by \fB#\fP characters, with \fB\&.\fP directories
+removed and \fB\&..\fP directories replaced by \fB^\fP characters. When used with
+the \-\-long\-file\-names option, this applies to both the main file name and the
+included file name.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-u, \-\-unconditional\-branches
+Include unconditional branches in the output for the \-\-branch\-probabilities
+option.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-version
+Display the version of llvm\-cov.
+.UNINDENT
+.SH EXIT STATUS
+.sp
+\fBllvm\-cov\fP returns 1 if it cannot read input files. Otherwise, it
+exits with zero.
+.SH AUTHOR
+Maintained by The LLVM Team (http://llvm.org/).
+.SH COPYRIGHT
+2003-2014, LLVM Project
+.\" Generated by docutils manpage writer.
+.
diff --git a/usr.bin/clang/llvm-diff/llvm-diff.1 b/usr.bin/clang/llvm-diff/llvm-diff.1
index 7445bc7..0fa5a01 100644
--- a/usr.bin/clang/llvm-diff/llvm-diff.1
+++ b/usr.bin/clang/llvm-diff/llvm-diff.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLVM-DIFF" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLVM-DIFF" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llvm-diff \- LLVM structural 'diff'
.
@@ -72,6 +72,6 @@ massive detected differences in blocks.
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-dis/Makefile b/usr.bin/clang/llvm-dis/Makefile
index 3fe3f78..18be77a 100644
--- a/usr.bin/clang/llvm-dis/Makefile
+++ b/usr.bin/clang/llvm-dis/Makefile
@@ -11,7 +11,6 @@ TGHDRS= Intrinsics
LIBDEPS=llvmanalysis \
llvmtarget \
llvmmc \
- llvmobject \
llvmbitreader \
llvmcore \
llvmsupport
diff --git a/usr.bin/clang/llvm-dis/llvm-dis.1 b/usr.bin/clang/llvm-dis/llvm-dis.1
index d3096a6..bdf0bdb 100644
--- a/usr.bin/clang/llvm-dis/llvm-dis.1
+++ b/usr.bin/clang/llvm-dis/llvm-dis.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLVM-DIS" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLVM-DIS" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llvm-dis \- LLVM disassembler
.
@@ -83,6 +83,6 @@ llvm\-as|llvm\-as
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-extract/Makefile b/usr.bin/clang/llvm-extract/Makefile
index 007c9c7..8456a0f 100644
--- a/usr.bin/clang/llvm-extract/Makefile
+++ b/usr.bin/clang/llvm-extract/Makefile
@@ -10,18 +10,19 @@ SRCS= llvm-extract.cpp
LIBDEPS=llvmirreader \
llvmasmparser \
llvmbitwriter \
- llvmbitreader \
llvmipo \
- llvmobjcarcopts \
llvmvectorize \
llvmscalaropts \
+ llvmprofiledata \
+ llvmobject \
+ llvmmcparser \
+ llvmbitreader \
llvminstcombine \
llvmtransformutils \
llvmipa \
llvmanalysis \
llvmtarget \
llvmmc \
- llvmobject \
llvmcore \
llvmsupport
diff --git a/usr.bin/clang/llvm-extract/llvm-extract.1 b/usr.bin/clang/llvm-extract/llvm-extract.1
index 579b0f6..6de6452 100644
--- a/usr.bin/clang/llvm-extract/llvm-extract.1
+++ b/usr.bin/clang/llvm-extract/llvm-extract.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLVM-EXTRACT" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLVM-EXTRACT" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llvm-extract \- extract a function from an LLVM module
.
@@ -124,6 +124,6 @@ bugpoint
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-link/Makefile b/usr.bin/clang/llvm-link/Makefile
index 12591ae..b7e1fed 100644
--- a/usr.bin/clang/llvm-link/Makefile
+++ b/usr.bin/clang/llvm-link/Makefile
@@ -17,7 +17,6 @@ LIBDEPS=llvmirreader \
llvmanalysis \
llvmtarget \
llvmmc \
- llvmobject \
llvmcore \
llvmsupport
diff --git a/usr.bin/clang/llvm-link/llvm-link.1 b/usr.bin/clang/llvm-link/llvm-link.1
index 0ac2d28..136344a 100644
--- a/usr.bin/clang/llvm-link/llvm-link.1
+++ b/usr.bin/clang/llvm-link/llvm-link.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLVM-LINK" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLVM-LINK" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llvm-link \- LLVM bitcode linker
.
@@ -84,6 +84,6 @@ occurs, it will exit with a non\-zero value.
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-mc/Makefile b/usr.bin/clang/llvm-mc/Makefile
index 9159088..6e85993 100644
--- a/usr.bin/clang/llvm-mc/Makefile
+++ b/usr.bin/clang/llvm-mc/Makefile
@@ -9,7 +9,13 @@ SRCDIR= tools/llvm-mc
SRCS= llvm-mc.cpp \
Disassembler.cpp
-LIBDEPS=llvmmcdisassembler \
+LIBDEPS=llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
llvmarmdisassembler \
llvmarmcodegen \
llvmarmasmparser \
@@ -22,6 +28,7 @@ LIBDEPS=llvmmcdisassembler \
llvmmipsdesc \
llvmmipsinfo \
llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
llvmpowerpccodegen \
llvmpowerpcasmparser \
llvmpowerpcdesc \
@@ -38,22 +45,27 @@ LIBDEPS=llvmmcdisassembler \
llvmx86codegen \
llvmselectiondag \
llvmasmprinter \
- llvmmcparser \
llvmcodegen \
- llvmobjcarcopts \
llvmscalaropts \
+ llvmprofiledata \
llvminstcombine \
llvmtransformutils \
llvmipa \
llvmanalysis \
+ llvmtarget \
llvmx86desc \
+ llvmobject \
+ llvmmcparser \
+ llvmbitreader \
+ llvmmcdisassembler \
llvmx86info \
- llvmtarget \
llvmx86instprinter \
llvmmc \
- llvmobject \
llvmx86utils \
llvmcore \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/llvm-nm/Makefile b/usr.bin/clang/llvm-nm/Makefile
index 762cda3..79afa5a 100644
--- a/usr.bin/clang/llvm-nm/Makefile
+++ b/usr.bin/clang/llvm-nm/Makefile
@@ -7,9 +7,63 @@ PROG_CXX=llvm-nm
SRCDIR= tools/llvm-nm
SRCS= llvm-nm.cpp
-LIBDEPS=llvmobject \
+LIBDEPS=llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
+ llvmarmdisassembler \
+ llvmarmcodegen \
+ llvmarmasmparser \
+ llvmarmdesc \
+ llvmarminfo \
+ llvmarminstprinter \
+ llvmmipsdisassembler \
+ llvmmipscodegen \
+ llvmmipsasmparser \
+ llvmmipsdesc \
+ llvmmipsinfo \
+ llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
+ llvmpowerpccodegen \
+ llvmpowerpcasmparser \
+ llvmpowerpcdesc \
+ llvmpowerpcinfo \
+ llvmpowerpcinstprinter \
+ llvmsparcdisassembler \
+ llvmsparccodegen \
+ llvmsparcasmparser \
+ llvmsparcdesc \
+ llvmsparcinfo \
+ llvmsparcinstprinter \
+ llvmx86disassembler \
+ llvmx86asmparser \
+ llvmx86codegen \
+ llvmselectiondag \
+ llvmasmprinter \
+ llvmcodegen \
+ llvmscalaropts \
+ llvmprofiledata \
+ llvminstcombine \
+ llvmtransformutils \
+ llvmipa \
+ llvmanalysis \
+ llvmtarget \
+ llvmx86desc \
+ llvmobject \
+ llvmmcparser \
llvmbitreader \
+ llvmmcdisassembler \
+ llvmx86info \
+ llvmx86instprinter \
+ llvmmc \
+ llvmx86utils \
llvmcore \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/llvm-nm/llvm-nm.1 b/usr.bin/clang/llvm-nm/llvm-nm.1
index 1683289..c20e701 100644
--- a/usr.bin/clang/llvm-nm/llvm-nm.1
+++ b/usr.bin/clang/llvm-nm/llvm-nm.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "LLVM-NM" "1" "2014-01-01" "3.4" "LLVM"
+.TH "LLVM-NM" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
llvm-nm \- list LLVM bitcode and object file's symbol table
.
@@ -208,6 +208,6 @@ llvm\-dis, ar(1), nm(1)
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/llvm-objdump/Makefile b/usr.bin/clang/llvm-objdump/Makefile
index a12cfd1..ccb7ed9 100644
--- a/usr.bin/clang/llvm-objdump/Makefile
+++ b/usr.bin/clang/llvm-objdump/Makefile
@@ -4,8 +4,6 @@ MAN=
.include <bsd.own.mk>
PROG_CXX=llvm-objdump
-DPADD= ${LIBZ}
-LDADD= -lz
SRCDIR= tools/llvm-objdump
SRCS= llvm-objdump.cpp \
@@ -13,8 +11,14 @@ SRCS= llvm-objdump.cpp \
ELFDump.cpp \
MachODump.cpp
-LIBDEPS=llvmmcdisassembler \
- llvmdebuginfo \
+LIBDEPS=llvmdebuginfo \
+ llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
llvmarmdisassembler \
llvmarmcodegen \
llvmarmasmparser \
@@ -27,6 +31,7 @@ LIBDEPS=llvmmcdisassembler \
llvmmipsdesc \
llvmmipsinfo \
llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
llvmpowerpccodegen \
llvmpowerpcasmparser \
llvmpowerpcdesc \
@@ -43,22 +48,27 @@ LIBDEPS=llvmmcdisassembler \
llvmx86codegen \
llvmselectiondag \
llvmasmprinter \
- llvmmcparser \
llvmcodegen \
- llvmobjcarcopts \
llvmscalaropts \
+ llvmprofiledata \
llvminstcombine \
llvmtransformutils \
llvmipa \
llvmanalysis \
+ llvmtarget \
llvmx86desc \
+ llvmobject \
+ llvmmcparser \
+ llvmbitreader \
+ llvmmcdisassembler \
llvmx86info \
- llvmtarget \
llvmx86instprinter \
llvmmc \
- llvmobject \
llvmx86utils \
llvmcore \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/llvm-profdata/Makefile b/usr.bin/clang/llvm-profdata/Makefile
new file mode 100644
index 0000000..5078521
--- /dev/null
+++ b/usr.bin/clang/llvm-profdata/Makefile
@@ -0,0 +1,18 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+PROG_CXX=llvm-profdata
+
+SRCDIR= tools/llvm-profdata
+SRCS= llvm-profdata.cpp
+
+LIBDEPS=llvmprofiledata \
+ llvmobject \
+ llvmmcparser \
+ llvmmc \
+ llvmbitreader \
+ llvmcore \
+ llvmsupport
+
+.include "../clang.prog.mk"
diff --git a/usr.bin/clang/llvm-profdata/llvm-profdata.1 b/usr.bin/clang/llvm-profdata/llvm-profdata.1
new file mode 100644
index 0000000..4f66e63
--- /dev/null
+++ b/usr.bin/clang/llvm-profdata/llvm-profdata.1
@@ -0,0 +1,117 @@
+.\" $FreeBSD$
+.\" Man page generated from reStructuredText.
+.
+.TH "LLVM-PROFDATA" "1" "2015-04-01" "3.6" "LLVM"
+.SH NAME
+llvm-profdata \- Profile data tool
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.SH SYNOPSIS
+.sp
+\fBllvm\-profdata\fP \fIcommand\fP [\fIargs...\fP]
+.SH DESCRIPTION
+.sp
+The \fBllvm\-profdata\fP tool is a small utility for working with profile
+data files.
+.SH COMMANDS
+.INDENT 0.0
+.IP \(bu 2
+\fI\%merge\fP
+.IP \(bu 2
+\fI\%show\fP
+.UNINDENT
+.SH MERGE
+.SS SYNOPSIS
+.sp
+\fBllvm\-profdata merge\fP [\fIoptions\fP] [\fIfilenames...\fP]
+.SS DESCRIPTION
+.sp
+\fBllvm\-profdata merge\fP takes several profile data files
+generated by PGO instrumentation and merges them together into a single
+indexed profile data file.
+.SS OPTIONS
+.INDENT 0.0
+.TP
+.B \-help
+Print a summary of command line options.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-output=output, \-o=output
+Specify the output file name. \fIOutput\fP cannot be \fB\-\fP as the resulting
+indexed profile data can\(aqt be written to standard output.
+.UNINDENT
+.SH SHOW
+.SS SYNOPSIS
+.sp
+\fBllvm\-profdata show\fP [\fIoptions\fP] [\fIfilename\fP]
+.SS DESCRIPTION
+.sp
+\fBllvm\-profdata show\fP takes a profile data file and displays the
+information about the profile counters for this file and
+for any of the specified function(s).
+.sp
+If \fIfilename\fP is omitted or is \fB\-\fP, then \fBllvm\-profdata show\fP reads its
+input from standard input.
+.SS OPTIONS
+.INDENT 0.0
+.TP
+.B \-all\-functions
+Print details for every function.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-counts
+Print the counter values for the displayed functions.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-function=string
+Print details for a function if the function\(aqs name contains the given string.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-help
+Print a summary of command line options.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-output=output, \-o=output
+Specify the output file name. If \fIoutput\fP is \fB\-\fP or it isn\(aqt specified,
+then the output is sent to standard output.
+.UNINDENT
+.SH EXIT STATUS
+.sp
+\fBllvm\-profdata\fP returns 1 if the command is omitted or is invalid,
+if it cannot read input files, or if there is a mismatch between their data.
+.SH AUTHOR
+Maintained by The LLVM Team (http://llvm.org/).
+.SH COPYRIGHT
+2003-2014, LLVM Project
+.\" Generated by docutils manpage writer.
+.
diff --git a/usr.bin/clang/llvm-rtdyld/Makefile b/usr.bin/clang/llvm-rtdyld/Makefile
index 0279026..df74a5b 100644
--- a/usr.bin/clang/llvm-rtdyld/Makefile
+++ b/usr.bin/clang/llvm-rtdyld/Makefile
@@ -4,16 +4,21 @@ MAN=
.include <bsd.own.mk>
PROG_CXX=llvm-rtdyld
-DPADD= ${LIBZ}
-LDADD= -lz
SRCDIR= tools/llvm-rtdyld
SRCS= llvm-rtdyld.cpp
LIBDEPS=llvmdebuginfo \
- llvmjit \
+ llvmmcjit \
llvmexecutionengine \
llvmruntimedyld \
+ llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
llvmarmdisassembler \
llvmarmcodegen \
llvmarmasmparser \
@@ -26,6 +31,7 @@ LIBDEPS=llvmdebuginfo \
llvmmipsdesc \
llvmmipsinfo \
llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
llvmpowerpccodegen \
llvmpowerpcasmparser \
llvmpowerpcdesc \
@@ -42,22 +48,27 @@ LIBDEPS=llvmdebuginfo \
llvmx86codegen \
llvmselectiondag \
llvmasmprinter \
- llvmmcparser \
llvmcodegen \
- llvmobjcarcopts \
llvmscalaropts \
+ llvmprofiledata \
llvminstcombine \
llvmtransformutils \
llvmipa \
llvmanalysis \
+ llvmtarget \
llvmx86desc \
+ llvmobject \
+ llvmmcparser \
+ llvmbitreader \
+ llvmmcdisassembler \
llvmx86info \
- llvmtarget \
llvmx86instprinter \
llvmmc \
- llvmobject \
llvmx86utils \
llvmcore \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/llvm-symbolizer/Makefile b/usr.bin/clang/llvm-symbolizer/Makefile
new file mode 100644
index 0000000..9e3b584
--- /dev/null
+++ b/usr.bin/clang/llvm-symbolizer/Makefile
@@ -0,0 +1,22 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+PROG_CXX=llvm-symbolizer
+
+SRCDIR= tools/llvm-symbolizer
+SRCS= llvm-symbolizer.cpp \
+ LLVMSymbolize.cpp
+
+LIBDEPS=llvmdebuginfo \
+ llvmobject \
+ llvmmcparser \
+ llvmmc \
+ llvmbitreader \
+ llvmcore \
+ llvmsupport
+
+.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/llvm-symbolizer/llvm-symbolizer.1 b/usr.bin/clang/llvm-symbolizer/llvm-symbolizer.1
new file mode 100644
index 0000000..6372aed
--- /dev/null
+++ b/usr.bin/clang/llvm-symbolizer/llvm-symbolizer.1
@@ -0,0 +1,144 @@
+.\" $FreeBSD$
+.\" Man page generated from reStructuredText.
+.
+.TH "LLVM-SYMBOLIZER" "1" "2015-03-14" "3.6" "LLVM"
+.SH NAME
+llvm-symbolizer \- convert addresses into source code locations
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.SH SYNOPSIS
+.sp
+\fBllvm\-symbolizer\fP [options]
+.SH DESCRIPTION
+.sp
+\fBllvm\-symbolizer\fP reads object file names and addresses from standard
+input and prints corresponding source code locations to standard output.
+If object file is specified in command line, \fBllvm\-symbolizer\fP reads
+only addresses from standard input. This
+program uses debug info sections and symbol table in the object files.
+.SH EXAMPLE
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+$ cat addr.txt
+a.out 0x4004f4
+/tmp/b.out 0x400528
+/tmp/c.so 0x710
+/tmp/mach_universal_binary:i386 0x1f84
+/tmp/mach_universal_binary:x86_64 0x100000f24
+$ llvm\-symbolizer < addr.txt
+main
+/tmp/a.cc:4
+
+f(int, int)
+/tmp/b.cc:11
+
+h_inlined_into_g
+/tmp/header.h:2
+g_inlined_into_f
+/tmp/header.h:7
+f_inlined_into_main
+/tmp/source.cc:3
+main
+/tmp/source.cc:8
+
+_main
+/tmp/source_i386.cc:8
+
+_main
+/tmp/source_x86_64.cc:8
+$ cat addr2.txt
+0x4004f4
+0x401000
+$ llvm\-symbolizer \-obj=a.out < addr2.txt
+main
+/tmp/a.cc:4
+
+foo(int)
+/tmp/a.cc:12
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \-obj
+Path to object file to be symbolized.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-functions=[none|short|linkage]
+Specify the way function names are printed (omit function name,
+print short function name, or print full linkage name, respectively).
+Defaults to \fBlinkage\fP\&.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-use\-symbol\-table
+Prefer function names stored in symbol table to function names
+in debug info sections. Defaults to true.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-demangle
+Print demangled function names. Defaults to true.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-inlining
+If a source code location is in an inlined function, prints all the
+inlnied frames. Defaults to true.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-default\-arch
+If a binary contains object files for multiple architectures (e.g. it is a
+Mach\-O universal binary), symbolize the object file for a given architecture.
+You can also specify architecture by writing \fBbinary_name:arch_name\fP in the
+input (see example above). If architecture is not specified in either way,
+address will not be symbolized. Defaults to empty string.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-dsym\-hint=<path/to/file.dSYM>
+(Darwin\-only flag). If the debug info for a binary isn\(aqt present in the default
+location, look for the debug info at the .dSYM path provided via the
+\fB\-dsym\-hint\fP flag. This flag can be used multiple times.
+.UNINDENT
+.SH EXIT STATUS
+.sp
+\fBllvm\-symbolizer\fP returns 0. Other exit codes imply internal program error.
+.SH AUTHOR
+Maintained by The LLVM Team (http://llvm.org/).
+.SH COPYRIGHT
+2003-2014, LLVM Project
+.\" Generated by docutils manpage writer.
+.
diff --git a/usr.bin/clang/macho-dump/Makefile b/usr.bin/clang/macho-dump/Makefile
index 0452583..d74326c 100644
--- a/usr.bin/clang/macho-dump/Makefile
+++ b/usr.bin/clang/macho-dump/Makefile
@@ -9,6 +9,10 @@ SRCDIR= tools/macho-dump
SRCS= macho-dump.cpp
LIBDEPS=llvmobject \
+ llvmmcparser \
+ llvmmc \
+ llvmbitreader \
+ llvmcore \
llvmsupport
.include "../clang.prog.mk"
diff --git a/usr.bin/clang/opt/Makefile b/usr.bin/clang/opt/Makefile
index eee7949..075a7bd 100644
--- a/usr.bin/clang/opt/Makefile
+++ b/usr.bin/clang/opt/Makefile
@@ -6,12 +6,23 @@ PROG_CXX=opt
SRCDIR= tools/opt
SRCS= AnalysisWrappers.cpp \
+ BreakpointPrinter.cpp \
GraphPrinters.cpp \
+ NewPMDriver.cpp \
+ PassPrinters.cpp \
+ Passes.cpp \
PrintSCC.cpp \
opt.cpp
TGHDRS= Intrinsics
-LIBDEPS=llvmarmdisassembler \
+LIBDEPS=llvmaarch64disassembler \
+ llvmaarch64codegen \
+ llvmaarch64asmparser \
+ llvmaarch64desc \
+ llvmaarch64info \
+ llvmaarch64instprinter \
+ llvmaarch64utils \
+ llvmarmdisassembler \
llvmarmcodegen \
llvmarmasmparser \
llvmarmdesc \
@@ -23,6 +34,7 @@ LIBDEPS=llvmarmdisassembler \
llvmmipsdesc \
llvmmipsinfo \
llvmmipsinstprinter \
+ llvmpowerpcdisassembler \
llvmpowerpccodegen \
llvmpowerpcasmparser \
llvmpowerpcdesc \
@@ -39,9 +51,9 @@ LIBDEPS=llvmarmdisassembler \
llvmx86codegen \
llvmselectiondag \
llvmasmprinter \
- llvmmcparser \
llvmcodegen \
llvmx86desc \
+ llvmmcdisassembler \
llvmx86info \
llvmx86instprinter \
llvmx86utils \
@@ -49,6 +61,9 @@ LIBDEPS=llvmarmdisassembler \
llvmvectorize \
llvmobjcarcopts \
llvmscalaropts \
+ llvmprofiledata \
+ llvmobject \
+ llvmmcparser \
llvminstcombine \
llvminstrumentation \
llvmtransformutils \
@@ -56,7 +71,6 @@ LIBDEPS=llvmarmdisassembler \
llvmanalysis \
llvmtarget \
llvmmc \
- llvmobject \
llvmirreader \
llvmasmparser \
llvmbitwriter \
@@ -65,3 +79,6 @@ LIBDEPS=llvmarmdisassembler \
llvmsupport
.include "../clang.prog.mk"
+
+DPADD+= ${LIBZ}
+LDADD+= -lz
diff --git a/usr.bin/clang/opt/opt.1 b/usr.bin/clang/opt/opt.1
index 8e1960a..bf357d9 100644
--- a/usr.bin/clang/opt/opt.1
+++ b/usr.bin/clang/opt/opt.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "OPT" "1" "2014-01-01" "3.4" "LLVM"
+.TH "OPT" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
opt \- LLVM optimizer
.
@@ -93,35 +93,14 @@ order in which they are executed (within pass constraints).
.UNINDENT
.INDENT 0.0
.TP
-.B \-std\-compile\-opts
-This is short hand for a standard list of \fIcompile time optimization\fP passes.
-This is typically used to optimize the output from the llvm\-gcc front end. It
-might be useful for other front end compilers as well. To discover the full
-set of options available, use the following command:
-.INDENT 7.0
-.INDENT 3.5
-.sp
-.nf
-.ft C
-llvm\-as < /dev/null | opt \-std\-compile\-opts \-disable\-output \-debug\-pass=Arguments
-.ft P
-.fi
-.UNINDENT
-.UNINDENT
-.UNINDENT
-.INDENT 0.0
-.TP
.B \-disable\-inlining
-This option is only meaningful when \fI\%\-std\-compile\-opts\fP is given. It
-simply removes the inlining pass from the standard list.
+This option simply removes the inlining pass from the standard list.
.UNINDENT
.INDENT 0.0
.TP
.B \-disable\-opt
-This option is only meaningful when \fI\%\-std\-compile\-opts\fP is given. It
-disables most, but not all, of the \fI\%\-std\-compile\-opts\fP\&. The ones that
-remain are \fI\-verify\fP, \fI\-lower\-setjmp\fP, and
-\fI\-funcresolve\fP\&.
+This option is only meaningful when \fI\-std\-link\-opts\fP is given. It
+disables most passes.
.UNINDENT
.INDENT 0.0
.TP
@@ -136,14 +115,7 @@ but it ensures that stripping of debug information is done first.
This option causes opt to add a verify pass after every pass otherwise
specified on the command line (including \fI\-verify\fP). This is useful
for cases where it is suspected that a pass is creating an invalid module but
-it is not clear which pass is doing it. The combination of
-\fI\%\-std\-compile\-opts\fP and \fI\%\-verify\-each\fP can quickly track down
-this kind of problem.
-.UNINDENT
-.INDENT 0.0
-.TP
-.B \-profile\-info\-file <filename>
-Specify the name of the file loaded by the \fB\-profile\-loader\fP option.
+it is not clear which pass is doing it.
.UNINDENT
.INDENT 0.0
.TP
@@ -193,6 +165,6 @@ occurs, it will exit with a non\-zero value.
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
diff --git a/usr.bin/clang/tblgen/Makefile b/usr.bin/clang/tblgen/Makefile
index f06150e..75a45de 100644
--- a/usr.bin/clang/tblgen/Makefile
+++ b/usr.bin/clang/tblgen/Makefile
@@ -31,9 +31,7 @@ SRCS= AsmMatcherEmitter.cpp \
OptParserEmitter.cpp \
PseudoLoweringEmitter.cpp \
RegisterInfoEmitter.cpp \
- SetTheory.cpp \
SubtargetEmitter.cpp \
- TGValueTypes.cpp \
TableGen.cpp \
X86DisassemblerTables.cpp \
X86ModRMFilters.cpp \
diff --git a/usr.bin/clang/tblgen/tblgen.1 b/usr.bin/clang/tblgen/tblgen.1
index 95036eb..1f8dec0 100644
--- a/usr.bin/clang/tblgen/tblgen.1
+++ b/usr.bin/clang/tblgen/tblgen.1
@@ -1,7 +1,7 @@
.\" $FreeBSD$
.\" Man page generated from reStructuredText.
.
-.TH "TBLGEN" "1" "2014-01-01" "3.4" "LLVM"
+.TH "TBLGEN" "1" "2015-03-14" "3.6" "LLVM"
.SH NAME
tblgen \- Target Description To C++ Code Generator
.
@@ -42,7 +42,7 @@ users of LLVM will not need to use this program. It is only for assisting with
writing an LLVM target backend.
.sp
The input and output of \fBtblgen\fP is beyond the scope of this short
-introduction. Please see \fB\&../TableGenFundamentals\fP\&.
+introduction; please see the \fBintroduction to TableGen\fP\&.
.sp
The \fIfilename\fP argument specifies the name of a Target Description (\fB\&.td\fP)
file to read as input.
@@ -177,6 +177,6 @@ occurs, it will exit with a non\-zero value.
.SH AUTHOR
Maintained by The LLVM Team (http://llvm.org/).
.SH COPYRIGHT
-2003-2013, LLVM Project
+2003-2014, LLVM Project
.\" Generated by docutils manpage writer.
.
OpenPOWER on IntegriCloud