aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
diff options
context:
space:
mode:
authorFlorian Hahn <flo@fhahn.com>2023-05-31 16:00:57 +0100
committerFlorian Hahn <flo@fhahn.com>2023-05-31 16:01:00 +0100
commit572cfa3fde5433c889b339e9cfa6dfaa23e5f2ee (patch)
treebd77951dc3324e944e460fd0b3ef28a46480dbe8 /lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
parent4369de7af46605522bf7dbe3bc31d00b0eb4bee6 (diff)
downloadllvm-572cfa3fde5433c889b339e9cfa6dfaa23e5f2ee.zip
llvm-572cfa3fde5433c889b339e9cfa6dfaa23e5f2ee.tar.gz
llvm-572cfa3fde5433c889b339e9cfa6dfaa23e5f2ee.tar.bz2
[LV] Use SCEV for uniformity analysis across VF
This patch uses SCEV to check if a value is uniform across a given VF. The basic idea is to construct SCEVs where the AddRecs of the loop are adjusted to reflect the version in the vectorized loop (Step multiplied by VF). We construct a SCEV for the value of the vector lane 0 (offset 0) compare it to the expressions for lanes 1 to the last vector lane (VF - 1). If they are equal, consider the expression uniform. While re-writing expressions, we also need to catch expressions we cannot determine uniformity (e.g. SCEVUnknown). Reviewed By: Ayal Differential Revision: https://reviews.llvm.org/D148841
Diffstat (limited to 'lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp')
0 files changed, 0 insertions, 0 deletions