diff options
author | Slava Zakharin <szakharin@nvidia.com> | 2025-01-29 12:03:05 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-29 12:03:05 -0800 |
commit | bac95752748a46f3c2e9ebeda67e7df2ea642e07 (patch) | |
tree | 02505c329957ecb907fc1ea94b98014bf0a693c1 /llvm/lib/Object/ELFObjectFile.cpp | |
parent | b8708753c89db07eb6993559b4546e5a97d94530 (diff) | |
download | llvm-bac95752748a46f3c2e9ebeda67e7df2ea642e07.zip llvm-bac95752748a46f3c2e9ebeda67e7df2ea642e07.tar.gz llvm-bac95752748a46f3c2e9ebeda67e7df2ea642e07.tar.bz2 |
[flang] Reset all extents to zero for empty hlfir.elemental loops. (#124867)
An hlfir.elemental with a shape `(0, HUGE)` still runs `HUGE`
number of iterations when expanded into a loop nest.
HLFIR transformational operations inlined as hlfir.elemental
may execute slower comparing to Fortran runtime implementation.
This patch adds an option for BufferizeHLFIR pass to reset all
upper bounds in the elemental loop nests to zero, if the result
is an empty array.
A separate patch will enable this option in the driver after I do
more performance testing. The option is off by default now.
Diffstat (limited to 'llvm/lib/Object/ELFObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions