<div dir="ltr">I'm looking at cases of disagreement between assertions in the backend and what the Verifier checks for (forĀ <a href="http://reviews.llvm.org/D16083">http://reviews.llvm.org/D16083</a>). One of these seems to be the question of whether a DISuprogram may exist without a DICompileUnit. Currently the Verifier doesn't care, but there are a few assertions to this extent in the backend.<div>Possible options are:</div><div><br></div><div>1) A DISubprogram may exist without a DICompileUnit (what would we have to change in the backend?)</div><div>2) A DISubprogram's scope may be null, but only if there's a DICompileUnit that references it.</div><div>3) A DISubprogram's scope may not be null, but the referenced DICompileUnit need not necessarily contain it</div><div>4) A DISubprogram's scope may not be null, and the referenced DICompileUnit must contain it</div><div><br></div><div>As far as I can tell, all of these would need some amount of changes to either existing code or existing test cases.</div></div>