[PATCH] D118168: [LLVM] Introduce llvm.loop.finite metadata to represent loops which are known to iterate a finite number of times
Roman Lebedev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jan 28 04:32:51 PST 2022
lebedev.ri added a comment.
In D118168#3277166 <https://reviews.llvm.org/D118168#3277166>, @jdoerfert wrote:
> In D118168#3277126 <https://reviews.llvm.org/D118168#3277126>, @wsmoses wrote:
>
>> In D118168#3277051 <https://reviews.llvm.org/D118168#3277051>, @jdoerfert wrote:
>>
>>> I think this is generally sensible but lacks tests and a clear path towards usage. Who will produce the annotation?
>>
>> I think there are several target producers. For example, in here (https://github.com/llvm/llvm-project/issues/51103) an OpenMP for loop can produce it.
>
> Can produce it, maybe yes. Now we should also have that setup or at least planned as we otherwise have no test coverage (esp. given the lack of tests).
Hm, now that i actually did read the spec, no, this absolutely will not help that issue, or any of OpenMP sugar:
https://www.openmp.org/wp-content/uploads/OpenMP-API-Specification-5-2.pdf
12 4.3 Structured Blocks
13 This section specifies the concept of a structured block. A structured block:
14 • may contain infinite loops where the point of exit is never reached;
So helper functions that are used to outline the OpenMP structured block can **not** be `mustprogress`/`willreturn`/`loop.finite`.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D118168/new/
https://reviews.llvm.org/D118168
More information about the llvm-commits
mailing list