mirror of
https://git.FreeBSD.org/src.git
synced 2024-10-18 02:19:39 +00:00
Vendor import of llvm release_80 branch r356034:
https://llvm.org/svn/llvm-project/llvm/branches/release_80@356034
This commit is contained in:
parent
0e2b9676e0
commit
24eadf6f46
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/vendor/llvm/dist-release_80/; revision=345142 svn path=/vendor/llvm/llvm-release_800-r356365/; revision=345335; tag=vendor/llvm/llvm-release_800-r356365
@ -95,6 +95,22 @@ Changes to the LLVM IR
|
|||||||
<SpeculativeLoadHardening.html>`_ must be enabled for the function body.
|
<SpeculativeLoadHardening.html>`_ must be enabled for the function body.
|
||||||
|
|
||||||
|
|
||||||
|
Changes to the JIT APIs
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
The ORC (On Request Compilation) JIT APIs have been updated to support
|
||||||
|
concurrent compilation. The existing (non-concurrent) ORC layer classes and
|
||||||
|
related APIs are deprecated, have been renamed with a "Legacy" prefix (e.g.
|
||||||
|
LegacyIRCompileLayer). The deprecated clasess will be removed in LLVM 9.
|
||||||
|
|
||||||
|
An example JIT stack using the concurrent ORC APIs, called LLJIT, has been
|
||||||
|
added (see include/llvm/ExecutionEngine/Orc/LLJIT.h). The lli tool has been
|
||||||
|
updated to use LLJIT.
|
||||||
|
|
||||||
|
MCJIT and ExecutionEngine continue to be supported, though ORC should be
|
||||||
|
preferred for new projects.
|
||||||
|
|
||||||
|
|
||||||
Changes to the AArch64 Target
|
Changes to the AArch64 Target
|
||||||
-----------------------------
|
-----------------------------
|
||||||
|
|
||||||
@ -173,6 +189,26 @@ Changes to the PowerPC Target
|
|||||||
* Enabled llvm-exegesis latency mode for PPC
|
* Enabled llvm-exegesis latency mode for PPC
|
||||||
|
|
||||||
|
|
||||||
|
Changes to the SystemZ Target
|
||||||
|
-----------------------------
|
||||||
|
|
||||||
|
* A number of bugs related to C/C++ language vector extension support were
|
||||||
|
fixed: the ``-mzvector`` option now actually enables the ``__vector`` and
|
||||||
|
``__bool`` keywords, the ``vec_step`` intrinsic now works, and the
|
||||||
|
``vec_insert_and_zero`` and ``vec_orc`` intrinsics now generate correct code.
|
||||||
|
|
||||||
|
* The ``__float128`` keyword, which had been accidentally enabled in some
|
||||||
|
earlier releases, is now no longer supported. On SystemZ, the ``long double``
|
||||||
|
data type itself already uses the IEEE 128-bit floating-point format.
|
||||||
|
|
||||||
|
* When the compiler inlines ``strcmp`` or ``memcmp``, the generated code no
|
||||||
|
longer returns ``INT_MIN`` as the negative result value under any
|
||||||
|
circumstances.
|
||||||
|
|
||||||
|
* Various code-gen improvements, in particular related to improved
|
||||||
|
auto-vectorization, inlining, and instruction scheduling.
|
||||||
|
|
||||||
|
|
||||||
Changes to the X86 Target
|
Changes to the X86 Target
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user