aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-reduce/ReducerWorkItem.cpp
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2023-01-16 19:41:49 -0500
committerMatt Arsenault <arsenm2@gmail.com>2023-01-19 21:35:27 -0400
commita6000c143b6d088c3d1cf3a11719319a8655f1ab (patch)
treee399313f9ba3f9bc18cbc7de105ee0bea513fff1 /llvm/tools/llvm-reduce/ReducerWorkItem.cpp
parent23cc36e4765912a1bcdbbc3fb8b0976a06dea043 (diff)
downloadllvm-a6000c143b6d088c3d1cf3a11719319a8655f1ab.zip
llvm-a6000c143b6d088c3d1cf3a11719319a8655f1ab.tar.gz
llvm-a6000c143b6d088c3d1cf3a11719319a8655f1ab.tar.bz2
llvm-reduce: Account for aliases and ifuncs in IR complexity score
Diffstat (limited to 'llvm/tools/llvm-reduce/ReducerWorkItem.cpp')
-rw-r--r--llvm/tools/llvm-reduce/ReducerWorkItem.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/tools/llvm-reduce/ReducerWorkItem.cpp b/llvm/tools/llvm-reduce/ReducerWorkItem.cpp
index a608f6f..635bd7e 100644
--- a/llvm/tools/llvm-reduce/ReducerWorkItem.cpp
+++ b/llvm/tools/llvm-reduce/ReducerWorkItem.cpp
@@ -715,6 +715,12 @@ uint64_t ReducerWorkItem::computeIRComplexityScore() const {
GlobalMetadata.clear();
}
+ for (const GlobalAlias &GA : M.aliases())
+ Score += classifyReductivePower(GA.getAliasee());
+
+ for (const GlobalIFunc &GI : M.ifuncs())
+ Score += classifyReductivePower(GI.getResolver());
+
for (const Function &F : M)
Score += computeIRComplexityScoreImpl(F);