<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style id="owaParaStyle" type="text/css">P {margin-top:0;margin-bottom:0;}</style>
</head>
<body ocsi="0" fpstyle="1" bgcolor="#FFFFFF">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Hi Jin Huang,<br>
<br>
The updated Giri code is available at <a href="https://github.com/liuml07/giri." target="_blank">
https://github.com/liuml07/giri</a>. This will give you an idea of how to instrument the program to trace different values. You can modify the code to achieve your goals.<br>
<br>
-Swarup.<br>
<br>
<div style="font-family: Times New Roman; color: #000000; font-size: 16px">
<hr tabindex="-1">
<div style="direction: ltr;" id="divRpF262393"><font color="#000000" face="Tahoma" size="2"><b>From:</b> Criswell, John T<br>
<b>Sent:</b> Thursday, January 02, 2014 2:12 PM<br>
<b>To:</b> Jin Huang; llvmdev@cs.uiuc.edu; Sahoo, Swarup Kumar<br>
<b>Subject:</b> Re: [LLVMdev] Tracing values in llvm IR<br>
</font><br>
</div>
<div></div>
<div>
<div class="moz-cite-prefix">On 1/1/14 11:39 PM, Jin Huang wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_default" style="font-family:tahoma,sans-serif">Hi, everyone.</div>
<div class="gmail_default" style="font-family:tahoma,sans-serif"><br>
</div>
<div class="gmail_default" style="font-family:tahoma,sans-serif">I want to writing a Pass to get the variable value while the program is running ,the basic idea is to insert an STL map in the program ,and get every value and address a program use ,but whether
 it's possible to do this by transforming the llvm IR?</div>
<div class="gmail_default" style="font-family:tahoma,sans-serif"><br>
</div>
<div class="gmail_default" style="font-family:tahoma,sans-serif">I didn't find any useful functions to get a variable's address in LLVM IR .It seems that the IR is an SSA form and we can not get a value's address in compiling time.Is that right? But how can
 I dynamically get the variable's value in run time by writing a Pass ?</div>
</div>
</blockquote>
<br>
The giri project does dynamic tracing of values stored to and loaded from memory.  It stores the trace of memory accesses on disk because they get very large very quickly.  You can either reuse the Giri code or modify it to suit your purposes.<br>
<br>
Swarup, is there a place where people can download the updated Giri code that your Google Summer of Code student worked on?<br>
<br>
-- John T.<br>
<br>
<blockquote type="cite">
<div dir="ltr"></div>
<br>
<fieldset class="mimeAttachmentHeader" target="_blank"></fieldset> <br>
<pre>_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a class="moz-txt-link-freetext" href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a>
<a class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a>
</pre>
</blockquote>
<br>
</div>
</div>
</div>
</body>
</html>