projects
/
platform
/
upstream
/
llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c8d1388
)
[LICM] Only forget loop/block dispositions
author
Nikita Popov
<npopov@redhat.com>
Tue, 25 Apr 2023 07:57:39 +0000
(09:57 +0200)
committer
Nikita Popov
<npopov@redhat.com>
Tue, 25 Apr 2023 07:58:31 +0000
(09:58 +0200)
As we are moving the instruction without changing its value, it
is sufficient to only invalidate the loop/block dispositions.
This is the same we do in LoopSink.
llvm/lib/Transforms/Scalar/LICM.cpp
patch
|
blob
|
history
diff --git
a/llvm/lib/Transforms/Scalar/LICM.cpp
b/llvm/lib/Transforms/Scalar/LICM.cpp
index
5a19451
..
a498a7c
100644
(file)
--- a/
llvm/lib/Transforms/Scalar/LICM.cpp
+++ b/
llvm/lib/Transforms/Scalar/LICM.cpp
@@
-1518,7
+1518,7
@@
static void moveInstructionBefore(Instruction &I, Instruction &Dest,
MSSAU.getMemorySSA()->getMemoryAccess(&I)))
MSSAU.moveToPlace(OldMemAcc, Dest.getParent(), MemorySSA::BeforeTerminator);
if (SE)
- SE->forget
Value
(&I);
+ SE->forget
BlockAndLoopDispositions
(&I);
}
static Instruction *sinkThroughTriviallyReplaceablePHI(