source: general/prog/llvm.xml@ 47888b9

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 47888b9 was 47888b9, checked in by Bruce Dubbs <bdubbs@…>, 7 years ago

Update to guile-2.2.0.
Update to keyutils-1.5.10.
Update to llvm-4.0.0.
Update to nss-3.30.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@18500 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 29.1 KB
RevLine 
[7b74537e]1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[a6221fd]7 <!ENTITY llvm-download-http "http://llvm.org/releases/&llvm-version;/llvm-&llvm-version;.src.tar.xz">
[abdc2e6]8 <!ENTITY llvm-download-ftp " ">
[47888b9]9 <!ENTITY llvm-md5sum "ea9139a604be702454f6acf160b4f3a2">
10 <!ENTITY llvm-size "20 MB">
11 <!ENTITY llvm-buildsize "1.8 GB (with Clang, add 8.2 GB for tests)">
12 <!ENTITY llvm-time "22 SBU (with Clang and parallelism=4, add 14 SBU for tests using 12 cores)">
[a6221fd]13
14 <!ENTITY clang-download-http "http://llvm.org/releases/&llvm-version;/cfe-&llvm-version;.src.tar.xz">
[47888b9]15 <!ENTITY clang-md5sum "756e17349fdc708c62974b883bf72d37">
16 <!ENTITY clang-size "11 MB">
[a6221fd]17
18 <!ENTITY rt-version "&llvm-version;">
19 <!ENTITY compiler-rt-download-http "http://llvm.org/releases/&rt-version;/compiler-rt-&rt-version;.src.tar.xz">
[47888b9]20 <!ENTITY compiler-rt-md5sum "2ec11fb7df827b086341131c5d7f1814">
21 <!ENTITY compiler-rt-size "1.4 MB">
[7b74537e]22]>
23
[abdc2e6]24<sect1 id="llvm" xreflabel="LLVM-&llvm-version;">
[7b74537e]25 <?dbhtml filename="llvm.html" ?>
26
27 <sect1info>
28 <othername>$LastChangedBy$</othername>
29 <date>$Date$</date>
30 </sect1info>
31
32 <title>LLVM-&llvm-version;</title>
33
34 <indexterm zone="llvm">
35 <primary sortas="a-LLVM">LLVM</primary>
36 </indexterm>
37
38 <sect2 role="package">
39 <title>Introduction to LLVM</title>
40
[abdc2e6]41 <para>
[a6221fd]42 The <application>LLVM</application> package contains a collection of
43 modular and reusable compiler and toolchain technologies. The Low Level
44 Virtual Machine (LLVM) Core libraries provide a modern source and
45 target-independent optimizer, along with code generation support for many
46 popular CPUs (as well as some less common ones!). These libraries are
47 built around a well specified code representation known as the LLVM
48 intermediate representation ("LLVM IR").
[abdc2e6]49 </para>
[f36bebcd]50
[abdc2e6]51 <para>
[a6221fd]52 The optional <application>Clang</application> and <application>Compiler
[43d840ed]53 RT</application> packages provide new C, C++, Objective C and Objective
[a6221fd]54 C++ front-ends and runtime libraries for the
55 <application>LLVM</application>.
[abdc2e6]56 </para>
[7b74537e]57
[3349c8e]58<!--
[efe8031e]59 <note>
60 <para>
[b3b7e36]61 This package hits a bug in GCC-4.9.0 or an unpatched GCC-4.9.1.
[a85c6ce]62 To build this package, GCC needs to be updated if you have one of
[b3b7e36]63 these versions. See <xref linkend="gcc"/>
[efe8031e]64 for <application>gcc</application> installation instructions.
65 </para>
66 </note>
[3349c8e]67-->
[7fd2c27]68 &lfs80_checked;
[7b74537e]69
70 <bridgehead renderas="sect3">Package Information</bridgehead>
71 <itemizedlist spacing="compact">
72 <listitem>
[abdc2e6]73 <para>
74 Download (HTTP): <ulink url="&llvm-download-http;"/>
75 </para>
[7b74537e]76 </listitem>
77 <listitem>
[abdc2e6]78 <para>
79 Download (FTP): <ulink url="&llvm-download-ftp;"/>
80 </para>
[7b74537e]81 </listitem>
82 <listitem>
[abdc2e6]83 <para>
84 Download MD5 sum: &llvm-md5sum;
85 </para>
[7b74537e]86 </listitem>
87 <listitem>
[abdc2e6]88 <para>
89 Download size: &llvm-size;
90 </para>
[7b74537e]91 </listitem>
92 <listitem>
[abdc2e6]93 <para>
94 Estimated disk space required: &llvm-buildsize;
95 </para>
[7b74537e]96 </listitem>
97 <listitem>
[abdc2e6]98 <para>
99 Estimated build time: &llvm-time;
100 </para>
[7b74537e]101 </listitem>
102 </itemizedlist>
103
[abdc2e6]104 <bridgehead renderas="sect3">Optional Downloads</bridgehead>
[f36bebcd]105
[70251fc]106 <bridgehead renderas="sect4">Clang</bridgehead>
107 <itemizedlist spacing="compact">
108 <listitem>
109 <para>
110 Download: <ulink url="&clang-download-http;"/>
111 </para>
112 </listitem>
113 <listitem>
114 <para>
115 Download MD5 sum: &clang-md5sum;
116 </para>
117 </listitem>
118 <listitem>
119 <para>
120 Download size: &clang-size;
121 </para>
122 </listitem>
123 </itemizedlist>
124
125 <bridgehead renderas="sect4">Compiler RT</bridgehead>
126 <itemizedlist spacing="compact">
127 <listitem>
128 <para>
129 Download: <ulink url="&compiler-rt-download-http;"/>
130 </para>
131 </listitem>
132 <listitem>
133 <para>
134 Download MD5 sum: &compiler-rt-md5sum;
135 </para>
136 </listitem>
137 <listitem>
138 <para>
139 Download size: &compiler-rt-size;
140 </para>
141 </listitem>
142 </itemizedlist>
[1f44775e]143
[7b74537e]144 <bridgehead renderas="sect3">LLVM Dependencies</bridgehead>
145
[7b3f441]146 <!-- cmake is now required -->
147 <bridgehead renderas="sect4">Required</bridgehead>
148 <para role="required">
149 <xref linkend="cmake"/>
150 </para>
151
152
[f36bebcd]153 <bridgehead renderas="sect4">Recommended</bridgehead>
154 <para role="recommended">
[7b3f441]155 <xref linkend="libffi"/> and
[70251fc]156 <xref linkend="python2"/>
[f36bebcd]157 </para>
158
[7b74537e]159 <bridgehead renderas="sect4">Optional</bridgehead>
160 <para role="optional">
[abdc2e6]161 <xref linkend="doxygen"/>,
162 <xref linkend="graphviz"/>,
163 <xref linkend="libxml2"/>,
[2d98031c]164 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>),
[a6221fd]165 <xref linkend="valgrind"/>,
[abdc2e6]166 <xref linkend="zip"/>,
[a6221fd]167 <ulink url="http://www.ocaml.org/">OCaml</ulink>, and
168 <ulink url="http://pypi.python.org/pypi/Sphinx">Sphinx</ulink>
[7b74537e]169 </para>
170
171 <para condition="html" role="usernotes">User Notes:
[abdc2e6]172 <ulink url="&blfs-wiki;/llvm"/>
173 </para>
[7b74537e]174 </sect2>
175
176 <sect2 role="installation">
177 <title>Installation of LLVM</title>
178
[abdc2e6]179 <para>
180 If you have downloaded the optional packages, install them into
181 the source tree by running the following commands:
182 </para>
[f36bebcd]183
[097fd436]184<screen><userinput>tar -xf ../cfe-&llvm-version;.src.tar.xz -C tools &amp;&amp;
185tar -xf ../compiler-rt-&rt-version;.src.tar.xz -C projects &amp;&amp;
[f36bebcd]186
[7e16699b]187mv tools/cfe-&llvm-version;.src tools/clang &amp;&amp;
[a6221fd]188mv projects/compiler-rt-&rt-version;.src projects/compiler-rt</userinput></screen>
[5889b252]189
[3349c8e]190<!-- For 3.7.0: Now fixed at version 3.8.0
[bd4f0143]191 <para>
[a14f8e11]192 The run-time library needs to be fixed for 32 bit installations:
[bd4f0143]193 </para>
194
195<screen><userinput>sed -r "/ifeq.*CompilerTargetArch/s#i386#i686#g" \
196 -i projects/compiler-rt/make/platform/clang_linux.mk</userinput></screen>
[3349c8e]197-->
[abdc2e6]198 <para>
199 Install <application>LLVM</application> by running the following
200 commands:
201 </para>
202
[3349c8e]203<!-- Not used in the build system
[5d4a086a]204<screen><userinput>sed -e "s:/docs/llvm:/share/doc/llvm-&llvm-version;:" \
[70251fc]205 -i Makefile.config.in &amp;&amp;
[3349c8e]206-->
207<screen><userinput>mkdir -v build &amp;&amp;
[b3b7e36]208cd build &amp;&amp;
209
[3349c8e]210CC=gcc CXX=g++ \
211cmake -DCMAKE_INSTALL_PREFIX=/usr \
212 -DLLVM_ENABLE_FFI=ON \
213 -DCMAKE_BUILD_TYPE=Release \
[4e845a4]214 -DLLVM_BUILD_LLVM_DYLIB=ON \
[3349c8e]215 -DLLVM_TARGETS_TO_BUILD="host;AMDGPU" \
216 -Wno-dev .. &amp;&amp;
[7b74537e]217make</userinput></screen>
218
[abdc2e6]219 <para>
220 If you have installed <application>Sphinx</application> and wish
[3349c8e]221 to generate the html documentation and manual pages, issue the
222 following commands:
[abdc2e6]223 </para>
[3349c8e]224<screen><userinput>cmake -DLLVM_ENABLE_SPHINX=ON \
225 -DSPHINX_WARNINGS_AS_ERRORS=OFF \
226 -Wno-dev .. &amp;&amp;
227make docs-llvm-html docs-llvm-man</userinput></screen>
[abdc2e6]228 <para>
[3349c8e]229 If you have downloaded the optional packages, the clang documentation
230 can be built too:
231 </para>
232<screen><userinput>make docs-clang-html docs-clang-man</userinput></screen>
233 <para>
[b4c31a6]234 To test the results, issue: <command>make check-all</command>. Tests are
235 run using the maximum number of processors/threads available.
[47888b9]236 Note that the Address Sanitizer tests are known to fail.
[b4c31a6]237<!-- Still true for v 3.9.1 -->
[abdc2e6]238 </para>
[7b74537e]239
[abdc2e6]240 <para>
241 Now, as the <systemitem class="username">root</systemitem> user:
242 </para>
[7b74537e]243
[3349c8e]244<screen role="root"><userinput>make install</userinput></screen>
[70251fc]245
[3349c8e]246 <para>
247 If you have built the documentation, install it by running the
248 following command as the <systemitem class="username">root</systemitem>
249 user:
250 </para>
251
252<screen role="root"><userinput>install -v -m644 docs/man/* /usr/share/man/man1 &amp;&amp;
253install -v -d -m755 /usr/share/doc/llvm-&llvm-version;/llvm-html &amp;&amp;
254cp -Rv docs/html/* /usr/share/doc/llvm-&llvm-version;/llvm-html</userinput></screen>
[7b74537e]255
[abdc2e6]256 <para>
[6c322a4]257 The clang documentation can be installed in the same way (again as the
[3349c8e]258 <systemitem class="username">root</systemitem> user):
[abdc2e6]259 </para>
260
[3349c8e]261<screen role="root"><userinput>install -v -m644 tools/clang/docs/man/* /usr/share/man/man1 &amp;&amp;
262install -v -d -m755 /usr/share/doc/llvm-&llvm-version;/clang-html &amp;&amp;
263cp -Rv tools/clang/docs/html/* /usr/share/doc/llvm-&llvm-version;/clang-html</userinput></screen>
[7b74537e]264
265 </sect2>
[abdc2e6]266
[5889b252]267 <sect2 role="commands">
268 <title>Command Explanations</title>
269
270 <para>
[f1d7196]271 <parameter>-DLLVM_ENABLE_FFI=ON</parameter>: This switch enables
[5889b252]272 <application>LLVM</application> to use
273 <application>libffi</application>. Remove if you did not
274 install <application>libffi</application>.
275 </para>
276
[4e845a4]277 <para>
278 <parameter>-DLLVM_BUILD_LLVM_DYLIB=ON</parameter>: builds libraries as
279 static and links all of them into an unique shared one. This is the
280 recommended way of building a shared library.
281 </para>
282
[5889b252]283 <para>
[3349c8e]284 <parameter>-DCMAKE_BUILD_TYPE=Release</parameter>: This switch enables
285 compiler optimizations in order to speed up the code and reduce its size.
286 It also disables some compile checks, not necessary on a production
287 system.
[5889b252]288 </para>
289
[b3b7e36]290 <para>
[3349c8e]291 <parameter>-DLLVM_TARGETS_TO_BUILD="host;AMDGPU"</parameter>: This
292 switch enables building for the same target as the host, and also for
293 the r600 AMD GPU used by the Mesa r600 and radeonsi drivers. Default is
294 all. You can use a semicolon separated list. Valid targets are: host,
295 X86, Sparc, PowerPC, ARM, AArch64, Mips, Hexagon, Xcore, MSP430, NVPTX,
296 SystemZ, AMDGPU, BPF, CppBackend, or all.
[b3b7e36]297 </para>
298
[5889b252]299 <para>
[4e845a4]300 <option>-DLLVM_LINK_LLVM_DYLIB=ON</option>: Used in conjunction with
301 <parameter>-DLLVM_BUILD_LLVM_DYLIB=ON</parameter>, this switch enables
302 linking the tools against the shared library instead of the static ones.
303 </para>
304
305 <para>
306 <option>-DBUILD_SHARED_LIBS=ON</option>: if used instead of
307 <parameter>-DLLVM_BUILD_LLVM_DYLIB=ON</parameter>, builds all the
308 <application>LLVM</application> libraries (about 60) as shared
309 libraries instead of static.
[3349c8e]310 </para>
311
312 <para>
313 <option>-DLLVM_ENABLE_DOXYGEN</option>: Enables the generation of
314 browsable HTML documentation if you have installed <xref
315 linkend="doxygen"/>. You should run <command>make doxygen-html</command>
316 afterwards, and install the generated documentation manually.
[5889b252]317 </para>
318
319 </sect2>
320
[7b74537e]321 <sect2 role="content">
322 <title>Contents</title>
323
324 <segmentedlist>
325 <segtitle>Installed Programs</segtitle>
326 <segtitle>Installed Libraries</segtitle>
327 <segtitle>Installed Directories</segtitle>
328
329 <seglistitem>
[abdc2e6]330 <seg>
[3349c8e]331 bugpoint, c-index-test, clang, clang++ (symlinks to
[3fdc9b0]332 clang-&lt;version&gt;), clang-&lt;version&gt;, clang-check, clang-cl,
[3349c8e]333 clang-format, git-clang-format,
334 llc, lli, llvm-ar, llvm-as, llvm-bcanalyzer, llvm-config, llvm-cov,
335 llvm-c-test, llvm-cxxdump, llvm-diff, llvm-dis, llvm-dsymutil,
336 llvm-dwarfdump, llvm-dwp, llvm-extract, llvm-lib (symlink to
337 llvm-ar), llvm-link, llvm-lto, llvm-mc, llvm-mcmarkup, llvm-nm,
338 llvm-objdump, llvm-pdbdump, llvm-profdata, llvm-ranlib (symlink to
339 llvm-ar), llvm-readobj, llvm-rtdyld, llvm-size, llvm-split,
[3fdc9b0]340 llvm-stress, llvm-symbolizer, llvm-tblgen, obj2yaml, opt, sancov,
[b4c31a6]341 sanstats, scan-build, scan-view, verify-uselistorder, and yaml2obj
[abdc2e6]342 </seg>
343 <seg>
[4e845a4]344 BugpointPasses.so, LLVMHello.so, libLLVM.so, libLLVM*.a (57
345 libraries), libLTO.so, libclang.so and libclang*.a (24 libraries)
[abdc2e6]346 </seg>
347 <seg>
[a6221fd]348 /usr/include/{clang,clang-c,llvm,llvm-c},
[43d840ed]349 /usr/lib/{clang,cmake/{clang,llvm}} and
350 /usr/share/{clang,scan-build,scan-view,doc/llvm-&llvm-version;}
[abdc2e6]351 </seg>
[7b74537e]352 </seglistitem>
353 </segmentedlist>
[abdc2e6]354
[7b74537e]355 <variablelist>
356 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
357 <?dbfo list-presentation="list"?>
358 <?dbhtml list-presentation="table"?>
359
[abdc2e6]360 <varlistentry id="bugpoint">
361 <term><command>bugpoint</command></term>
362 <listitem>
363 <para>
364 is the automatic test case reduction tool.
365 </para>
366 <indexterm zone="llvm bugpoint">
367 <primary sortas="b-bugpoint">bugpoint</primary>
368 </indexterm>
369 </listitem>
370 </varlistentry>
371
372 <varlistentry id="clang">
373 <term><command>clang</command></term>
[7b74537e]374 <listitem>
[abdc2e6]375 <para>
376 is the <application>Clang</application> C, C++,
377 and Objective-C compiler.
378 </para>
379 <indexterm zone="llvm clang">
380 <primary sortas="b-clang">clang</primary>
[7b74537e]381 </indexterm>
382 </listitem>
383 </varlistentry>
384
[3349c8e]385 <varlistentry id="clang-format">
386 <term><command>clang-format</command></term>
387 <listitem>
388 <para>
389 is a tool to format C/C++/Java/JavaScript/Objective-C/Protobuf
390 code.
391 </para>
392 <indexterm zone="llvm clang-format">
393 <primary sortas="b-clang-format">clang-format</primary>
394 </indexterm>
395 </listitem>
396 </varlistentry>
397
[abdc2e6]398 <varlistentry id="llc">
399 <term><command>llc</command></term>
[7b74537e]400 <listitem>
[abdc2e6]401 <para>
402 is the <application>LLVM</application> static compiler.
403 </para>
404 <indexterm zone="llvm llc">
405 <primary sortas="b-llc">llc</primary>
406 </indexterm>
407 </listitem>
408 </varlistentry>
409
410 <varlistentry id="lli">
411 <term><command>lli</command></term>
412 <listitem>
413 <para>
414 is used to directly execute programs from
415 <application>LLVM</application> bitcode.
416 </para>
417 <indexterm zone="llvm lli">
418 <primary sortas="b-lli">lli</primary>
419 </indexterm>
420 </listitem>
421 </varlistentry>
422
423 <varlistentry id="llvm-ar">
424 <term><command>llvm-ar</command></term>
425 <listitem>
426 <para>
427 is the <application>LLVM</application> archiver.
428 </para>
429 <indexterm zone="llvm llvm-ar">
430 <primary sortas="b-llvm-ar">llvm-ar</primary>
431 </indexterm>
432 </listitem>
433 </varlistentry>
434
435 <varlistentry id="llvm-as">
436 <term><command>llvm-as</command></term>
437 <listitem>
438 <para>
439 is the <application>LLVM</application> assembler.
440 </para>
441 <indexterm zone="llvm llvm-as">
442 <primary sortas="b-llvm-as">llvm-as</primary>
443 </indexterm>
444 </listitem>
445 </varlistentry>
446
447 <varlistentry id="llvm-bcanalyzer">
448 <term><command>llvm-bcanalyzer</command></term>
449 <listitem>
450 <para>
451 is the <application>LLVM</application> bitcode analyzer.
452 </para>
453 <indexterm zone="llvm llvm-bcanalyzer">
454 <primary sortas="b-llvm-bcanalyzer">llvm-bcanalyzer</primary>
455 </indexterm>
456 </listitem>
457 </varlistentry>
458
459 <varlistentry id="llvm-config">
460 <term><command>llvm-config</command></term>
461 <listitem>
462 <para>
463 Prints <application>LLVM</application> compilation options.
464 </para>
465 <indexterm zone="llvm llvm-config">
466 <primary sortas="b-llvm-config">llvm-config</primary>
467 </indexterm>
468 </listitem>
469 </varlistentry>
470
471 <varlistentry id="llvm-cov">
472 <term><command>llvm-cov</command></term>
473 <listitem>
474 <para>
475 is used to emit coverage information.
476 </para>
477 <indexterm zone="llvm llvm-cov">
478 <primary sortas="b-llvm-cov">llvm-cov</primary>
479 </indexterm>
480 </listitem>
481 </varlistentry>
482
[3349c8e]483 <varlistentry id="llvm-c-test">
484 <term><command>llvm-c-test</command></term>
485 <listitem>
486 <para>
487 is a bytecode disassembler.
488 </para>
489 <indexterm zone="llvm llvm-c-test">
490 <primary sortas="b-llvm-c-test">llvm-c-test</primary>
491 </indexterm>
492 </listitem>
493 </varlistentry>
494
[b3b7e36]495 <varlistentry id="llvm-cxxdump">
496 <term><command>llvm-cxxdump</command></term>
497 <listitem>
498 <para>
[3fdc9b0]499 is used as a C++ ABI Data Dumper.
[b3b7e36]500 </para>
501 <indexterm zone="llvm llvm-cxxdump">
502 <primary sortas="b-llvm-cxxdump">llvm-cxxdump</primary>
503 </indexterm>
504 </listitem>
505 </varlistentry>
506
[abdc2e6]507 <varlistentry id="llvm-diff">
508 <term><command>llvm-diff</command></term>
509 <listitem>
510 <para>
511 is the <application>LLVM</application> structural
512 '<command>diff</command>'.
513 </para>
514 <indexterm zone="llvm llvm-diff">
515 <primary sortas="b-llvm-diff">llvm-diff</primary>
516 </indexterm>
517 </listitem>
518 </varlistentry>
519
520 <varlistentry id="llvm-dis">
521 <term><command>llvm-dis</command></term>
522 <listitem>
523 <para>
524 is the <application>LLVM</application> disassembler.
525 </para>
526 <indexterm zone="llvm llvm-dis">
527 <primary sortas="b-llvm-dis">llvm-dis</primary>
528 </indexterm>
529 </listitem>
530 </varlistentry>
531
[3a9d001]532 <varlistentry id="llvm-dsymutil">
533 <term><command>llvm-dsymutil</command></term>
534 <listitem>
535 <para>
[3fdc9b0]536 is a tool used to manipulate archived DWARF debug symbol files,
[3a9d001]537 compatible with the Darwin command <command>dsymutil</command>.
538 </para>
539 <indexterm zone="llvm llvm-dsymutil">
540 <primary sortas="b-llvm-dsymutil">llvm-dsymutil</primary>
541 </indexterm>
542 </listitem>
543 </varlistentry>
544
[3349c8e]545 <varlistentry id="llvm-dwarfdump">
546 <term><command>llvm-dwarfdump</command></term>
547 <listitem>
548 <para>
549 prints the content of DWARF sections in object files.
550 </para>
551 <indexterm zone="llvm llvm-dwarfdump">
552 <primary sortas="b-llvm-dwarfdump">llvm-dwarfdump</primary>
553 </indexterm>
554 </listitem>
555 </varlistentry>
556
557 <varlistentry id="llvm-dwp">
558 <term><command>llvm-dwp</command></term>
559 <listitem>
560 <para>
[3fdc9b0]561 merges split DWARF files.
[3349c8e]562 </para>
563 <indexterm zone="llvm llvm-dwp">
564 <primary sortas="b-llvm-dwp">llvm-dwp</primary>
565 </indexterm>
566 </listitem>
567 </varlistentry>
568
[abdc2e6]569 <varlistentry id="llvm-extract">
570 <term><command>llvm-extract</command></term>
571 <listitem>
572 <para>
573 is used to extract a function from an
574 <application>LLVM</application> module.
575 </para>
576 <indexterm zone="llvm llvm-extract">
577 <primary sortas="b-llvm-extract">llvm-extract</primary>
578 </indexterm>
579 </listitem>
580 </varlistentry>
581
582 <varlistentry id="llvm-link">
583 <term><command>llvm-link</command></term>
584 <listitem>
585 <para>
586 is the <application>LLVM</application> linker.
587 </para>
588 <indexterm zone="llvm llvm-link">
589 <primary sortas="b-llvm-link">llvm-link</primary>
590 </indexterm>
591 </listitem>
592 </varlistentry>
593
[3349c8e]594 <varlistentry id="llvm-lto">
595 <term><command>llvm-lto</command></term>
596 <listitem>
597 <para>
598 is the <application>LLVM</application> LTO (link time optimization)
599 linker.
600 </para>
601 <indexterm zone="llvm llvm-lto">
602 <primary sortas="b-llvm-lto">llvm-lto</primary>
603 </indexterm>
604 </listitem>
605 </varlistentry>
606
607 <varlistentry id="llvm-mc">
608 <term><command>llvm-mc</command></term>
609 <listitem>
610 <para>
611 is a standalone machine code assembler/disassembler.
612 </para>
613 <indexterm zone="llvm llvm-mc">
614 <primary sortas="b-llvm-mc">llvm-mc</primary>
615 </indexterm>
616 </listitem>
617 </varlistentry>
618
[abdc2e6]619 <varlistentry id="llvm-nm">
620 <term><command>llvm-nm</command></term>
621 <listitem>
622 <para>
623 is used to list <application>LLVM</application> bitcode
624 and object file's symbol table.
625 </para>
626 <indexterm zone="llvm llvm-nm">
627 <primary sortas="b-llvm-nm">llvm-nm</primary>
628 </indexterm>
629 </listitem>
630 </varlistentry>
[b3b7e36]631
[3349c8e]632 <varlistentry id="llvm-objdump">
633 <term><command>llvm-objdump</command></term>
634 <listitem>
635 <para>
636 is an <application>LLVM</application> object file dumper.
637 </para>
638 <indexterm zone="llvm llvm-objdump">
639 <primary sortas="b-llvm-objdump">llvm-objdump</primary>
640 </indexterm>
641 </listitem>
642 </varlistentry>
643
[b3b7e36]644 <varlistentry id="llvm-pdbdump">
645 <term><command>llvm-pdbdump</command></term>
646 <listitem>
647 <para>
648 is used as PDB Dumper.
649 </para>
650 <indexterm zone="llvm llvm-pdbdump">
651 <primary sortas="b-llvm-pdbdump">llvm-pdbdump</primary>
652 </indexterm>
653 </listitem>
654 </varlistentry>
[3349c8e]655
656 <varlistentry id="llvm-profdata">
657 <term><command>llvm-profdata</command></term>
[abdc2e6]658 <listitem>
659 <para>
[3349c8e]660 is a small tool to manipulate and print profile data files.
[abdc2e6]661 </para>
[3349c8e]662 <indexterm zone="llvm llvm-profdata">
663 <primary sortas="b-llvm-profdata">llvm-profdata</primary>
[abdc2e6]664 </indexterm>
665 </listitem>
[3349c8e]666 </varlistentry>
[abdc2e6]667
668 <varlistentry id="llvm-ranlib">
669 <term><command>llvm-ranlib</command></term>
670 <listitem>
671 <para>
[3fdc9b0]672 is used to generate an index for a <application>LLVM</application>
[abdc2e6]673 archive.
674 </para>
675 <indexterm zone="llvm llvm-ranlib">
676 <primary sortas="b-llvm-ranlib">llvm-ranlib</primary>
677 </indexterm>
678 </listitem>
679 </varlistentry>
680
[3349c8e]681 <varlistentry id="llvm-readobj">
682 <term><command>llvm-readobj</command></term>
683 <listitem>
684 <para>
685 displays low-level format-specific information about object files.
686 </para>
687 <indexterm zone="llvm llvm-readobj">
688 <primary sortas="b-llvm-readobj">llvm-readobj</primary>
689 </indexterm>
690 </listitem>
691 </varlistentry>
692
693 <varlistentry id="llvm-rtdyld">
694 <term><command>llvm-rtdyld</command></term>
695 <listitem>
696 <para>
[3fdc9b0]697 is the <application>LLVM</application> MC-JIT tool.
[3349c8e]698 </para>
699 <indexterm zone="llvm llvm-rtdyld">
700 <primary sortas="b-llvm-rtdyld">llvm-rtdyld</primary>
701 </indexterm>
702 </listitem>
703 </varlistentry>
704
705 <varlistentry id="llvm-size">
706 <term><command>llvm-size</command></term>
707 <listitem>
708 <para>
[3fdc9b0]709 is the <application>LLVM</application> object size dumper.
[3349c8e]710 </para>
711 <indexterm zone="llvm llvm-size">
712 <primary sortas="b-llvm-size">llvm-size</primary>
713 </indexterm>
714 </listitem>
715 </varlistentry>
716
717 <varlistentry id="llvm-split">
718 <term><command>llvm-split</command></term>
719 <listitem>
720 <para>
[3fdc9b0]721 is the <application>LLVM</application> module splitter.
[3349c8e]722 </para>
723 <indexterm zone="llvm llvm-split">
724 <primary sortas="b-llvm-split">llvm-split</primary>
725 </indexterm>
726 </listitem>
727 </varlistentry>
728
[abdc2e6]729 <varlistentry id="llvm-stress">
730 <term><command>llvm-stress</command></term>
731 <listitem>
732 <para>
733 is used to generate random
734 <filename class="extension">.ll</filename> files.
735 </para>
736 <indexterm zone="llvm llvm-stress">
737 <primary sortas="b-llvm-stress">llvm-stress</primary>
738 </indexterm>
739 </listitem>
740 </varlistentry>
741
[3349c8e]742 <varlistentry id="llvm-symbolizer">
743 <term><command>llvm-symbolizer</command></term>
744 <listitem>
745 <para>
746 converts adresses into source code locations.
747 </para>
748 <indexterm zone="llvm llvm-symbolizer">
749 <primary sortas="b-llvm-symbolizer">llvm-symbolizer</primary>
750 </indexterm>
751 </listitem>
752 </varlistentry>
753
[abdc2e6]754 <varlistentry id="llvm-tblgen">
755 <term><command>llvm-tblgen</command></term>
756 <listitem>
757 <para>
758 is the <application>LLVM</application> Target Description
759 To C++ Code Generator.
760 </para>
761 <indexterm zone="llvm llvm-tblgen">
762 <primary sortas="b-llvm-tblgen">llvm-tblgen</primary>
763 </indexterm>
764 </listitem>
765 </varlistentry>
766
[39dd48b]767 <varlistentry id="obj2yaml">
768 <term><command>obj2yaml</command></term>
769 <listitem>
770 <para>
771 takes an object file,and produces a YAML representation of the
772 file.
773 </para>
774 <indexterm zone="llvm obj2yaml">
775 <primary sortas="b-obj2yaml">obj2yaml</primary>
776 </indexterm>
777 </listitem>
778 </varlistentry>
779
[abdc2e6]780 <varlistentry id="opt">
781 <term><command>opt</command></term>
782 <listitem>
783 <para>
784 is the <application>LLVM</application> optimizer.
785 </para>
786 <indexterm zone="llvm opt">
787 <primary sortas="b-opt">opt</primary>
788 </indexterm>
789 </listitem>
790 </varlistentry>
791
[3349c8e]792 <varlistentry id="sancov">
793 <term><command>sancov</command></term>
794 <listitem>
795 <para>
[3fdc9b0]796 is the sanitizer coverage processing tool.
[3349c8e]797 </para>
798 <indexterm zone="llvm sancov">
799 <primary sortas="b-sancov">sancov</primary>
800 </indexterm>
801 </listitem>
802 </varlistentry>
803
[b4c31a6]804 <varlistentry id="sanstats">
805 <term><command>sanstats</command></term>
806 <listitem>
807 <para>
808 is the sanitizer statistics processing tool.
809 </para>
810 <indexterm zone="llvm sanstats">
811 <primary sortas="b-sanstats">sanstats</primary>
812 </indexterm>
813 </listitem>
814 </varlistentry>
815
[70251fc]816 <varlistentry id="scan-build">
817 <term><command>scan-build</command></term>
818 <listitem>
819 <para>
820 is a <application>Perl</application> script that invokes the
821 <application>Clang</application> static analyzer.
822 </para>
823 <indexterm zone="llvm scan-build">
824 <primary sortas="b-scan-build">scan-build</primary>
[39dd48b]825 </indexterm>
826 </listitem>
827 </varlistentry>
828
[3349c8e]829 <varlistentry id="scan-view">
830 <term><command>scan-view</command></term>
831 <listitem>
832 <para>
833 is a viewer for <application>Clang</application> static analyzer
834 results.
835 </para>
836 <indexterm zone="llvm scan-view">
837 <primary sortas="b-scan-view">scan-view</primary>
838 </indexterm>
839 </listitem>
840 </varlistentry>
841
842 <varlistentry id="verify-uselistorder">
843 <term><command>verify-uselistorder</command></term>
844 <listitem>
845 <para>
846 is the <application>LLVM</application> tool to verify use-list
847 order.
848 </para>
849 <indexterm zone="llvm verify-uselistorder">
850 <primary sortas="b-verify-uselistorder">verify-uselistorder</primary>
851 </indexterm>
852 </listitem>
853 </varlistentry>
854
[39dd48b]855 <varlistentry id="yaml2obj">
856 <term><command>yaml2obj</command></term>
857 <listitem>
858 <para>
859 takes a YAML representation of an object file and converts it
860 to an binary file.
861 </para>
862 <indexterm zone="llvm yaml2obj">
863 <primary sortas="b-yaml2obj">yaml2obj</primary>
[70251fc]864 </indexterm>
865 </listitem>
866 </varlistentry>
[3349c8e]867<!--
[abdc2e6]868 <varlistentry id="libllvm">
869 <term><filename class="libraryfile">libLLVM-&llvm-version;.so</filename></term>
870 <listitem>
871 <para>
872 contains the <application>LLVM</application> API functions.
873 </para>
874 <indexterm zone="llvm libllvm">
875 <primary sortas="c-libllvm">libLLVM-&llvm-version;.so</primary>
876 </indexterm>
877 </listitem>
878 </varlistentry>
[3349c8e]879
[abdc2e6]880 <varlistentry id="libprofile_rt">
881 <term><filename class="libraryfile">libprofile_rt.so</filename></term>
882 <listitem>
883 <para>
884 is the C, C++ and Objective-C runtime library for
885 <application>Clang</application>.
886 </para>
887 <indexterm zone="llvm libprofile_rt">
888 <primary sortas="c-libprofile_rt">libprofile_rt.so</primary>
[7b74537e]889 </indexterm>
890 </listitem>
[0f5ca44]891 </varlistentry>-->
[7b74537e]892
893 </variablelist>
[abdc2e6]894
[7b74537e]895 </sect2>
896
897</sect1>
Note: See TracBrowser for help on using the repository browser.