[llvm-dev] How to count instructions in a function? (original) (raw)

John Criswell via llvm-dev llvm-dev at lists.llvm.org
Thu Nov 30 09:33:52 PST 2017


Dear Zubin,

If I were you, I would write a ModulePass that uses the CallGraph analysis to get a call graph. I would then iterate over the nodes in the call graph and propagate information from callees to callers.

Regards,

John Criswell

On 11/29/17 4:02 PM, Zubin Pahuja via llvm-dev wrote:

Hello,

I am trying to count IR instructions in a function for static analysis using llvm pass. In contrast with existing examples, I am trying to include instruction counts of all the callees of the function. Counting the instructions of a function is easy using passes, but iterating through the module's CallGraph is proving to be confusing. I believe I have to use CallGraphWrapperPass to get both module pass and its CallGraph. How do I iterate through the CallGraph in runOnModule()? A simple print callee names example would be highly appreciated. Thanks, Zubin


LLVM Developers mailing list llvm-dev at lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

-- John Criswell Assistant Professor Department of Computer Science, University of Rochester http://www.cs.rochester.edu/u/criswell

-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171130/642682ff/attachment.html>



More information about the llvm-dev mailing list