<div dir="ltr">Hi Duncan,<div><br></div><div>Thanks for working on this. The patches look great overall.</div><div>0001: LGTM</div><div>0002: There is some inconsistency in creating debug info verifier pass.</div><div><div>
1><br></div></div><div><div>tools/opt/opt.cpp:  if (VerifyEach) PM.add(createVerifierPass());<br></div></div><div>Should VerifyEach guard debug info verifier as well given that we are using NoVerify to guard debug info verifier?</div>
<div>I am okay with not using VerifyEach for debug info verifier, but please add comments there to explain why.</div><div><br></div><div>2> What about these two places? Should we add debug info verifier?</div><div>tools/clang/lib/CodeGen/BackendUtil.cpp:    FPM->add(createVerifierPass());<br>
</div><div>unittests/Bitcode/BitReaderTest.cpp:  passes.add(createVerifierPass());<br></div><div><br></div><div>3> Could you turn debug info verifier on by default and make sure it is working correctly with "make check-all"?</div>
<div><br></div><div>Thanks,</div><div>Manman</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Apr 7, 2014 at 2:32 PM, Duncan P. N. Exon Smith <span dir="ltr"><<a href="mailto:dexonsmith@apple.com" target="_blank">dexonsmith@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Eric and Manman,<br>
<br>
Picking up from the llvmdev discussion in December [1], here's a<br>
stab at DebugInfoVerifier:<br>
<br>
  - Splits out supporting functionality from Verifier into<br>
    VerifierSupport.<br>
<br>
  - Adds LegacyDebugInfoVerifierPassPass, a ModulePass which wraps<br>
    DebugInfoVerifier.  Uses -verify-di command-line flag.<br>
<br>
  - Change verifyModule() to invoke DebugInfoVerifier as well as<br>
    Verifier.<br>
<br>
  - Add a call to createDebugInfoVerifierPass() wherever there was a<br>
    call to createVerifierPass().<br>
<br>
Is this what you two were thinking of, or have I gone off course?<br>
<br>
Thanks,<br>
Duncan<br>
<br>
[1]: <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-December/068870.html" target="_blank">http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-December/068870.html</a><br>
<br>
</blockquote></div><br></div>