1 ========================
2 LLVM 5.0.0 Release Notes
3 ========================
9 These are in-progress notes for the upcoming LLVM 5 release.
10 Release notes for previous releases can be found on
11 `the Download Page <http://releases.llvm.org/download.html>`_.
17 This document contains the release notes for the LLVM Compiler Infrastructure,
18 release 5.0.0. Here we describe the status of LLVM, including major improvements
19 from the previous release, improvements in various subprojects of LLVM, and
20 some of the current users of the code. All LLVM releases may be downloaded
21 from the `LLVM releases web site <http://llvm.org/releases/>`_.
23 For more information about LLVM, including information about the latest
24 release, please check out the `main LLVM web site <http://llvm.org/>`_. If you
25 have questions or comments, the `LLVM Developer's Mailing List
26 <http://lists.llvm.org/mailman/listinfo/llvm-dev>`_ is a good place to send
29 Note that if you are reading this file from a Subversion checkout or the main
30 LLVM web page, this document applies to the *next* release, not the current
31 one. To see the release notes for a specific release, please see the `releases
32 page <http://llvm.org/releases/>`_.
34 Non-comprehensive list of changes in this release
35 =================================================
37 For small 1-3 sentence descriptions, just add an entry at the end of
38 this list. If your description won't fit comfortably in one bullet
39 point (e.g. maybe you would like to give an example of the
40 functionality, or simply have a lot to talk about), see the `NOTE` below
41 for adding a new subsection.
43 * LLVM's ``WeakVH`` has been renamed to ``WeakTrackingVH`` and a new ``WeakVH``
44 has been introduced. The new ``WeakVH`` nulls itself out on deletion, but
45 does not track values across RAUW.
47 * A new library named ``BinaryFormat`` has been created which holds a collection
48 of code which previously lived in ``Support``. This includes the
49 ``file_magic`` structure and ``identify_magic`` functions, as well as all the
50 structure and type definitions for DWARF, ELF, COFF, WASM, and MachO file
53 * The tool ``llvm-pdbdump`` has been renamed ``llvm-pdbutil`` to better reflect
54 its nature as a general purpose PDB manipulation / diagnostics tool that does
55 more than just dumping contents.
57 * The ``BBVectorize`` pass has been removed. It was fully replaced and no
58 longer used back in 2014 but we didn't get around to removing it. Now it is
59 gone. The SLP vectorizer is the suggested non-loop vectorization pass.
62 If you would like to document a larger change, then you can add a
63 subsection about it right here. You can copy the following boilerplate
64 and un-indent it (the indentation causes it to be inside this comment).
69 Makes programs 10x faster by doing Special New Thing.
71 Changes to the LLVM IR
72 ----------------------
74 Changes to the ARM Backend
75 --------------------------
77 During this release ...
80 Changes to the MIPS Target
81 --------------------------
83 During this release ...
86 Changes to the PowerPC Target
87 -----------------------------
89 During this release ...
91 Changes to the X86 Target
92 -------------------------
94 During this release ...
96 Changes to the AMDGPU Target
97 -----------------------------
99 During this release ...
101 Changes to the AVR Target
102 -----------------------------
104 During this release ...
106 Changes to the OCaml bindings
107 -----------------------------
109 During this release ...
115 * Deprecated the ``LLVMAddBBVectorizePass`` interface since the ``BBVectorize``
116 pass has been removed. It is now a no-op and will be removed in the next
117 release. Use ``LLVMAddSLPVectorizePass`` instead to get the supported SLP
121 External Open Source Projects Using LLVM 5
122 ==========================================
127 Additional Information
128 ======================
130 A wide variety of additional information is available on the `LLVM web page
131 <http://llvm.org/>`_, in particular in the `documentation
132 <http://llvm.org/docs/>`_ section. The web page also contains versions of the
133 API documentation which is up-to-date with the Subversion version of the source
134 code. You can access versions of these documents specific to this release by
135 going into the ``llvm/docs/`` directory in the LLVM tree.
137 If you have any questions or comments about LLVM, please feel free to contact
138 us via the `mailing lists <http://llvm.org/docs/#maillist>`_.