================ @@ -218,9 +222,12 @@ void SymbolicEmbedder::computeEmbeddings(const BasicBlock &BB) const { void SymbolicEmbedder::computeEmbeddings() const { if (F.isDeclaration()) return; - for (const auto &BB : F) { - computeEmbeddings(BB); - FuncVector += BBVecMap[&BB]; + + // Consider only the basic blocks that are reachable from entry + ReversePostOrderTraversal<const Function *> RPOT(&F); ---------------- svkeerthy wrote:
Thanks. Seems like constructing RPO is costly. Changed it to DF Traversal. https://github.com/llvm/llvm-project/pull/143476 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits