blob: eb4ec2857f68df767db6ea557d8d120edf7a0927 [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
Amaury Sechet2ffde012016-02-16 00:22:02 +000045* The C API function LLVMAddTargetData has been removed.
46
Sean Silva1eab30d2013-01-20 03:29:50 +000047.. NOTE
48 For small 1-3 sentence descriptions, just add an entry at the end of
49 this list. If your description won't fit comfortably in one bullet
50 point (e.g. maybe you would like to give an example of the
51 functionality, or simply have a lot to talk about), see the `NOTE` below
52 for adding a new subsection.
Dmitri Gribenko38782b82012-12-09 23:14:26 +000053
Sean Silva1eab30d2013-01-20 03:29:50 +000054* ... next change ...
Dmitri Gribenko38782b82012-12-09 23:14:26 +000055
Sean Silva1eab30d2013-01-20 03:29:50 +000056.. NOTE
57 If you would like to document a larger change, then you can add a
58 subsection about it right here. You can copy the following boilerplate
59 and un-indent it (the indentation causes it to be inside this comment).
Dmitri Gribenko38782b82012-12-09 23:14:26 +000060
Sean Silva1eab30d2013-01-20 03:29:50 +000061 Special New Feature
62 -------------------
Dmitri Gribenko38782b82012-12-09 23:14:26 +000063
Sean Silva1eab30d2013-01-20 03:29:50 +000064 Makes programs 10x faster by doing Special New Thing.
Dmitri Gribenko38782b82012-12-09 23:14:26 +000065
Renato Golin7c9d0502014-03-18 10:16:15 +000066Changes to the ARM Backend
67--------------------------
68
Rafael Espindolabd334e22014-08-22 21:57:38 +000069 During this release ...
Renato Golin7c9d0502014-03-18 10:16:15 +000070
Renato Golin7c9d0502014-03-18 10:16:15 +000071
Daniel Sandersa4d18fc2014-07-23 12:59:26 +000072Changes to the MIPS Target
73--------------------------
74
Hans Wennborgef818c12015-01-14 18:07:30 +000075 During this release ...
Daniel Sanders1bcd70e2015-01-11 10:34:52 +000076
Daniel Sandersa4d18fc2014-07-23 12:59:26 +000077
Bill Schmidt40049892014-07-31 14:38:17 +000078Changes to the PowerPC Target
Bill Schmidt08616c72014-07-31 15:20:30 +000079-----------------------------
Bill Schmidt40049892014-07-31 14:38:17 +000080
Hans Wennborgef818c12015-01-14 18:07:30 +000081 During this release ...
Bill Schmidta2dece22015-01-12 20:46:43 +000082
Bill Schmidt40049892014-07-31 14:38:17 +000083
NAKAMURA Takumi9ec6a822015-12-21 02:37:23 +000084Changes to the X86 Target
85-----------------------------
86
87 During this release ...
88
Matt Arsenaultcee02cc2016-01-26 04:29:15 +000089Changes to the AMDGPU Target
90-----------------------------
91
92 * Mesa 11.0.x is no longer supported
93
NAKAMURA Takumi9ec6a822015-12-21 02:37:23 +000094
Peter Zotovd1136292015-01-13 09:48:02 +000095Changes to the OCaml bindings
96-----------------------------
97
Hans Wennborgef818c12015-01-14 18:07:30 +000098 During this release ...
Peter Zotovd1136292015-01-13 09:48:02 +000099
Rafael Espindola434e9562015-12-16 23:16:33 +0000100
Hans Wennborg469822e2016-01-13 17:32:32 +0000101External Open Source Projects Using LLVM 3.9
Pekka Jaaskelainenb531a112013-05-03 07:37:04 +0000102============================================
103
104An exciting aspect of LLVM is that it is used as an enabling technology for
105a lot of other language and tools projects. This section lists some of the
Hans Wennborg469822e2016-01-13 17:32:32 +0000106projects that have already been updated to work with LLVM 3.9.
Rafael Espindolabd334e22014-08-22 21:57:38 +0000107
108* A project
Kai Nackeec6e3922013-11-14 05:57:40 +0000109
110
Dmitri Gribenko38782b82012-12-09 23:14:26 +0000111Additional Information
112======================
113
114A wide variety of additional information is available on the `LLVM web page
115<http://llvm.org/>`_, in particular in the `documentation
116<http://llvm.org/docs/>`_ section. The web page also contains versions of the
117API documentation which is up-to-date with the Subversion version of the source
118code. You can access versions of these documents specific to this release by
119going into the ``llvm/docs/`` directory in the LLVM tree.
120
121If you have any questions or comments about LLVM, please feel free to contact
122us via the `mailing lists <http://llvm.org/docs/#maillist>`_.
123