[PATCH] D65718: [LangRef] Document forward-progress requirement
Sassa Nf via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 10 00:13:51 PDT 2020
sassa.nf added a comment.
> What would be a main benefit for allowing out-of-order execution between instructions having no data dependency in a sequential program?
The same as elimination of dead code. The example that you give has `f(x)` in it, which is an important difference.
My original question was about whether "forward progress guarantee" is a necessary condition.
But actually the language I was thinking of defines program order as the total order, no partial order with data dependencies involved. So I can see now where the "forward progress guarantee" comes in into this optimization: without this guarantee, and without the partial order you can't ignore non-termination, even if you are not observing the loop's outcome (i.e. even if you do not have a data dependency).
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D65718/new/
https://reviews.llvm.org/D65718
More information about the llvm-commits
mailing list