diff options
| author | Alina Sbirlea <asbirlea@google.com> | 2019-10-16 21:52:09 +0000 | 
|---|---|---|
| committer | Alina Sbirlea <asbirlea@google.com> | 2019-10-16 21:52:09 +0000 | 
| commit | c0e6a92e34d151ae70155a113e0fa65cc0f25034 (patch) | |
| tree | cb024880654342a1250e1eab51da7676f2620102 /llvm | |
| parent | 8cdc842c51626b94fc20af604f640f6f195eeadb (diff) | |
| download | bcm5719-llvm-c0e6a92e34d151ae70155a113e0fa65cc0f25034.tar.gz bcm5719-llvm-c0e6a92e34d151ae70155a113e0fa65cc0f25034.zip  | |
Update ReleaseNotes: expand the section on enabling MemorySSA
llvm-svn: 375045
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/docs/ReleaseNotes.rst | 15 | 
1 files changed, 14 insertions, 1 deletions
diff --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst index 5899cb867ec..796b0524e0f 100644 --- a/llvm/docs/ReleaseNotes.rst +++ b/llvm/docs/ReleaseNotes.rst @@ -41,7 +41,20 @@ Non-comprehensive list of changes in this release     for adding a new subsection.  * The ISD::FP_ROUND_INREG opcode and related code was removed from SelectionDAG. -* Enabled MemorySSA as a loop dependency. +* Enabled MemorySSA as a loop dependency. Since +  `r370957 <https://reviews.llvm.org/rL370957>`_ +  (`D58311 <https://reviews.llvm.org/D58311>`_ ``[MemorySSA & LoopPassManager] +  Enable MemorySSA as loop dependency. Update tests.``), the MemorySSA analysis +  is being preserved and used by a series of loop passes. The most significant +  use is in LICM, where the instruction hoisting and sinking relies on aliasing +  information provided by MemorySSA vs previously creating an AliasSetTracker. +  The LICM step of promoting variables to scalars still relies on the creation +  of an AliasSetTracker, but its use is reduced to only be enabled for loops +  with a small number of overall memory instructions. This choice was motivated +  by experimental results showing compile and run time benefits or replacing the +  AliasSetTracker usage with MemorySSA without any performance penalties. +  The fact that MemorySSA is now preserved by and available in a series of loop +  passes, also opens up opportunities for its use in those respective passes.  .. NOTE     If you would like to document a larger change, then you can add a  | 

