blob: cf86f445c8708150184fafb07b1781f51abf1315 [file] [log] [blame]
Dmitri Gribenko38782b82012-12-09 23:14:26 +00001======================
Hans Wennborg469822e2016-01-13 17:32:32 +00002LLVM 3.9 Release Notes
Dmitri Gribenko38782b82012-12-09 23:14:26 +00003======================
4
5.. contents::
6 :local:
7
Sean Silva1eab30d2013-01-20 03:29:50 +00008.. warning::
Hans Wennborg469822e2016-01-13 17:32:32 +00009 These are in-progress notes for the upcoming LLVM 3.9 release. You may
Nico Webera16bc782015-09-01 21:10:56 +000010 prefer the `LLVM 3.7 Release Notes <http://llvm.org/releases/3.7.0/docs
Sean Silva1eab30d2013-01-20 03:29:50 +000011 /ReleaseNotes.html>`_.
Dmitri Gribenko38782b82012-12-09 23:14:26 +000012
Dmitri Gribenko38782b82012-12-09 23:14:26 +000013
14Introduction
15============
16
17This document contains the release notes for the LLVM Compiler Infrastructure,
Hans Wennborg469822e2016-01-13 17:32:32 +000018release 3.9. Here we describe the status of LLVM, including major improvements
Dmitri Gribenko38782b82012-12-09 23:14:26 +000019from the previous release, improvements in various subprojects of LLVM, and
20some of the current users of the code. All LLVM releases may be downloaded
21from the `LLVM releases web site <http://llvm.org/releases/>`_.
22
23For more information about LLVM, including information about the latest
24release, please check out the `main LLVM web site <http://llvm.org/>`_. If you
25have questions or comments, the `LLVM Developer's Mailing List
Tanya Lattner0d28f802015-08-05 03:51:17 +000026<http://lists.llvm.org/mailman/listinfo/llvm-dev>`_ is a good place to send
Dmitri Gribenko38782b82012-12-09 23:14:26 +000027them.
28
29Note that if you are reading this file from a Subversion checkout or the main
30LLVM web page, this document applies to the *next* release, not the current
31one. To see the release notes for a specific release, please see the `releases
32page <http://llvm.org/releases/>`_.
33
Sean Silva1eab30d2013-01-20 03:29:50 +000034Non-comprehensive list of changes in this release
35=================================================
Hans Wennborg469822e2016-01-13 17:32:32 +000036* .. note about autoconf build having been removed.
Dmitri Gribenko38782b82012-12-09 23:14:26 +000037
Rafael Espindolacbc31d62016-02-12 15:28:45 +000038* .. note about C API functions LLVMParseBitcode,
Hans Wennborgaae49c12016-01-13 19:33:49 +000039 LLVMParseBitcodeInContext, LLVMGetBitcodeModuleInContext and
Mehdi Aminif71d6532016-02-12 06:22:00 +000040 LLVMGetBitcodeModule having been removed. LLVMGetTargetMachineData has been
41 removed (use LLVMGetDataLayout instead).
Eric Christophera6b96002015-12-18 01:46:52 +000042
Rafael Espindolacbc31d62016-02-12 15:28:45 +000043* The C API function LLVMLinkModules has been removed.
44
Sean Silva1eab30d2013-01-20 03:29:50 +000045.. NOTE
46 For small 1-3 sentence descriptions, just add an entry at the end of
47 this list. If your description won't fit comfortably in one bullet
48 point (e.g. maybe you would like to give an example of the
49 functionality, or simply have a lot to talk about), see the `NOTE` below
50 for adding a new subsection.
Dmitri Gribenko38782b82012-12-09 23:14:26 +000051
Sean Silva1eab30d2013-01-20 03:29:50 +000052* ... next change ...
Dmitri Gribenko38782b82012-12-09 23:14:26 +000053
Sean Silva1eab30d2013-01-20 03:29:50 +000054.. NOTE
55 If you would like to document a larger change, then you can add a
56 subsection about it right here. You can copy the following boilerplate
57 and un-indent it (the indentation causes it to be inside this comment).
Dmitri Gribenko38782b82012-12-09 23:14:26 +000058
Sean Silva1eab30d2013-01-20 03:29:50 +000059 Special New Feature
60 -------------------
Dmitri Gribenko38782b82012-12-09 23:14:26 +000061
Sean Silva1eab30d2013-01-20 03:29:50 +000062 Makes programs 10x faster by doing Special New Thing.
Dmitri Gribenko38782b82012-12-09 23:14:26 +000063
Renato Golin7c9d0502014-03-18 10:16:15 +000064Changes to the ARM Backend
65--------------------------
66
Rafael Espindolabd334e22014-08-22 21:57:38 +000067 During this release ...
Renato Golin7c9d0502014-03-18 10:16:15 +000068
Renato Golin7c9d0502014-03-18 10:16:15 +000069
Daniel Sandersa4d18fc2014-07-23 12:59:26 +000070Changes to the MIPS Target
71--------------------------
72
Hans Wennborgef818c12015-01-14 18:07:30 +000073 During this release ...
Daniel Sanders1bcd70e2015-01-11 10:34:52 +000074
Daniel Sandersa4d18fc2014-07-23 12:59:26 +000075
Bill Schmidt40049892014-07-31 14:38:17 +000076Changes to the PowerPC Target
Bill Schmidt08616c72014-07-31 15:20:30 +000077-----------------------------
Bill Schmidt40049892014-07-31 14:38:17 +000078
Hans Wennborgef818c12015-01-14 18:07:30 +000079 During this release ...
Bill Schmidta2dece22015-01-12 20:46:43 +000080
Bill Schmidt40049892014-07-31 14:38:17 +000081
NAKAMURA Takumi9ec6a822015-12-21 02:37:23 +000082Changes to the X86 Target
83-----------------------------
84
85 During this release ...
86
Matt Arsenaultcee02cc2016-01-26 04:29:15 +000087Changes to the AMDGPU Target
88-----------------------------
89
90 * Mesa 11.0.x is no longer supported
91
NAKAMURA Takumi9ec6a822015-12-21 02:37:23 +000092
Peter Zotovd1136292015-01-13 09:48:02 +000093Changes to the OCaml bindings
94-----------------------------
95
Hans Wennborgef818c12015-01-14 18:07:30 +000096 During this release ...
Peter Zotovd1136292015-01-13 09:48:02 +000097
Rafael Espindola434e9562015-12-16 23:16:33 +000098
Hans Wennborg469822e2016-01-13 17:32:32 +000099External Open Source Projects Using LLVM 3.9
Pekka Jaaskelainenb531a112013-05-03 07:37:04 +0000100============================================
101
102An exciting aspect of LLVM is that it is used as an enabling technology for
103a lot of other language and tools projects. This section lists some of the
Hans Wennborg469822e2016-01-13 17:32:32 +0000104projects that have already been updated to work with LLVM 3.9.
Rafael Espindolabd334e22014-08-22 21:57:38 +0000105
106* A project
Kai Nackeec6e3922013-11-14 05:57:40 +0000107
108
Dmitri Gribenko38782b82012-12-09 23:14:26 +0000109Additional Information
110======================
111
112A wide variety of additional information is available on the `LLVM web page
113<http://llvm.org/>`_, in particular in the `documentation
114<http://llvm.org/docs/>`_ section. The web page also contains versions of the
115API documentation which is up-to-date with the Subversion version of the source
116code. You can access versions of these documents specific to this release by
117going into the ``llvm/docs/`` directory in the LLVM tree.
118
119If you have any questions or comments about LLVM, please feel free to contact
120us via the `mailing lists <http://llvm.org/docs/#maillist>`_.
121