diff options
author | Mircea Trofin <mtrofin@google.com> | 2021-11-11 10:23:40 -0800 |
---|---|---|
committer | Mircea Trofin <mtrofin@google.com> | 2021-11-11 10:23:49 -0800 |
commit | f64eee162525d6298014772d5f99ab28b26aa238 (patch) | |
tree | 1dcd5afcd88536844cf2b536e48f1ae14f469b7f /clang/lib/CodeGen/CodeGenModule.h | |
parent | 8d2a1994c89864e8757a192db34c8c91ab54eeda (diff) | |
download | llvm-f64eee162525d6298014772d5f99ab28b26aa238.zip llvm-f64eee162525d6298014772d5f99ab28b26aa238.tar.gz llvm-f64eee162525d6298014772d5f99ab28b26aa238.tar.bz2 |
[NFC][InlineAdvisor] Inform advisor when the module is invalidated
This avoids unnecessary re-calculation of module-wide features in the
MLInlineAdvisor. In cases where function passes don't invalidate
functions (and, thus, don't invalidate the module), but we re-process a
CGSCC, we currently refreshed module features unnecessarily. The
overhead of fetching cached results (albeit they weren't themselves
invalidated) was noticeable in certain modules' compilations.
We don't want to just invalidate the advisor object, though, via the
analysis manager, because we'd then need to re-create expensive state
(like the model evaluator in the ML 'development' mode).
Reviewed By: phosek
Differential Revision: https://reviews.llvm.org/D113644
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.h')
0 files changed, 0 insertions, 0 deletions