<p dir="ltr">hey john, </p>
<p dir="ltr">yes indeed, that's what I'm trying, retreiving the values of %a and %b in an LLVM pass, sorry about the confusion. </p>
<div class="gmail_quote">On Apr 24, 2016 7:18 AM, "John Criswell" <<a href="mailto:jtcriswel@gmail.com">jtcriswel@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>Dear Ammar,<br>
<br>
It is not clear what you are asking. %a and %b in your code below
are not constants; there is no way, at compile time, to determine
what numeric values they will hold at run-time.<br>
<br>
Are you asking how to write an LLVM pass that will add code to
summ() to print out its result?<br>
<br>
Regards,<br>
<br>
John Criswell <br>
<br>
On 4/24/16 2:27 AM, Ammar Naqvi via llvm-dev wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">Hello Everyone,<br>
<br>
I need some help in retrieving the numeric value of an
instruction operand from LLVM IR.
<div><br>
</div>
<div>this is what the IR looks like for a simple add function
that adds two i32 integers</div>
<div>
<div><br>
</div>
<div>define i32 @summ(i32 %a, i32 %b) #0 {</div>
<div>entry:</div>
<div> %add = add nsw i32 %b, %a</div>
<div> ret i32 %add</div>
<div>}</div>
</div>
<div><br>
</div>
<div>i would like to know the integer value of %a and %b.<br>
<br>
I've tried </div>
<div><br>
</div>
<div>-i->getOpcodeName() which gives me the string add</div>
<div><br>
</div>
<div>-i->getOperand(0) which gives me the string i32 %b<br>
</div>
<div><br>
</div>
-i->getOperand(0)->getName() which gives me the string a
<div><br>
</div>
<div>what method exists to get the actual integer value of the
operands?</div>
<div>for example we called summ(1,2), how to retrieve the values
1 and 2 held in the operands?<br>
<br>
Any help and guidance is greatly appreciated! :)<br>
<br>
Best,<br>
Ammar</div>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
LLVM Developers mailing list
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a>
</pre>
</blockquote>
<br>
<br>
<pre cols="72">--
John Criswell
Assistant Professor
Department of Computer Science, University of Rochester
<a href="http://www.cs.rochester.edu/u/criswell" target="_blank">http://www.cs.rochester.edu/u/criswell</a></pre>
</div>
</blockquote></div>