[all-commits] [llvm/llvm-project] 7bdc83: [LICM] Don't cache AliasSetTrackers when run under...
Daniil Suchkov via All-commits
all-commits at lists.llvm.org
Tue Jan 21 22:18:42 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 7bdc83f34016bb0288f7af6fffa244bfeb285d04
https://github.com/llvm/llvm-project/commit/7bdc83f34016bb0288f7af6fffa244bfeb285d04
Author: Daniil Suchkov <suc-daniil at yandex.ru>
Date: 2020-01-22 (Wed, 22 Jan 2020)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
Log Message:
-----------
[LICM] Don't cache AliasSetTrackers when run under legacy PM
Summary:
This is the first step towards complete removal of AST caching from
LICM. Attempts to keep LICM's AST cache up to date across passes can lead
to miscompiles like this one: https://bugs.llvm.org/show_bug.cgi?id=44320.
LICM has already switched to using MemorySSA to do sinking and hoisting
and only builds an AliasSetTracker on demand for the promoteToScalars
step, without caching it from one LICM instance to the next. Given this,
we don't have compile-time reasons to keep AST caching any more.
The only scenario where the caching would be used currently is when
using the LegacyPassManager and setting -enable-mssa-loop-dependency=false.
This switch should help us to surface any possible issues that may arise
along this way, also it turns subsequent removal of AST caching into NFC.
Reviewers: asbirlea, fhahn, efriedma, reames
Reviewed By: asbirlea
Subscribers: hiraditya, george.burgess.iv, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D73081
More information about the All-commits
mailing list