<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 5/2/14, 9:49 AM, Petsas Athanasios
wrote:<br>
</div>
<blockquote
cite="mid:CANcSmtztM6UDHTifeBm0rzMEPXzx+BhvDOAgV_q=bcQA3BtN3w@mail.gmail.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<div dir="ltr"><br>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Mon, Apr 28, 2014 at 10:30 PM,
John Criswell <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:criswell@illinois.edu" target="_blank">criswell@illinois.edu</a>></span>
wrote:<br>
<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 Petsas,<br>
<br>
For analyzing indirect function calls, your best bet
is probably to use the CallGraph analysis pass that is
part of DSA. DSA is included in the poolalloc code;
you can get directions on downloading poolalloc from
the SVA web page: <a moz-do-not-send="true"
href="http://sva.cs.illinois.edu/docs/Install.html"
target="_blank">http://sva.cs.illinois.edu/docs/Install.html</a>.<br>
<br>
The release_32 branch works with LLVM 3.2. I think
mainline poolalloc was recently updated to work with
LLVM 3.4.<br>
</div>
</div>
</blockquote>
<div><br>
</div>
<div>Do you know where I can find mainline poolalloc so as I
can compile it with<br>
</div>
<div>LLVM 3.4 ?<br>
</div>
</div>
</div>
</div>
</blockquote>
<br>
svn co <a class="moz-txt-link-freetext" href="http://llvm.org/svn/llvm-project/poolalloc/trunk">http://llvm.org/svn/llvm-project/poolalloc/trunk</a> poolalloc<br>
<br>
Regards,<br>
<br>
John Criswell<br>
<br>
<blockquote
cite="mid:CANcSmtztM6UDHTifeBm0rzMEPXzx+BhvDOAgV_q=bcQA3BtN3w@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div><br>
</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div> <br>
Regards,<br>
<br>
John Criswell
<div>
<div class="h5"><br>
<br>
<br>
On 4/28/14 8:10 AM, Petsas Athanasios wrote:<br>
</div>
</div>
</div>
<blockquote type="cite">
<div>
<div class="h5">
<div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>
<div>Dear all,<br>
<br>
</div>
I would like to keep track of all
the indirect calls that may caused
from function<br>
</div>
pointers inside a program. I need this
in order to be able to construct the
control<br>
</div>
flow graph of all the indirect calls,
that is which function is legal to call
another<br>
</div>
function.<br>
<br>
</div>
Is there a module that implements this
functionality in llvm? If not, is there a
way to<br>
do it? Maybe through implementing a pass. I
am new to llvm. Could you suggest me<br>
</div>
<div>a way to start doing this? Perhaps the
llvm intermediate code can help me on this.<br>
</div>
<div>Do you know where this code is being
produced? or what files or passes do I have<br>
</div>
<div>to modify for this?<br>
<br>
</div>
<div>Until now I have used this command to
produce and study the llvm bitcode for a
test<br>
program:<br>
clang -S -emit-llvm fpointers.c -c -o
fpointers.bc.text<br>
<br>
</div>
<div>Thank you,<br>
</div>
<div><br>
<div>
<div>
<div>
<div>
<div>-- <br>
<font color="#888888"><font
face="Helvetica, Verdana,
Arial"><span
style="font-size:11pt"><font
color="#888888"><span>Thanasis</span>
<span>Petsas</span>
<div> Distributed
Computing Systems (<span>DCS</span>)<br>
Institute of Computer
Science (ICS/FORTH)<br>
Heraklion, Crete<br>
<span>Greece</span> (GR)<br>
<br>
<font color="#888888"><font
face="Helvetica,
Verdana, Arial"><span
style="font-size:11pt"><font color="#888888"><a moz-do-not-send="true"
href="http://www.thanasispetsas.com/"
target="_blank">http://www.thanasispetsas.com/</a></font></span></font></font><br>
</div>
</font></span></font></font>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br>
<fieldset></fieldset>
<br>
</div>
</div>
<div class="">
<pre>_______________________________________________
LLVM Developers mailing list
<a moz-do-not-send="true" href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a> <a moz-do-not-send="true" href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a>
<a moz-do-not-send="true" href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a>
</pre>
</div>
</blockquote>
<br>
</div>
</blockquote>
</div>
<br>
<br clear="all">
<br>
-- <br>
<font color="#888888"><font face="Helvetica, Verdana, Arial"><span
style="font-size:11pt"><font color="#888888"><span>Thanasis</span>
<span>Petsas</span>
<div>
Distributed Computing Systems (<span>DCS</span>)<br>
Institute of Computer Science (ICS/FORTH)<br>
Heraklion, Crete<br>
<span>Greece</span> (GR)<br>
<br>
<font color="#888888"><font face="Helvetica,
Verdana, Arial"><span style="font-size:11pt"><font
color="#888888"><a moz-do-not-send="true"
href="http://www.thanasispetsas.com/"
target="_blank">http://www.thanasispetsas.com/</a></font></span></font></font><br>
</div>
</font></span></font></font>
</div>
</div>
</blockquote>
<br>
</body>
</html>