aboutsummaryrefslogtreecommitdiff
path: root/lldb/test/Shell/ScriptInterpreter/Python/Crashlog
diff options
context:
space:
mode:
authorPhilip Reames <listmail@philipreames.com>2021-10-05 11:15:35 -0700
committerPhilip Reames <listmail@philipreames.com>2021-10-05 11:20:48 -0700
commitc608b49d67e0c22cc3537569f76af500097cd3b4 (patch)
tree2561cff1c28b501ae5546c5df12c49df74bf0923 /lldb/test/Shell/ScriptInterpreter/Python/Crashlog
parentb8ffcb12e2ed52e080532586ae1ed4e6f9e47b70 (diff)
downloadllvm-c608b49d67e0c22cc3537569f76af500097cd3b4.zip
llvm-c608b49d67e0c22cc3537569f76af500097cd3b4.tar.gz
llvm-c608b49d67e0c22cc3537569f76af500097cd3b4.tar.bz2
[SCEV] Tweak the algorithm for figuring out if flags must apply to a SCEV [mostly-NFC]
Behavior wise, this patch should be mostly NFC. The only behavior difference known is that on the isSCEVExprNeverPoison path we'll consider a bound imposed by the SCEVable operands (if any). Algorithmically, it's an invert of the existing code. Previously, we checked for each operand if we could find a bound, then checked for must-execute given that bound. With the patch, we use dominance to refine the innermost bound, then check must execute once. The interesting case is when we have multiple unknowns within a single basic block. While both dominance and must-execute are worst-case linear walks within the block, only dominance is cached. As such, refining based on dominance should be more efficient.
Diffstat (limited to 'lldb/test/Shell/ScriptInterpreter/Python/Crashlog')
0 files changed, 0 insertions, 0 deletions