[PATCH] D69370: [LICM] Invalidate SCEV upon instruction hoisting

Daniil Suchkov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 24 02:32:44 PDT 2019


DaniilSuchkov created this revision.
DaniilSuchkov added reviewers: asbirlea, mkazantsev, reames.
Herald added subscribers: llvm-commits, javed.absar, hiraditya.
Herald added a project: LLVM.
DaniilSuchkov added a parent revision: D69369: [NFC] Add a unit test exposing lack of SCEV invalidation in LICM during code hoisting.

Since SCEV can cache information about location of an instruction, it should be invalidated when the instruction is moved.
There should be similar bug in code sinking part of LICM, it will be fixed in a follow-up change.


https://reviews.llvm.org/D69370

Files:
  llvm/include/llvm/Transforms/Utils/LoopUtils.h
  llvm/lib/Transforms/Scalar/LICM.cpp
  llvm/unittests/Transforms/Scalar/LICMTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D69370.226215.patch
Type: text/x-patch
Size: 7505 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191024/7ce47ceb/attachment.bin>


More information about the llvm-commits mailing list