[PATCH] D15272: [Verifier] Verifier that a GlobalValue is only used in this Module

Duncan P. N. Exon Smith via llvm-commits llvm-commits at lists.llvm.org
Sun Dec 6 17:37:07 PST 2015


+vedant

> On 2015-Dec-06, at 17:35, Keno Fischer <kfischer at college.harvard.edu> wrote:
> 
> That would be fantastic!
> 
> On Sun, Dec 6, 2015 at 8:34 PM, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
> 
> > On 2015-Dec-06, at 17:31, Keno Fischer <kfischer at college.harvard.edu> wrote:
> >
> > loladiro created this revision.
> > loladiro added a reviewer: dexonsmith.
> > loladiro added a subscriber: llvm-commits.
> >
> > We already have the inverse verification that we only use globals
> > that are defined in this module. This essentially catches the
> > same mistake, but when verifying the module that contains the
> > definition. There is a moderately annoying corner case caused by
> > our usage of a parentless ReturnInst to hold prefix/prologue data.
> > In order to perform correct diagnostics, we need to construct the
> > inverse map for this on demand. Since that can be expensive, this
> > inverse mapping is cached in the Verifier class and only constructed
> > when needed.
> >
> > http://reviews.llvm.org/D15272
> >
> > Files:
> >  lib/IR/Verifier.cpp
> >  unittests/IR/VerifierTest.cpp
> 
> It'd be nice to get in Vedant's work to remove this ReturnInst hack
> first, so we don't need to worry about the performance here... I'll
> comment in that review.
> 



More information about the llvm-commits mailing list