Do you just need a pdb, or does it really need to be a vs pdb?  lld can generate high quality pdbs now.  So it might be possible to use lld to link and produce a pdb when you run the test.<br><br>Pavel’s suggestion is equally viable, you can dump a pdb to yaml and convert it back to a pdb at test time.<br><br>The real problem is the exe.  It’s harder to generate exes at test time because we have to ensure that dependent libraries are present on the system.<br><br>If it has to be an msvc generated pdb, can you elaborate on why?  Tbh I’m not really against checking in pdbs.  Exes I’d like to find a way to avoid checking in wherever possible though.  And even then, sometimes I don’t have any better ideas other than compile and link before running the test<br><div class="gmail_quote"><div dir="ltr">On Wed, Jun 6, 2018 at 2:20 PM Aaron Smith via Phabricator <<a href="mailto:reviews@reviews.llvm.org">reviews@reviews.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">asmith added a comment.<br>
<br>
In <a href="https://reviews.llvm.org/D47708#1123334" rel="noreferrer" target="_blank">https://reviews.llvm.org/D47708#1123334</a>, @labath wrote:<br>
<br>
> I have reverted this because of the broken tests.<br>
><br>
> However, I have to also ask: isn't there better way to test this? (one that does not depend on opaque checked-in binaries). On linux, I could check-in a .s file which has the line table exactly as I want it and then have the test assert that. Is there some suitable intermediate form here?<br>
><br>
> It seems that lld tests use some yaml form to store pdb's. Is there any chance we could do the same?<br>
<br>
<br>
I wish these binaries didn’t exist too. Im not sure if the lld approach works because I think we need the VS generated PDBs for function level testing. Maybe Zachary as a better idea.<br>
<br>
<br>
<a href="https://reviews.llvm.org/D47708" rel="noreferrer" target="_blank">https://reviews.llvm.org/D47708</a><br>
<br>
<br>
<br>
</blockquote></div>