[llvm-dev] RFC: Pass Execution Instrumentation interface
Fedor Sergeev via llvm-dev
llvm-dev at lists.llvm.org
Wed Jun 6 17:38:48 PDT 2018
Not sure how did I miss that, but this interface definitely lacks IRUnit.
Should be:
bool BeforePass (PassID, IRUnit&, PassExecutionCounter);
void AfterPass (PassID, IRUnit&, PassExecutionCounter);
regards,
Fedor.
On 06/07/2018 03:00 AM, Fedor Sergeev via llvm-dev wrote:
> 2. every single point of Pass execution in the (new) PassManager(s)
> will query
> this analysis and run instrumentation call specific to a
> particular point.
>
> Instrumentation points:
>
> bool BeforePass (PassID, PassExecutionCounter);
> void AfterPass (PassID, PassExecutionCounter);
>
> Run before/after a particular pass execution
> BeforePass instrumentation call returns true if this
> execution is allowed to run.
>
> 'PassID'
> certain unique identifier for a pass (pass name?).
>
> 'PassExecutionCounter'
> a number that uniquely identifies this particular
> pass execution
> in current pipeline, as tracked by Pass Manager.
>
> void StartPipeline()
> void EndPipeline()
>
> Run at the start/end of a pass pipeline execution.
> (useful for initialization/finalization purposes)
More information about the llvm-dev
mailing list