|
@@ -15,8 +15,8 @@ programming languages, aiming to be the best in class implementation of
|
|
these languages. Clang builds on the LLVM optimizer and code generator,
|
|
these languages. Clang builds on the LLVM optimizer and code generator,
|
|
allowing it to provide high-quality optimization and code generation
|
|
allowing it to provide high-quality optimization and code generation
|
|
support for many targets. For more general information, please see the
|
|
support for many targets. For more general information, please see the
|
|
-`Clang Web Site <http://clang.llvm.org>`_ or the `LLVM Web
|
|
|
|
-Site <http://llvm.org>`_.
|
|
|
|
|
|
+`Clang Web Site <https://clang.llvm.org>`_ or the `LLVM Web
|
|
|
|
+Site <https://llvm.org>`_.
|
|
|
|
|
|
This document describes important notes about using Clang as a compiler
|
|
This document describes important notes about using Clang as a compiler
|
|
for an end-user, documenting the supported features, command line
|
|
for an end-user, documenting the supported features, command line
|
|
@@ -994,7 +994,7 @@ information.
|
|
Precompiled Headers
|
|
Precompiled Headers
|
|
-------------------
|
|
-------------------
|
|
|
|
|
|
-`Precompiled headers <http://en.wikipedia.org/wiki/Precompiled_header>`__
|
|
|
|
|
|
+`Precompiled headers <https://en.wikipedia.org/wiki/Precompiled_header>`_
|
|
are a general approach employed by many compilers to reduce compilation
|
|
are a general approach employed by many compilers to reduce compilation
|
|
time. The underlying motivation of the approach is that it is common for
|
|
time. The underlying motivation of the approach is that it is common for
|
|
the same (and often large) header files to be included by multiple
|
|
the same (and often large) header files to be included by multiple
|
|
@@ -1482,7 +1482,7 @@ usual build cycle when using sample profilers for optimization:
|
|
|
|
|
|
3. Convert the collected profile data to LLVM's sample profile format.
|
|
3. Convert the collected profile data to LLVM's sample profile format.
|
|
This is currently supported via the AutoFDO converter ``create_llvm_prof``.
|
|
This is currently supported via the AutoFDO converter ``create_llvm_prof``.
|
|
- It is available at http://github.com/google/autofdo. Once built and
|
|
|
|
|
|
+ It is available at https://github.com/google/autofdo. Once built and
|
|
installed, you can convert the ``perf.data`` file to LLVM using
|
|
installed, you can convert the ``perf.data`` file to LLVM using
|
|
the command:
|
|
the command:
|
|
|
|
|
|
@@ -1521,12 +1521,12 @@ read by the backend. LLVM supports three different sample profile formats:
|
|
|
|
|
|
2. Binary encoding. This uses a more efficient encoding that yields smaller
|
|
2. Binary encoding. This uses a more efficient encoding that yields smaller
|
|
profile files. This is the format generated by the ``create_llvm_prof`` tool
|
|
profile files. This is the format generated by the ``create_llvm_prof`` tool
|
|
- in http://github.com/google/autofdo.
|
|
|
|
|
|
+ in https://github.com/google/autofdo.
|
|
|
|
|
|
3. GCC encoding. This is based on the gcov format, which is accepted by GCC. It
|
|
3. GCC encoding. This is based on the gcov format, which is accepted by GCC. It
|
|
is only interesting in environments where GCC and Clang co-exist. This
|
|
is only interesting in environments where GCC and Clang co-exist. This
|
|
encoding is only generated by the ``create_gcov`` tool in
|
|
encoding is only generated by the ``create_gcov`` tool in
|
|
- http://github.com/google/autofdo. It can be read by LLVM and
|
|
|
|
|
|
+ https://github.com/google/autofdo. It can be read by LLVM and
|
|
``llvm-profdata``, but it cannot be generated by either.
|
|
``llvm-profdata``, but it cannot be generated by either.
|
|
|
|
|
|
If you are using Linux Perf to generate sampling profiles, you can use the
|
|
If you are using Linux Perf to generate sampling profiles, you can use the
|
|
@@ -1831,9 +1831,9 @@ The profile remapping file is a text file containing lines of the form
|
|
|
|
|
|
where ``fragmentkind`` is one of ``name``, ``type``, or ``encoding``,
|
|
where ``fragmentkind`` is one of ``name``, ``type``, or ``encoding``,
|
|
indicating whether the following mangled name fragments are
|
|
indicating whether the following mangled name fragments are
|
|
-<`name <http://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangle.name>`_>s,
|
|
|
|
-<`type <http://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangle.type>`_>s, or
|
|
|
|
-<`encoding <http://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangle.encoding>`_>s,
|
|
|
|
|
|
+<`name <https://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangle.name>`_>s,
|
|
|
|
+<`type <https://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangle.type>`_>s, or
|
|
|
|
+<`encoding <https://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangle.encoding>`_>s,
|
|
respectively.
|
|
respectively.
|
|
Blank lines and lines starting with ``#`` are ignored.
|
|
Blank lines and lines starting with ``#`` are ignored.
|
|
|
|
|
|
@@ -2829,7 +2829,7 @@ compatibility with the Visual C++ compiler, cl.exe.
|
|
To enable clang-cl to find system headers, libraries, and the linker when run
|
|
To enable clang-cl to find system headers, libraries, and the linker when run
|
|
from the command-line, it should be executed inside a Visual Studio Native Tools
|
|
from the command-line, it should be executed inside a Visual Studio Native Tools
|
|
Command Prompt or a regular Command Prompt where the environment has been set
|
|
Command Prompt or a regular Command Prompt where the environment has been set
|
|
-up using e.g. `vcvarsall.bat <http://msdn.microsoft.com/en-us/library/f2ccy3wt.aspx>`_.
|
|
|
|
|
|
+up using e.g. `vcvarsall.bat <https://msdn.microsoft.com/en-us/library/f2ccy3wt.aspx>`_.
|
|
|
|
|
|
clang-cl can also be used from inside Visual Studio by selecting the LLVM
|
|
clang-cl can also be used from inside Visual Studio by selecting the LLVM
|
|
Platform Toolset. The toolset is not part of the installer, but may be installed
|
|
Platform Toolset. The toolset is not part of the installer, but may be installed
|