From 663a1938ad0e0690644a2b0c57dcc4129a87cc62 Mon Sep 17 00:00:00 2001 From: Philip Reames Date: Mon, 5 Aug 2019 22:34:59 +0000 Subject: [PATCH] Add a note to the release not about a potentially breaking optimization This has come up twice already (once in pr42763 and once in the commit thread), so give warning of a new way in which UB can result in unexpected program behavior. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@367941 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/ReleaseNotes.rst | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst index 7b7972f3187..494efd4a65e 100644 --- a/docs/ReleaseNotes.rst +++ b/docs/ReleaseNotes.rst @@ -50,6 +50,19 @@ Non-comprehensive list of changes in this release Makes programs 10x faster by doing Special New Thing. +Noteworthy optimizations +------------------------ + +* LLVM will now remove stores to constant memory (since this is a + contradiction) under the assumption the code in question must be dead. This + has proven to be problematic for some C/C++ code bases which expect to be + able to cast away 'const'. This is (and has always been) undefined + behavior, but up until now had not been actively utilized for optimization + purposes in this exact way. For more information, please see: + `bug 42763 _` and + `post commit discussion _`. + + Changes to the LLVM IR ---------------------- -- 2.40.0