diff options
author | Thomas Preud'homme <thomasp@graphcore.ai> | 2022-03-29 10:12:35 +0100 |
---|---|---|
committer | Thomas Preud'homme <thomasp@graphcore.ai> | 2022-03-29 11:44:10 +0100 |
commit | f1d8e46258c6a08ca1a375dc9670dd5581d6cf65 (patch) | |
tree | 1f24d611fbe136e478e1276d53464a2dd740a7f9 /clang/lib/Frontend/InitPreprocessor.cpp | |
parent | 7bc8ad5109eb955b8da9b279955bae098e1bd669 (diff) | |
download | llvm-f1d8e46258c6a08ca1a375dc9670dd5581d6cf65.zip llvm-f1d8e46258c6a08ca1a375dc9670dd5581d6cf65.tar.gz llvm-f1d8e46258c6a08ca1a375dc9670dd5581d6cf65.tar.bz2 |
Clarify invariants of software pipelining hooks
PowerPC backend relies on each pair of prologue/epilogue of a software
pipelined loop to correspond to a single iteration a the loop through
its use of the BDZ instruction to skip inner prologues/epilogues and
loop kernel. However the interface does not make it clear that it is a
valid way to check that the trip count is big enough to execute inner
prologues/epilogues and kernel loop.
The API also does not specify in which order of prologues the
createTripCountGreaterCondition() hook is being called. Knowing that it
starts with the last/innermost prologues can help recording some
information when createTripCountGreaterCondition() is first executed and
reuse it in setPreheader() or adjustTripCount().
This commit documents both aspects.
Reviewed By: jmolloy
Differential Revision: https://reviews.llvm.org/D122642
Diffstat (limited to 'clang/lib/Frontend/InitPreprocessor.cpp')
0 files changed, 0 insertions, 0 deletions