From: Matt Arsenault Date: Tue, 17 Jan 2023 00:41:49 +0000 (-0500) Subject: llvm-reduce: Account for aliases and ifuncs in IR complexity score X-Git-Tag: upstream/17.0.6~20350 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a6000c143b6d088c3d1cf3a11719319a8655f1ab;p=platform%2Fupstream%2Fllvm.git llvm-reduce: Account for aliases and ifuncs in IR complexity score --- 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);