search for: isnoaliasargument

Displaying 7 results from an estimated 7 matches for "isnoaliasargument".

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 need the function to do in its sole caller. Thinking about what it does without a specific caller in mind, I might think of "noaliasAtFunctionEntry", as it indicates that the obje...
2013 May 26
2
[LLVMdev] Mixing noalias and regular arguments
...iew, I had this patch starred but hadn't got around to it. Yes, the rationale and implementation are correct. > (Is there a code owner for AA, btw?) (It falls back on the more general code owner who is Chris Lattner in this case, "Everything not covered by someone else".) +/// isNoAliasArgument - Return true if this is an argument with the noalias +/// attribute. +bool isNoAliasArgument(const Value* V); "const Value* V" should be "const Value *V". + // Arguments can't alias with noalias arguments + if ((isa<Argument>(O1) && isNoAliasArgument(O...
2013 May 27
0
[LLVMdev] Mixing noalias and regular arguments
...function, but also two additional ones: GlobalValues which are not GlobalAliases, and byval arguments. Unfortunately, a check of Argument vs. IsIdentifiedObject is too broad, because an argument (which is not noalias) can alias a GlobalValue. 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. -----Original Message----- From: Nick Lewycky [mailto:nicholas at mxc.ca] Sent: Monday, May 27, 2013 13:54 To: Kuperstein, Michael M Cc: LLVMdev at cs.uiuc.edu Subject: Re: [LLVMdev] Mixing noal...
2013 May 27
0
[LLVMdev] Mixing noalias and regular arguments
...eview, I had this patch starred but hadn't got around to it. Yes, the rationale and implementation are correct. > (Is there a code owner for AA, btw?) (It falls back on the more general code owner who is Chris Lattner in this case, "Everything not covered by someone else".) +/// isNoAliasArgument - Return true if this is an argument with the +noalias /// attribute. +bool isNoAliasArgument(const Value* V); "const Value* V" should be "const Value *V". + // Arguments can't alias with noalias arguments + if ((isa<Argument>(O1) && isNoAliasArgument(...
2013 May 27
1
[LLVMdev] Mixing noalias and regular arguments
...ich 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 think it's a utility that could be used more generally, llvm:: is fine. Nick &g...
2013 May 26
0
[LLVMdev] Mixing noalias and regular arguments
Ping? (Is there a code owner for AA, btw?) From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Kuperstein, Michael M Sent: Tuesday, May 21, 2013 18:23 To: LLVMdev at cs.uiuc.edu Cc: Raoux, Thomas F Subject: [LLVMdev] Mixing noalias and regular arguments Hi all, I'm trying to understand the semantics of noalias arguments, and I'm not entirely sure I
2013 May 21
2
[LLVMdev] Mixing noalias and regular arguments
Hi all, I'm trying to understand the semantics of noalias arguments, and I'm not entirely sure I got it correctly. To the best of my understanding, if an argument is declared noalias, "This indicates that pointer values based on the argument do not alias pointer values which are not based on it" implies, among other things, that it cannot alias any other argument, even if that