From efca7f9681a4b0048538a02e2be3de3d369ff9c6 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Fri, 2 Jul 2010 23:46:54 +0000 Subject: Describe which dependencies are relevant to noalias, and document how AliasAnalyses have the choice to respect noalias. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107544 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/LangRef.html | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'docs/LangRef.html') diff --git a/docs/LangRef.html b/docs/LangRef.html index 7d8f14bca6..ad730deffb 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -1053,7 +1053,12 @@ declare signext i8 @returns_signed_char()
noalias
This indicates that pointer values based on the argument or return - value do not alias pointer values which are not based on it. + value do not alias pointer values which are not based on it, + ignoring certain "irrelevant" dependencies. + For a call to the parent function, dependencies between memory + references from before or after the call and from those during the call + are "irrelevant" to the noalias keyword for the arguments and + return value used in that call. The caller shares the responsibility with the callee for ensuring that these requirements are met. For further details, please see the discussion of the NoAlias response in -- cgit v1.2.3