Displaying 4 results from an estimated 4 matches for "preservedanalysis".
Did you mean:
preservedanalyses
2018 Sep 02
2
possible inconsistency in PassManagerInternal.h
...ing a couple of talks (Chandler / Sergeev), I decided to start with the Concept/Model classes in PassManagerInternal.h
While I could make sense of almost everything there, two details caught my attention:
1- The PassConcept abstract class has a function `run = 0;` which returns an object of type `PreservedAnalysis`. Such object is forward-declared in this header, but it is defined in PassManager.h This is the only place in the file where we reference this class.
However, right after, we define the PassModel class which derives from PassConcept, and one of its template parameters is a typename `PreservedAna...
2016 Jul 26
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...gt;> > void canonicalizeIR(IRUnitT &IR, AnalysisManager &AM) {
>> > using IndicatorT = typename CanonicalizationT::IndicatorAnalysis;
>> > if (AM.getCachedResult<IndicatorT>(IR))
>> > return;
>> > CanonicalizationT C;
>> > PreservedAnalysis PA = C.run(IR, AM);
>> > AM.invalidate(IR, PA);
>> > (void)AM.getResult<IndicatorT>(IR);
>> > }
>> >
>> > ```
>> >
>> >
>> > One place that talks about this problem of "requiring a transformation"
>> i...
2016 Jul 25
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...ypename IRUnitT>
> void canonicalizeIR(IRUnitT &IR, AnalysisManager &AM) {
> using IndicatorT = typename CanonicalizationT::IndicatorAnalysis;
> if (AM.getCachedResult<http://AM.getCachedResult><IndicatorT>(IR))
> return;
> CanonicalizationT C;
> PreservedAnalysis PA = C.run<http://C.run>(IR, AM);
> AM.invalidate<http://AM.invalidate>(IR, PA);
> (void)AM.getResult<http://AM.getResult><IndicatorT>(IR);
> }
>
> ```
>
>
> One place that talks about this problem of "requiring a transformation" is http...
2016 Jul 22
4
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
The more closely I look at this, the more it seems like there may be a
useful incremental step in the transition to the new PM: use the new PM
analysis machinery in the old PM. If this is possible, it will simplify the
old PM and (hopefully) allow an incremental transition to the new PM
instead of a flag day transition for the switch.
I.e., AFAICT, the new PM transition is essentially about 2