[PATCH] D40289: [SafepointIRVerifier] Allow deriving pointers from unrelocated base

Anna Thomas via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 1 08:24:02 PST 2017


anna added inline comments.


================
Comment at: lib/IR/SafepointIRVerifier.cpp:303
+/// BBContributionUpdater is expected to have following signature:
+/// (const BasicBlock *BB, const BasicBlockState *BBS,
+///  DenseSet<const Value *> &Contribution) -> bool
----------------
DaniilSuchkov wrote:
> anna wrote:
> > If `BBContributionUpdater` is expected to have this type, then why templatize it?
> > You could just typedef instead of using templated type right, I think it makes the intent clearer.
> > 
> > <This comment is superseded by refactoring comment below>
> Lambda with non-empty capture list cannot be passed as function pointer. I'd rather created a new class which can build and process BlockStateMap. Such refactoring is already planned but first I want to get rid of false-positives with GEPs/bitcasts and phis (patch for phis is almost ready).
Discussed with Daniil offline, this wasn't obvious. He'll be updating the capture list. 
Daniil, pls also state here why you'll be having it as a template (perhaps as a FIXME instead of the TODO below).


https://reviews.llvm.org/D40289





More information about the llvm-commits mailing list