I didn't get much time to work on it after that. Today, I had a look at it. I included a workaround for that weird marco incompatibility error between LLVM and wxWidgets. I just commented out the line - "#define _(s)   wxGetTranslation(wxT(s))" in wx/intl.h and it built successfully.<div>
<br></div><div>I fixed issues with lib/Snapshot/WriteSnapshot.cpp. Now opt-snap tool can capture snapshots.</div><div><br></div><div>If I run llvm-tv.exe without any snapshots in the <span style="font-family:monospace;font-size:medium">/tmp/llvm-tv-</span><i style="font-family:monospace;font-size:medium">username</i><span style="font-family:monospace;font-size:medium">/snapshots </span>folder, at least the LLVM Visualizer window pops up. But, with the snapshots in the folder, it gives segmentation fault after showing "Processing: <span style="font-size:medium;font-family:monospace">/tmp/llvm-tv-</span><i style="font-size:medium;font-family:monospace">username</i><span style="font-size:medium;font-family:monospace">/snapshots/*.bc</span>" for each snapshot bitcode file.</div>
<div><br></div><div>If someone is interested in helping to fix the snapshot processing part by llvm-tv, I can share the code. Please let me know.</div><div><br></div><div><br><div class="gmail_quote">On Wed, Jun 6, 2012 at 1:21 AM, AbhishekR <span dir="ltr"><<a href="mailto:abhishekr1982@gmail.com" target="_blank">abhishekr1982@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I fixed all the other build errors. This is the only one pending.<br><br><div class="gmail_quote"><div class="im">On Tue, Jun 5, 2012 at 8:33 PM, AbhishekR <span dir="ltr"><<a href="mailto:abhishekr1982@gmail.com" target="_blank">abhishekr1982@gmail.com</a>></span> wrote:<br>

</div><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I fixed most of the errors.<div><br></div><div>There is a weird error I am seeing and seems to be some incompatibility in expanding macros between FileSystem.h in LLVM and intl.h in wxWidgets. Any idea how to fix this?</div>


<div><br></div><div><div>In file included from /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4:</div><div>In file included from /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18:</div>


<div>In file included from /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:34:</div><div>/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/system_error.h:895:38: error: use of undeclared identifier 'Lv'</div>


<div>  explicit windows_error(int v) : v_(_(v)) {}</div><div>                                     ^</div><div>/usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from:</div><div>    #define _(s)                     wxGetTranslation(wxT(s))</div>


<div>                                                      ^</div><div>/usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from:</div><div>    #define wxT(x) wxCONCAT_HELPER(L, x)</div><div>                                   ^</div>


<div>/usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from:</div><div>#define wxCONCAT_HELPER(text, line) text ## line</div><div>                                    ^</div><div><scratch space>:61:1: note: expanded from:</div>


<div>Lv</div><div>^</div><div>In file included from /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4:</div><div>In file included from /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18:</div>


<div>/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:60:34: error: use of undeclared identifier 'Lv'</div><div>  explicit file_type(int v) : v_(_(v)) {}</div><div>                                 ^</div>


<div>/usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from:</div><div>    #define _(s)                     wxGetTranslation(wxT(s))</div><div>                                                      ^</div><div>/usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from:</div>


<div>    #define wxT(x) wxCONCAT_HELPER(L, x)</div><div>                                   ^</div><div>/usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from:</div><div>#define wxCONCAT_HELPER(text, line) text ## line</div>


<div>                                    ^</div><div><scratch space>:61:1: note: expanded from:</div><div>Lv</div><div>^</div><div>In file included from /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4:</div>


<div>In file included from /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18:</div><div>/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:76:36: error: use of undeclared identifier 'Lv'</div>


<div>  explicit copy_option(int v) : v_(_(v)) {}</div><div>                                   ^</div><div>/usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from:</div><div>    #define _(s)                     wxGetTranslation(wxT(s))</div>


<div>                                                      ^</div><div>/usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from:</div><div>    #define wxT(x) wxCONCAT_HELPER(L, x)</div><div>                                   ^</div>


<div>/usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from:</div><div>#define wxCONCAT_HELPER(text, line) text ## line</div><div>                                    ^</div><div><scratch space>:61:1: note: expanded from:</div>


<div>Lv</div><div>^</div><div><div><div><br></div><br><div class="gmail_quote">On Tue, Jun 5, 2012 at 6:00 PM, John Criswell <span dir="ltr"><<a 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>
    On 6/5/12 7:45 PM, AbhishekR wrote:
    <blockquote type="cite">
      
      Thanks John. I verified that and poolalloc builds with LLVM 3.0. I
      used clang for compiling wxWidgets, LLVM 3.0 and poolalloc.
      <div><br>
      </div>
      <div>But llvm-tv build still gives build error. I take it that
        llvm-tv is still incompatible with these versions of poolalloc
        and LLVM 3.0. I think the code is manageable - couple of files
        in lib,include and some 30 odd small files in tools directory.
        I'll have a look at the code to sort out the build errors.</div>
    </blockquote>
    <br></div>
    The llvm-tv project hasn't been used in a long, long time.  In fact,
    I don't think anyone has used it or worked on it since LLVM 2.0 was
    released back in 2007.<br>
    <br>
    If you want to update llvm-tv to LLVM 3.0 (or, better yet, LLVM
    3.1), that would be cool, but just be aware that it's a significant
    project that you'll have to do on your own (the LLVM internal API
    has changed *a lot* since llvm-tv was written).  I also don't know
    how much demand there is for a tool like llvm-tv.<br>
    <br>
    That said, people on llvm-dev are usually happy to answer questions
    on the LLVM 3.1/LLVM mainline API.<div><br>
    <br>
    <blockquote type="cite">
      <div><br>
      </div>
      <div>Have you tried compiling/using llvm-tv with these versions of
        poolalloc and LLVM-3.0?</div>
      <div><br>
      </div>
      <div>Here is the llvm-tv build error -</div>
      <div><br>
      </div>
      <div>
        <div>/home/arhishee/work/llvm-tv/llvm-tv/lib/Snapshot/FileUtils.cpp:32:5:
          error: use of undeclared identifier 'perror'</div>
        <div>    perror("scandir");</div>
        <div>    ^</div>
        <div>/home/arhishee/work/llvm-tv/llvm-tv/lib/Snapshot/FileUtils.cpp:50:5:
          error: use of undeclared identifier 'perror'</div>
        <div>    perror("scandir");</div>
      </div>
    </blockquote>
    <br></div>
    The perror() function is a Unix/Posix function.  The llvm-tv code is
    probably assuming that some LLVM header files #includes the
    definition of it.  This was true in LLVM 1.x; it's not true now. 
    You'll have to search out and fix all these issues if you work on
    llvm-tv.<br>
    <br>
    As an FYI, I never worked on llvm-tv.  I just made the comment about
    poolalloc in the case that your primary interest was in
    understanding the poolalloc transform.<br>
    <br>
    -- John T.<br>
    <br>
  </div>

</blockquote></div><br><br clear="all"><div><br></div></div></div><span><font color="#888888">-- <br>Regards,<br>Abhishek<br>
</font></span></div>
</blockquote></div></div></div><span class="HOEnZb"><font color="#888888"><br><br clear="all"><div><br></div>-- <br>Regards,<br>Abhishek<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br>Regards,<br>Abhishek<br>
</div>