diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2019-03-14 19:41:10 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2019-03-14 19:41:10 +0000 |
commit | 24eadf6f46cd3637ffe867648ce8eca7314115c6 (patch) | |
tree | cabfb57e03ddd434e776ebedf3365249af986dfc | |
parent | 0e2b9676e04ea85245d78e91a5297b774ca3bac0 (diff) |
Vendor import of llvm release_80 branch r356034:vendor/llvm/llvm-release_800-r356365vendor/llvm/llvm-release_80-r356034
Notes
Notes:
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
-rw-r--r-- | docs/ReleaseNotes.rst | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst index 70d31a625abb..8209c08889ed 100644 --- a/docs/ReleaseNotes.rst +++ b/docs/ReleaseNotes.rst @@ -95,6 +95,22 @@ Changes to the LLVM IR <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 ----------------------------- @@ -173,6 +189,26 @@ Changes to the PowerPC Target * 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 ------------------------- |