Displaying 6 results from an estimated 6 matches for "isidentifiedfunctionloc".
Did you mean:
isidentifiedfunctionlocal
2015 Mar 13
2
[LLVMdev] Alias analysis issue with structs on PPC
...d into double* using an
inttoptr instruction. The code in BasicAliasAnalysis.cpp which is triggered
for x86 is the following:
// Function arguments can't alias with things that are known to be
// unambigously identified at the function level.
if ((isa<Argument>(O1) && isIdentifiedFunctionLocal(O2)) ||
(isa<Argument>(O2) && isIdentifiedFunctionLocal(O1)))
return NoAlias;
isIdentifiedFunctionLocal(V) returns true for a noalias argument (such as
result), but the other address (my_struct) must be a function argument in
order to return NoAlias, which is not the...
2015 Mar 13
2
[LLVMdev] Alias analysis issue with structs on PPC
.... The code in BasicAliasAnalysis.cpp which is triggered for x86
>> is the following:
>>
>> // Function arguments can't alias with things that are known to be
>> // unambigously identified at the function level.
>> if ((isa<Argument>(O1) && isIdentifiedFunctionLocal(O2)) ||
>> (isa<Argument>(O2) && isIdentifiedFunctionLocal(O1)))
>> return NoAlias;
>>
>> isIdentifiedFunctionLocal(V) returns true for a noalias argument (such as
>> result), but the other address (my_struct) must be a function argument i...
2015 Mar 15
5
[LLVMdev] Alias analysis issue with structs on PPC
...ch is triggered for x86
>>>> is the following:
>>>>
>>>> // Function arguments can't alias with things that are known to be
>>>> // unambigously identified at the function level.
>>>> if ((isa<Argument>(O1) && isIdentifiedFunctionLocal(O2)) ||
>>>> (isa<Argument>(O2) && isIdentifiedFunctionLocal(O1)))
>>>> return NoAlias;
>>>>
>>>> isIdentifiedFunctionLocal(V) returns true for a noalias argument (such
>>>> as result), but the other address (...
2013 May 27
1
[LLVMdev] Mixing noalias and regular arguments
...overs the 3 cases I have in the new function, but also two additional ones: GlobalValues which are not GlobalAliases, and byval arguments.
Okay.
> Unfortunately, a check of Argument vs. IsIdentifiedObject is too broad, because an argument (which is not noalias) can alias a GlobalValue.
Right. IsIdentifiedFunctionLocal? :)
> Regarding the namespace - I just thought I should keep isNoAliasArgument close to isNoAliasCall.
> I'll move it to BasicAliasAnalysis if you think that's a better idea.
I generally avoid adding things to llvm:: when I can avoid it, but I
don't care a whole lot. If you t...
2013 May 27
0
[LLVMdev] Mixing noalias and regular arguments
Regarding the name, I'm not sure noaliasAtFunctionEntry makes sense, for two reasons:
a) The pointer involved may not be defined at entry.
b) We already have something which is similar in spirit - IsIdentifiedObject. That covers the 3 cases I have in the new function, but also two additional ones: GlobalValues which are not GlobalAliases, and byval arguments.
Unfortunately, a check of
2013 May 27
2
[LLVMdev] Mixing noalias and regular arguments
Kuperstein, Michael M wrote:
> Thanks Nick!
>
> Can you just check sanity before I commit?
> (Or suggest a better name for the function...)
Sure!
+static bool canNotAliasDiffArgument(const Value *V)
+{
+ return (isa<AllocaInst>(V) || isNoAliasCall(V) || isNoAliasArgument(V));
+}
Extra parens?
The name "canNotAliasDiffArgument" works, but it's named for what we