[PATCH] D116610: [ADCE][NFC] Batch DT updates together

Quentin Colombet via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 4 15:11:33 PST 2022


qcolombet added inline comments.


================
Comment at: llvm/lib/Transforms/Scalar/ADCE.cpp:582
   bool Changed = false;
+  SmallVector<DominatorTree::UpdateType, 16> DeletedEdges;
 
----------------
kuhar wrote:
> qcolombet wrote:
> > kuhar wrote:
> > > How did you pick this constant? 
> > Randomly to be honest.
> > 
> > It was 4 for the incremental updates and I figured we need to increase this size while batching more updates together while still hitting the fast path of the container.
> Could you either generate some statistics based on some real-world code bases and the pathological test cases mentioned in the patch description, or leave the constant out and let it SmallVector pick the small size automatically?
> 
> If you need test bitcode, I have some old whole-program bitcode laying around here: https://drive.google.com/drive/folders/1VJpym19cW-8BVgdtl2MsD3zB4CoEQ93O. You can just feed it to opt.
> Could you either generate some statistics based on some real-world code bases

I'll do that thanks for the pointer.

> ... the pathological test cases

The pathological test cases are less interesting because they involve thousands of edges and that's not a small vector at this point :).


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D116610/new/

https://reviews.llvm.org/D116610



More information about the llvm-commits mailing list