[all-commits] [llvm/llvm-project] 33ce97: [SLP] Use BatchAA to reduce capture analysis cost ...
Philip Reames via All-commits
all-commits at lists.llvm.org
Sun Feb 27 09:47:44 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 33ce97f4137831537ace53dfe105c4300811b1e8
https://github.com/llvm/llvm-project/commit/33ce97f4137831537ace53dfe105c4300811b1e8
Author: Philip Reames <listmail at philipreames.com>
Date: 2022-02-27 (Sun, 27 Feb 2022)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] Use BatchAA to reduce capture analysis cost [NFC]
SLP makes very heavy use of aliasing queries to construct pointer dependencies for scheduling purposes. AA internally usings pointerMayBeCaptured to prove some noalias results. In a local profile, we were spending about 4% of total O2 time in capture tracking. By using BatchAA interface - which caches capture results - this drops to 2%.
Note that there is no invalidation of BatchAA here. This assumes that no transformation done by SLP invalidates alias or capture results. This is the same assumption made by the existing AliasCache, so this is not a new assumption in the code.
More information about the All-commits
mailing list