<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">It works in debug mode.  I left the std::cout statements in and compiled in <div>sim mode.  ir2v aborted.  </div><div><br></div><div>A similar abort happened with more than 8 memcpy's to cpu_ptrs.  I don't know if </div><div>there are other limits we should be diagnosing or documenting.  </div><div><br></div><div>-jon</div><div><br><div><div>On May 18, 2015, at 2:34 PM, John Criswell wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">
  
    <meta content="text/html; charset=windows-1252" http-equiv="Content-Type">
  
  <div bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 5/18/15 2:16 PM, Stephen Thomas
      wrote:<br>
    </div>
    <blockquote cite="mid:CA+U9gD0H0jzER2Ao38GDM6KosW5q_p0HVN+=Uw06d72ocFiWtw@mail.gmail.com" type="cite">
      <div dir="ltr">I'd like to write an inter-modular analysis pass.
        My understanding is that this should take the form of an LTO
        pass. However, I have been unable to find any resources on the
        mechanics of writing and running a custom LTO pass. Does anyone
        have any pointers?</div>
    </blockquote>
    <br>
    All you need to do is to write a ModulePass and modify the libLTO
    plugin to run it.  Writing a ModulePass is described in the "How to
    Write an LLVM Pass" document in the LLVM documentation.  To modify
    libLTO, you'll need to read the documents on how to install it, and
    you'll need to modify the plugin (in llvm/tools/LTO, I think). 
    Alternatively, you can modify the LLVM library that defines which
    passes get run when you use -O2 and -flto optimization, but the
    result is the same: you'll need to install a new libLTO plugin.<br>
    <br>
    Regards,<br>
    <br>
    John Criswell<br>
    <br>
    <blockquote cite="mid:CA+U9gD0H0jzER2Ao38GDM6KosW5q_p0HVN+=Uw06d72ocFiWtw@mail.gmail.com" type="cite">
      <div dir="ltr">
        <div><br>
        </div>
        <div>Thanks,</div>
        <div>Steve</div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a class="moz-txt-link-freetext" href="http://llvm.cs.uiuc.edu/">http://llvm.cs.uiuc.edu</a>
<a class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a>
</pre>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
John Criswell
Assistant Professor
Department of Computer Science, University of Rochester
<a class="moz-txt-link-freetext" href="http://www.cs.rochester.edu/u/criswell">http://www.cs.rochester.edu/u/criswell</a></pre>
  </div>

_______________________________________________<br>LLVM Developers mailing list<br><a href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu">http://llvm.cs.uiuc.edu</a><br><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br></blockquote></div><br></div></body></html>