[LLVMdev] Dynamic Profiling - Instrumentation basic query

John Criswell criswell at illinois.edu
Tue Jan 22 10:58:15 PST 2013


On 1/22/13 12:50 PM, Sahoo, Swarup Kumar wrote:
> Oh, OK. I didn't check the code. I think it only contains your flow tracking analysis code, isn't it.
>
> Our 'Giri' project was completely separate from it. Should we merge it with this or keep it as a separate project?

My intention was to have a project called "giri" that contained both the 
static slicing code that I wrote plus the dynamic slicing code 
(currently named "giri") that we wrote.  I put the static slicing code 
into the public project, but the dynamic slicing code is still on the 
TODO list.

-- John T.


>
> -Swarup.
> ________________________________________
> From: John Criswell [criswell at illinois.edu]
> Sent: Tuesday, January 22, 2013 12:12 PM
> To: Sahoo, Swarup Kumar
> Cc: Silky Arora; llvmdev at cs.uiuc.edu
> Subject: Re: [LLVMdev] Dynamic Profiling - Instrumentation basic query
>
> On 1/22/13 12:07 PM, Sahoo, Swarup Kumar wrote:
>> Hi John and Silky,
>>
>>       I can see a copy of 'giri' slicing project branch here http://llvm.org/viewvc/llvm-project/giri/. Though it may be little older, it will work I think. You can look at the code to see how we do the instrumentation.
> The giri project is supposed to contain both the static slicing code and
> the dynamic slicing code.  It looks like all it contains at present is
> the static slicing code.  At some point, the dynamic slicing code needs
> to be integrated into it.
>
> -- John T.
>
>> Thanks,
>> Swarup.
>>
>> ________________________________________
>> From: John Criswell [criswell at illinois.edu]
>> Sent: Tuesday, January 22, 2013 10:29 AM
>> To: Silky Arora; llvmdev at cs.uiuc.edu; Sahoo, Swarup Kumar
>> Subject: Re: [LLVMdev] Dynamic Profiling - Instrumentation basic query
>>
>> On 1/13/13 11:06 PM, Criswell, John T wrote:
>>> There is code that does this for older versions of LLVM.  I believe it is in the giri project in the LLVM SVN repository.  I can look into more details when I get back from vacation. Swarup may also be able to provide information on the giri code.
>> I took a quick look, and the dynamic slicing code doesn't appear to be
>> checked into the giri project yet like I had originally thought.
>>
>> We can, however, give you a copy of the code if you would like. However,
>> having looked at other emails in the thread, I'm not sure if it's what
>> you want.  Our dynamic slicing code only instruments LLVM IR loads and
>> stores; it does not instrument memory accesses caused by stack spill
>> slots, function argument setup, etc. (these are only visible at the code
>> generation IR level).
>>
>> If instrumenting LLVM IR loads and stores suffices, and if you'd like a
>> copy of our code, please let me know.
>>
>> -- John T.
>>
>>
>>> -- John T.
>>>
>>> ________________________________________
>>> From: llvmdev-bounces at cs.uiuc.edu [llvmdev-bounces at cs.uiuc.edu] on behalf of Silky Arora [silkyar at umich.edu]
>>> Sent: Saturday, January 12, 2013 10:28 PM
>>> To: llvmdev at cs.uiuc.edu
>>> Subject: [LLVMdev] Dynamic Profiling - Instrumentation basic query
>>>
>>> Hi,
>>>
>>> I am new to LLVM, and would like to write a dynamic profiler, say which prints out the load address of all the load instructions encountered in a program.
>>>    From what I could pick up, edge-profiler.cpp increments a counter dynamically which is somehow dumped onto llvmprof.out by profile.pl
>>>
>>> Could anyone explain me how this works? Can I instrument the code to dump out the load addresses or other such information to a file?
>>>
>>> Thanks!
>>>
>>>
>>>
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>




More information about the llvm-dev mailing list