Displaying 20 results from an estimated 210 matches for "mayalia".
Did you mean:
mayalias
2012 Sep 21
3
[LLVMdev] Alias Analysis accuracy
...; NoAlias: i32** %b_addr, i32** %c_addr
> NoAlias: i32* %a, i32* %i
> NoAlias: i32* %b, i32* %i
> NoAlias: i32* %c, i32* %i
> NoAlias: i32* %i, i32** %a_addr
> NoAlias: i32* %i, i32** %b_addr
> NoAlias: i32* %i, i32** %c_addr
> MayAlias: i32* %0, i32* %a
> MayAlias: i32* %0, i32* %b
> MayAlias: i32* %0, i32* %c
> NoAlias: i32* %0, i32** %a_addr
> NoAlias: i32* %0, i32** %b_addr
> NoAlias: i32* %0, i32** %c_addr
> NoAlias: i32* %0, i32* %i
> MayAlias: i32* %3,...
2012 Sep 21
0
[LLVMdev] Alias Analysis accuracy
...s: i32** %a_addr, i32** %c_addr
NoAlias: i32** %b_addr, i32** %c_addr
NoAlias: i32* %a, i32* %i
NoAlias: i32* %b, i32* %i
NoAlias: i32* %c, i32* %i
NoAlias: i32* %i, i32** %a_addr
NoAlias: i32* %i, i32** %b_addr
NoAlias: i32* %i, i32** %c_addr
MayAlias: i32* %0, i32* %a
MayAlias: i32* %0, i32* %b
MayAlias: i32* %0, i32* %c
NoAlias: i32* %0, i32** %a_addr
NoAlias: i32* %0, i32** %b_addr
NoAlias: i32* %0, i32** %c_addr
NoAlias: i32* %0, i32* %i
MayAlias: i32* %3, i32* %a
MayAlias: i32* %3, i3...
2012 Sep 21
0
[LLVMdev] Alias Analysis accuracy
...2** %c_addr
> > NoAlias: i32* %a, i32* %i
> > NoAlias: i32* %b, i32* %i
> > NoAlias: i32* %c, i32* %i
> > NoAlias: i32* %i, i32** %a_addr
> > NoAlias: i32* %i, i32** %b_addr
> > NoAlias: i32* %i, i32** %c_addr
> > MayAlias: i32* %0, i32* %a
> > MayAlias: i32* %0, i32* %b
> > MayAlias: i32* %0, i32* %c
> > NoAlias: i32* %0, i32** %a_addr
> > NoAlias: i32* %0, i32** %b_addr
> > NoAlias: i32* %0, i32** %c_addr
> > NoAlias: i32* %0, i32* %i...
2012 Sep 21
3
[LLVMdev] Alias Analysis accuracy
Can you give an example? And is this limited to C (not C++) only?
On Fri, Sep 21, 2012 at 2:52 PM, Liu, Yaxun (Sam) <Yaxun.Liu at amd.com> wrote:
> I think you may add restrict type qualifier.****
>
> ** **
>
> Sam****
>
> ** **
>
> *From:* llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] *On
> Behalf Of *Welson Sun
> *Sent:* Friday,
2012 Sep 21
3
[LLVMdev] Alias Analysis accuracy
...; preds = %bb1
br label %return
return: ; preds = %bb2
ret void
}
Now run: opt -basicaa -aa-eval -print-all-alias-modref-info < foo.s >
/dev/null, you get this:
Function: _Z3fooPiS_S_: 13 pointers, 0 call sites
MayAlias: i32* %a, i32* %b
MayAlias: i32* %a, i32* %c
MayAlias: i32* %b, i32* %c
NoAlias: i32* %a, i32** %a_addr
NoAlias: i32* %b, i32** %a_addr
NoAlias: i32* %c, i32** %a_addr
NoAlias: i32* %a, i32** %b_addr
NoAlias: i32* %b, i32** %b_addr
NoAlias:...
2016 Nov 17
2
Possible MemCpyOpt bug?
...tly? The goal is to make:
- load may-alias store1
- load may-alias store2
- store2 may-alias store3
`-print-may-aliases` seems confirm this:
opt -disable-output -basicaa -scoped-noalias -aa-eval
-evaluate-aa-metadata -print-may-aliases ohgod.ll
Function: f: 4 pointers, 0 call sites
MayAlias: %T* %a, %T* %b
MayAlias: %T* %a, %T* %c
MayAlias: %T* %b, %T* %c
MayAlias: %T* %a, %T* %d
MayAlias: %T* %b, %T* %d
MayAlias: %T* %c, %T* %d
MayAlias: %val = load %T, %T* %a, !alias.scope !0 <-> store %T {
i32 23, i32 23 }, %T*...
2009 Jun 30
2
[LLVMdev] Limitations of Alias Analysis?
...nounwind
%4 = bitcast %struct.Location* %1 to i8* ; <i8*> [#uses=1]
call void @free(i8* %4) nounwind
%5 = bitcast %struct.Location* %2 to i8* ; <i8*> [#uses=1]
call void @free(i8* %5) nounwind
br label %return
return: ; preds = %entry
ret i32 0
}
The result of -aa-eval:
MayAlias: %struct.Location* %0, %struct.Location* %1
MayAlias: %struct.Location* %0, %struct.Location* %2
MayAlias: %struct.Location* %1, %struct.Location* %2
Even when I add the AA option "-ds-aa -anders-aa", the result keeps
unchanged. en, I don't know if I miss some steps or the me...
2010 Feb 15
3
[LLVMdev] A very basic doubt about LLVM Alias Analysis
Hi,
Using this option I do get all the vars as may alias ie
MayAlias: i32* %j.0, i32* %k
MayAlias: i32* %i.0, i32* %k
MayAlias: i32* %i.0, i32* %j.0
Is there any other analysis which will give them as must aliases.
Actually what I want to do is implement a flow sensitive points-to(not
alias) analysis and then use that information for some optimizations...
2009 May 14
2
[LLVMdev] alias analysis results
...o get bc. I
tried the following 2 ways to get what I expect to get as
"alias-sets":
1. opt -aa-eval -print-all-alias-modref-info test4.bc
Function: test: 4 pointers, 0 call sites
NoAlias: i32* %aa, i32** %kk
NoAlias: i32* %aa, i32** %jj
NoAlias: i32** %jj, i32** %kk
MayAlias: i32* %0, i32* %aa
MayAlias: i32* %0, i32** %kk
MayAlias: i32* %0, i32** %jj
Function: main: 2 pointers, 1 call sites
NoAlias: i32* %0, i32* %retval
NoModRef: Ptr: i32* %retval <-> call void @test() nounwind
NoModRef: Ptr: i32* %0 <-> call vo...
2020 Mar 18
2
valid BasicAA behavior?
...if we know all the array elements that are
accessed. Unfortunately it is also difficult, e.g. because the access
range depends on `n`, ie is non-constant. The AA interface doesn't
even allow querying for non-constant sizes.
> How do you guys feel about setting the initial cached result as MayAlias instead of NoAlias if the query is performed for UnknownSize?
>
> If during alias query recursion we hit the same phi query again, we will return a conservative ‘MayAlias’ knowing that we have hit a cycle (loop).
Since aliasPHI looks for any incoming value contradicting the NoAlias
assumpti...
2010 Nov 14
0
[LLVMdev] noalias locals
... f.a = 1;
>> Foo *p = new (&f) Foo(2);
>> // what does p->a contain? 1 or 2?
>> }
>>
>> There's a lot of problems with this example, but I don't know enough
>> optimizer details to construct a better one.
>>
>> Can you get by with a MayAlias? It seems like you can divirtualize
>> everything that MustAlias and ignore the rest.
>
> I see what you mean. If the placement new result mayalias its
> original pointer, we can hold both vptrs invariant and have everything
> else reloaded from memory as appropriate. Now if t...
2010 Nov 14
2
[LLVMdev] noalias locals
...t main(void) {
> Foo f;
> f.a = 1;
> Foo *p = new (&f) Foo(2);
> // what does p->a contain? 1 or 2?
> }
>
> There's a lot of problems with this example, but I don't know enough
> optimizer details to construct a better one.
>
> Can you get by with a MayAlias? It seems like you can divirtualize
> everything that MustAlias and ignore the rest.
I see what you mean. If the placement new result mayalias its
original pointer, we can hold both vptrs invariant and have everything
else reloaded from memory as appropriate. Now if the placement-new is
kno...
2015 Jan 23
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...one thinks i
should shoehorn it into the existing patch.
On Fri Jan 23 2015 at 12:52:02 PM Ana Pazos <apazos at codeaurora.org> wrote:
> Hi Daniel,
>
>
>
> There are correctness issues with the latest patch (from Wed 1/21/2015
> 11:10 AM with “Updated testcases to have MayAlias/note issues as FIXME”).
>
>
>
> I looked at one of the failures and it has to do with disambiguating array
> indexes.
>
>
>
> With CFL AA enabled, LICM promotion is sinking stores outside of the loop
> incorrectly. If I disable LICM promotion, the tests pass.
>
&g...
2010 Feb 14
4
[LLVMdev] A very basic doubt about LLVM Alias Analysis
...%0, i32** %j
NoAlias: i32* %0, i32** %i
NoAlias: i32* %2, i32* %retval
NoAlias: i32* %2, i32** %j
NoAlias: i32* %2, i32** %i
NoAlias: i32* %0, i32* %2
NoAlias: i32* %4, i32* %retval
NoAlias: i32* %4, i32** %j
NoAlias: i32* %4, i32** %i
NoAlias: i32* %0, i32* %4
MayAlias: i32* %2, i32* %4
NoAlias: i32* %k, i32* %retval
NoAlias: i32* %k, i32** %j
NoAlias: i32* %k, i32** %i
NoAlias: i32* %0, i32* %k
MayAlias: i32* %2, i32* %k
MayAlias: i32* %4, i32* %k
NoAlias: i32* %retval, i8* getelementptr inbounds ([9 x i8]* @.str,
i32 0, i32 0)...
2015 Jan 24
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...azos < apazos at codeaurora.org >
> > wrote:
> >
> >
> >
> >
> >
> >
> > Hi Daniel,
> >
> >
> >
> > There are correctness issues with the latest patch (from Wed
> > 1/21/2015 11:10 AM with “Updated testcases to have MayAlias/note
> > issues as FIXME”).
> >
> >
> >
> > I looked at one of the failures and it has to do with disambiguating
> > array indexes.
> >
> >
> >
> > With CFL AA enabled, LICM promotion is sinking stores outside of the
> > loop incorr...
2015 Jan 23
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
...Is there a better way?
>>
>> We can add a special "Unknown" StratifiedAttr and query it before
>> anything else, i.e:
>>
>> // in CFLAliasAnalysis::query, as the first potential return
>> if (AttrsA[AttrUnknown] || AttrsB[AttrUnknown])
>> return MayAlias;
>>
>> The only *potential* issue with this approach would be that in the
>> following code segment:
>>
>> void fn() {
>> int *foo = (int*)rand();
>> int *bar = new int;
>> int **baz = rand() ? &foo : &bar;
>> int value = **baz;...
2009 May 29
1
[LLVMdev] difference between alias set tracker and alias analysis evaluator
...t[0x2ce5910,1] must alias, Mod Pointers: (i8* %10, 1)
AliasSet[0x2ce5820,1] must alias, Mod/Ref Pointers: (i32* %0, 4)
AliasSet[0x2ce4f00,1] must alias, Mod/Ref Pointers: (i32* %retval, 4)
the alias analysis evaluator gives the following results (i removed all
the NoAlias results)
MayAlias: [5 x i32]* %a, i32* %1
MayAlias: %struct..0anon* %sym, i32* %4
MayAlias: [5 x i32]* %a, i32* %5
MayAlias: [5 x i32]* %a, i32* %6
MustAlias: i32* %5, i32* %6
MustAlias: %struct..0anon* %sym, [10 x i8]* %9
MayAlias: %struct..0anon* %sym, i8* %10
MayAlias: [10 x...
2009 Jun 30
0
[LLVMdev] Limitations of Alias Analysis?
On Mon, Jun 29, 2009 at 7:40 PM, Wenzhi Tao<linus_wind at zju.edu.cn> wrote:
> The result of -aa-eval:
>
> MayAlias: %struct.Location* %0, %struct.Location* %1
> MayAlias: %struct.Location* %0, %struct.Location* %2
> MayAlias: %struct.Location* %1, %struct.Location* %2
I'm getting NoAlias with the given steps; are you using trunk LLVM?
-Eli
2019 Nov 06
2
Alias analysis only throwing mayAlias for something that seems should be identifiable as mustAlias
...see, the GEPInst exactly knows it is the ARRAY0, and it knows
statically that it is accessing the 7th element.
However, when I try to call alias analysis in the LLVM pass, as in
AliasAnalysis *AA = ...
AA->alias(a, b)
where a is the ARRAY0 global variable and b is the GEPInst (%45), I only
get mayAlias.
When reading the basicaa description, it seems like it should know that the
two is must alias. What am I missing?
I did not know how I should post code in the thread, so I apologize for the
messy format.
Thank you,
Best Regards,
Kiwan
-------------- next part --------------
An HTML attachment wa...
2009 May 15
1
[LLVMdev] alias analysis results
...ses=1]
store i32 400, i32* %2, align 4
br label %return
return: ; preds = %entry
ret void
}
the andersens-aa gives out the following results:
Function: test: 6 pointers, 0 call sites
NoAlias: i32* %aa, i32** %kk
NoAlias: i32* %aa, i32** %jj
NoAlias: i32** %jj, i32** %kk
MayAlias: i32* %0, i32* %aa
NoAlias: i32* %0, i32** %kk
NoAlias: i32* %0, i32** %jj
MayAlias: i32* %1, i32* %aa
NoAlias: i32* %1, i32** %kk
NoAlias: i32* %1, i32** %jj
MayAlias: i32* %0, i32* %1
MayAlias: i32* %2, i32* %aa
NoAlias: i32* %2, i32** %kk...