search for: scevaa

Displaying 20 results from an estimated 23 matches for "scevaa".

Did you mean: scev
2019 Jun 12
2
[RFC][SCEV] Behavior of AddRec in CompareSCEVComplexity
Hi, Thanks for the input. In my ptr_test.O1.ll, the two loops should fall into the last case due to loop rotations. And I think we should handle that case. I propose to check the dominance relation between loop predecessor blocks of the two loops if there is no dominance relation between their loop headers just like case three. The only thing I'm not pretty sure is that is there guarantee to
2015 Jul 14
5
[LLVMdev] RFC: A plan for stateful alias analysis in LLVM
# Front matter # First, I want to emphasize that this is not a short-term plan. This is a long-term plan. When I was looking at refactoring the existing Alias Analysis infrastructure in LLVM in ways that would break stateful AA, Hal Finkel asked me to figure out how things would work with the new pass manager and make sure that was sane. This plan assumes the new pass manager. There is nothing
2014 Aug 13
2
[LLVMdev] Alias Analysis Semantics
...you can't. > > In LLVM, a MustAlias b does not imply that the values of a and b > individually do not change, but that "a and b" are pointer equal > always. > > > What I describe is how, AFAICT, it is implemented in all of the alias > passes. > For example, SCEVAA, which actually computes the recurrences for these > loop expressions, has this: > // This is ScalarEvolutionAliasAnalysis. Get the SCEVs! > const SCEV *AS = SE->getSCEV(const_cast<Value *>(LocA.Ptr)); > const SCEV *BS = SE->getSCEV(const_cast<Value *>(LocB.Ptr...
2014 Aug 13
2
[LLVMdev] Alias Analysis Semantics
Hello all, I've read the documentation on alias analysis, and I think I understand it literally, but I just want to be sure, because it seems a bit strange. As it says on this web page <http://llvm.org/docs/AliasAnalysis.html>, The MayAlias response is used whenever the two pointers might refer to the > same object. > > The PartialAlias response is used when the two memory
2016 Jul 13
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...ibraryAnalysis: Has no dependencies > TargetIRAnalysis: Has no dependencies. > > Function alias analyses: 3/5 keep pointers to other analyses > BasicAA: Keeps pointers to TargetLibraryInfo, AssumptionCache, > DominatorTree, LoopInfo > CFLAA: Keeps pointer to TargetLibraryInfo > SCEVAA: Keeps pointer to ScalarEvolution > ScopedNoAliasAA: No dependencies > TypeBasedAA: No dependencies > > > Total: 13/28 analyses (~50%) hold pointers to other analyses. > Of the 15/28 analyses that don't hold pointers, 12/15 simply have no > dependencies. Only 3/15 (BPI, Loo...
2016 Jul 13
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
On Tue, Jul 12, 2016 at 11:34 PM Sean Silva <chisophugis at gmail.com> wrote: > On Tue, Jul 12, 2016 at 11:32 PM, Xinliang David Li <davidxl at google.com> > wrote: > >> >> >> On Tue, Jul 12, 2016 at 10:57 PM, Chandler Carruth <chandlerc at gmail.com> >> wrote: >> >>> Yea, this is a nasty problem. >>> >>> One
2016 Jul 14
4
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...RAnalysis: Has no dependencies. >>> >>> Function alias analyses: 3/5 keep pointers to other analyses >>> BasicAA: Keeps pointers to TargetLibraryInfo, AssumptionCache, >>> DominatorTree, LoopInfo >>> CFLAA: Keeps pointer to TargetLibraryInfo >>> SCEVAA: Keeps pointer to ScalarEvolution >>> ScopedNoAliasAA: No dependencies >>> TypeBasedAA: No dependencies >>> >>> >>> Total: 13/28 analyses (~50%) hold pointers to other analyses. >>> Of the 15/28 analyses that don't hold pointers, 12/15 simpl...
2016 Jul 13
4
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...etLibraryAnalysis: Has no dependencies > TargetIRAnalysis: Has no dependencies. > Function alias analyses: 3/5 keep pointers to other analyses > BasicAA: Keeps pointers to TargetLibraryInfo, AssumptionCache, > DominatorTree, LoopInfo > CFLAA: Keeps pointer to TargetLibraryInfo > SCEVAA: Keeps pointer to ScalarEvolution > ScopedNoAliasAA: No dependencies > TypeBasedAA: No dependencies > Total: 13/28 analyses (~50%) hold pointers to other analyses. > Of the 15/28 analyses that don't hold pointers, 12/15 simply have no > dependencies. Only 3/15 (BPI, LoopInfo, D...
2016 Jul 25
2
Alias Analysis with inbound GEPs
I’m checking aliasing of two pointers: %GEP1 = getelementptr inbounds %struct.s, %struct.s* %0, i64 0, i32 1, i64 %indvars.iv41, i64 %indvars.iv39 %GEP2 = getelementptr inbounds %struct.s, %struct.s* %0, i64 0, i32 16 The result I got is “PartialAlias” because the indices of the GEP1 are variable. That seems like a bug. PartialAlias should only be returned when we can prove a partial
2016 Jul 16
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...> >>>>> Function alias analyses: 3/5 keep pointers to other analyses >>>>> BasicAA: Keeps pointers to TargetLibraryInfo, AssumptionCache, >>>>> DominatorTree, LoopInfo >>>>> CFLAA: Keeps pointer to TargetLibraryInfo >>>>> SCEVAA: Keeps pointer to ScalarEvolution >>>>> ScopedNoAliasAA: No dependencies >>>>> TypeBasedAA: No dependencies >>>>> >>>>> >>>>> Total: 13/28 analyses (~50%) hold pointers to other analyses. >>>>> Of the 15/28 an...
2016 Jul 15
5
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...aryInfo, > > > > > AssumptionCache, > > > > > DominatorTree, LoopInfo > > > > > > > > > > > > > > > CFLAA: Keeps pointer to TargetLibraryInfo > > > > > > > > > > > > > > > SCEVAA: Keeps pointer to ScalarEvolution > > > > > > > > > > > > > > > ScopedNoAliasAA: No dependencies > > > > > > > > > > > > > > > TypeBasedAA: No dependencies > > > > > > > > &g...
2014 Aug 14
2
[LLVMdev] Alias Analysis Semantics
...that the values of a and b > >> individually do not change, but that "a and b" are pointer equal > >> always. > >> > >> > >> What I describe is how, AFAICT, it is implemented in all of the alias > >> passes. > >> For example, SCEVAA, which actually computes the recurrences for these > >> loop expressions, has this: > >> // This is ScalarEvolutionAliasAnalysis. Get the SCEVs! > >> const SCEV *AS = SE->getSCEV(const_cast<Value *>(LocA.Ptr)); > >> const SCEV *BS = SE->getSCE...
2016 Jul 25
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...; > > > > > > > > > > > > > > > > > > > > > CFLAA: Keeps pointer to TargetLibraryInfo > > > > > > > > > > > > > > > > > > > > > > > > > > > > SCEVAA: Keeps pointer to ScalarEvolution > > > > > > > > > > > > > > > > > > > > > > > > > > > > ScopedNoAliasAA: No dependencies > > > > > > > > > > > > > > > > &gt...
2016 Jul 15
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...; > > > > > > > > > > > > > > > > > > > > > CFLAA: Keeps pointer to TargetLibraryInfo > > > > > > > > > > > > > > > > > > > > > > > > > > > > SCEVAA: Keeps pointer to ScalarEvolution > > > > > > > > > > > > > > > > > > > > > > > > > > > > ScopedNoAliasAA: No dependencies > > > > > > > > > > > > > > > > &gt...
2016 Jul 15
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...; > > > > > > > > > > > > > > > > > > > > > CFLAA: Keeps pointer to TargetLibraryInfo > > > > > > > > > > > > > > > > > > > > > > > > > > > > SCEVAA: Keeps pointer to ScalarEvolution > > > > > > > > > > > > > > > > > > > > > > > > > > > > ScopedNoAliasAA: No dependencies > > > > > > > > > > > > > > > > &gt...
2016 Jul 15
4
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...;>> Function alias analyses: 3/5 keep pointers to other analyses >>>>>> BasicAA: Keeps pointers to TargetLibraryInfo, AssumptionCache, >>>>>> DominatorTree, LoopInfo >>>>>> CFLAA: Keeps pointer to TargetLibraryInfo >>>>>> SCEVAA: Keeps pointer to ScalarEvolution >>>>>> ScopedNoAliasAA: No dependencies >>>>>> TypeBasedAA: No dependencies >>>>>> >>>>>> >>>>>> Total: 13/28 analyses (~50%) hold pointers to other analyses. >>>>...
2016 Jul 22
4
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...on alias analyses: 3/5 keep pointers to other analyses >>>>>>> BasicAA: Keeps pointers to TargetLibraryInfo, AssumptionCache, >>>>>>> DominatorTree, LoopInfo >>>>>>> CFLAA: Keeps pointer to TargetLibraryInfo >>>>>>> SCEVAA: Keeps pointer to ScalarEvolution >>>>>>> ScopedNoAliasAA: No dependencies >>>>>>> TypeBasedAA: No dependencies >>>>>>> >>>>>>> >>>>>>> Total: 13/28 analyses (~50%) hold pointers to other analys...
2015 Apr 25
3
[LLVMdev] alias analysis on llvm internal globals
Hi I have this program in which fooBuf can only take on NULL or the address of local_fooBuf, and fooBuf and local_fooBuf have scope of the foo function. Therefore there is no way for the fooPtr argument to alias with fooBuf. However, LLVM basicaa and globalsmodref-aa say the 2 pointers may alias. I am thinking whether i should implement a limited form of point-to alias on the fooBuf pointer in
2016 Aug 08
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...on alias analyses: 3/5 keep pointers to other analyses >>>>>>> BasicAA: Keeps pointers to TargetLibraryInfo, AssumptionCache, >>>>>>> DominatorTree, LoopInfo >>>>>>> CFLAA: Keeps pointer to TargetLibraryInfo >>>>>>> SCEVAA: Keeps pointer to ScalarEvolution >>>>>>> ScopedNoAliasAA: No dependencies >>>>>>> TypeBasedAA: No dependencies >>>>>>> >>>>>>> >>>>>>> Total: 13/28 analyses (~50%) hold pointers to other analys...
2016 Jul 26
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...ters to other analyses >>>>>>>>> BasicAA: Keeps pointers to TargetLibraryInfo, AssumptionCache, >>>>>>>>> DominatorTree, LoopInfo >>>>>>>>> CFLAA: Keeps pointer to TargetLibraryInfo >>>>>>>>> SCEVAA: Keeps pointer to ScalarEvolution >>>>>>>>> ScopedNoAliasAA: No dependencies >>>>>>>>> TypeBasedAA: No dependencies >>>>>>>>> >>>>>>>>> >>>>>>>>> Total: 13/28 analy...