summaryrefslogtreecommitdiff
path: root/docs/ReleaseNotes.rst
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-01-22 16:52:41 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-01-22 16:52:41 +0000
commit5df539a1004bc4db5c38b33ba3e219595a10ae3c (patch)
tree8f7162c2eeb96f9bef560b568c3a039187a31953 /docs/ReleaseNotes.rst
parentd2e0a8dd949ab874c6d66f97106bd5c270e2fa7d (diff)
Notes
Diffstat (limited to 'docs/ReleaseNotes.rst')
-rw-r--r--docs/ReleaseNotes.rst27
1 files changed, 27 insertions, 0 deletions
diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst
index 5b035cd3320f..25ea577ba519 100644
--- a/docs/ReleaseNotes.rst
+++ b/docs/ReleaseNotes.rst
@@ -46,8 +46,35 @@ Major New Features
clang to emit a warning or error if a function call meets one or more
user-specified conditions.
+- Enhanced devirtualization with
+ `-fstrict-vtable-pointers <UsersManual.html#cmdoption-fstrict-vtable-pointers>`_.
+ Clang devirtualizes across different basic blocks, like loops:
+
+ .. code-block:: c++
+
+ struct A {
+ virtual void foo();
+ };
+ void indirect(A &a, int n) {
+ for (int i = 0 ; i < n; i++)
+ a.foo();
+ }
+ void test(int n) {
+ A a;
+ indirect(a, n);
+ }
+
+
- ...
+Improvements to ThinLTO (-flto=thin)
+------------------------------------
+- Integration with profile data (PGO). When available, profile data enables
+ more accurate function importing decisions, as well as cross-module indirect
+ call promotion.
+- Significant build-time and binary-size improvements when compiling with debug
+ info (-g).
+
Improvements to Clang's diagnostics
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^