pchintalapudi added a comment.

In D137149#4653308 <https://reviews.llvm.org/D137149#4653308>, @aeubanks wrote:

> we don't currently support reusing a pipeline so I'm surprised that you're 
> able to share/reuse pipelines without running into any issues

The way I see it, any pipeline state that can't be reused between runs is 
encapsulated within either the module or the analysis managers, with the 
analysis managers containing derived state that's expensive to compute about 
the module. Under that interpretation, the optimization passes are essentially 
stateless, so there's no reason they can't be run on multiple IR units (and 
CGSCC/Function/Loop passes must deal with this fact already since there's 
possibly more than one present per module). I don't know how much penalty there 
is for requiring passes to clean up after themselves, but I can't imagine that 
it's a very high cost.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D137149

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to