diff options
| author | wren romano <2998727+wrengr@users.noreply.github.com> | 2022-12-01 18:29:22 -0800 |
|---|---|---|
| committer | wren romano <2998727+wrengr@users.noreply.github.com> | 2022-12-02 11:13:36 -0800 |
| commit | 1dfb9a64f1f0fd24eefb19a2ed0b1ae3039db413 (patch) | |
| tree | 7da00d8628ee37a212347b791bc3da9afb9b7565 /llvm/lib/ProfileData/Coverage/CoverageMapping.cpp | |
| parent | 0d588347000bd8245b8a1824758c6ed005ae5bce (diff) | |
| download | llvm-1dfb9a64f1f0fd24eefb19a2ed0b1ae3039db413.zip llvm-1dfb9a64f1f0fd24eefb19a2ed0b1ae3039db413.tar.gz llvm-1dfb9a64f1f0fd24eefb19a2ed0b1ae3039db413.tar.bz2 | |
[mlir][sparse] LICM for SparseTensorReader::readCOO
This commit performs two related changes. First we adjust `readCOOValue` to take the `IsPattern` bool as a template parameter rather than a function argument. Second we factor `readCOOLoop` out from `readCOO`, and template it on `IsPattern` and `IsSymmetric`. Together this moves all the assertions and header-dependent conditionals out of the main for-loop of `readCOO`. The only remaining conditional is in the `IsSymmetric=true` variant: checking whether the element is on the diagonal or not (which cannot be lifted out of the loop).
Depends On D138363
Reviewed By: aartbik
Differential Revision: https://reviews.llvm.org/D138365
Diffstat (limited to 'llvm/lib/ProfileData/Coverage/CoverageMapping.cpp')
0 files changed, 0 insertions, 0 deletions
