aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/LoopVersioning.cpp
diff options
context:
space:
mode:
authorMehdi Amini <joker.eph@gmail.com>2020-09-22 00:51:27 +0000
committerMehdi Amini <joker.eph@gmail.com>2020-09-22 18:51:54 +0000
commitfb1de7ed921c3c1531c0cb28b9603af22ecd0529 (patch)
tree8b69f18f9b12fb31fa02d155aaf5ddba3dcb3792 /llvm/lib/Transforms/Utils/LoopVersioning.cpp
parentb289dc530632613edb3eb067895c1981cb77ccd0 (diff)
downloadllvm-fb1de7ed921c3c1531c0cb28b9603af22ecd0529.zip
llvm-fb1de7ed921c3c1531c0cb28b9603af22ecd0529.tar.gz
llvm-fb1de7ed921c3c1531c0cb28b9603af22ecd0529.tar.bz2
Implement a new kind of Pass: dynamic pass pipeline
Instead of performing a transformation, such pass yields a new pass pipeline to run on the currently visited operation. This feature can be used for example to implement a sub-pipeline that would run only on an operation with specific attributes. Another example would be to compute a cost model and dynamic schedule a pipeline based on the result of this analysis. Discussion: https://llvm.discourse.group/t/rfc-dynamic-pass-pipeline/1637 Recommit after fixing an ASAN issue: the callback lambda needs to be allocated to a temporary to have its lifetime extended to the end of the current block instead of just the current call expression. Reviewed By: silvas Differential Revision: https://reviews.llvm.org/D86392
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopVersioning.cpp')
0 files changed, 0 insertions, 0 deletions