diff options
author | Philip Reames <listmail@philipreames.com> | 2019-06-17 21:06:17 +0000 |
---|---|---|
committer | Philip Reames <listmail@philipreames.com> | 2019-06-17 21:06:17 +0000 |
commit | 44475363e84a97452f7b510e53a88fb5f7c7b7e6 (patch) | |
tree | 94b47ca5c8af22cc2d76d534c42b8185ce3672bb /lldb/packages/Python/lldbsuite/test/python_api/breakpoint | |
parent | 496f77f3d39cdda6d20305c664fb15b04d11b862 (diff) | |
download | bcm5719-llvm-44475363e84a97452f7b510e53a88fb5f7c7b7e6.tar.gz bcm5719-llvm-44475363e84a97452f7b510e53a88fb5f7c7b7e6.zip |
Teach getSCEVAtScope how to handle loop phis w/invariant operands in loops w/taken backedges
This patch really contains two pieces:
Teach SCEV how to fold a phi in the header of a loop to the value on the backedge when a) the backedge is known to execute at least once, and b) the value is safe to use globally within the scope dominated by the original phi.
Teach IndVarSimplify's rewriteLoopExitValues to allow loop invariant expressions which already exist (and thus don't need new computation inserted) even in loops where we can't optimize away other uses.
Differential Revision: https://reviews.llvm.org/D63224
llvm-svn: 363619
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/breakpoint')
0 files changed, 0 insertions, 0 deletions