[LLVMdev] Questions !!
Tanu Sharma
tanusharma_04 at yahoo.com
Fri Apr 8 08:37:03 PDT 2005
Thanks a lot Chris.
Regarding basic block size I wish to calculate both:
- The number of bytecode bytes
- The number of machine code bytes for some target?
TS
Chris Lattner <sabre at nondot.org> wrote:
On Thu, 7 Apr 2005, Tanu Sharma wrote:
> Thanks for the reply,
>
> Actually I m aiming towards determining two values:
>
> - number of basic blocks in a program For this I have used Statistic
> facility provided in llvm and increasing the counter for each basic
> block for each function.but for some reason , I m getting different
> number everytime !! Is Statistic is the right way to do it ?
That should work fine. Remember that statistics accumulate across the
whole execution of the tool though, they are not reset per function.
Also, you might want to check out the -instcount pass. It prints BB
counts among other things.
For a small .ll file, it prints:
$ llvm-as < t.ll | analyze -instcount -stats
Printing analysis 'Counts the various types of Instructions' for function
'test':
===-------------------------------------------------------------------------===
... Statistics Collected ...
===-------------------------------------------------------------------------===
1 instcount - Number of Cast insts
1 instcount - Number of Store insts
1 instcount - Number of SetLT insts
1 instcount - Number of Ret insts
1 instcount - Number of memory instructions
1 instcount - Number of non-external functions
1 instcount - Number of basic blocks
4 instcount - Number of instructions (of all types)
> - Average basic block size in a program ( in bytes)
> Any suggestions to make it simple and get an accurate result?
What are you trying to measure? The in-memory footprint of hte LLVM IR?
The number of bytecode bytes? The number of machine code bytes for some
target?
-Chris
>
> Regards,
> Tanu
>
>
> Chris Lattner wrote:
> On Tue, 5 Apr 2005, Tanu Sharma wrote:
>
>> There is tool that calculates execution count and total number of blocks
>> , is there anything available to detemine size of basic blocks in a
>> program in bytes?
>
> Are you talking about native code? If you run the 'size' utility in unix,
> the 'tex' value is the number of bytes of program code. If you're talking
> about llvm code, I'm not sure what you mean "size of basic blocks in a
> program in bytes".
>
> -Chris
>
>
-Chris
--
http://nondot.org/sabre/
http://llvm.cs.uiuc.edu/
_______________________________________________
LLVM Developers mailing list
LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
---------------------------------
Do you Yahoo!?
Make Yahoo! your home page
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20050408/187e3afc/attachment.html>
More information about the llvm-dev
mailing list