summaryrefslogtreecommitdiff
path: root/docs/AliasAnalysis.html
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-07-02 23:46:54 +0000
committerDan Gohman <gohman@apple.com>2010-07-02 23:46:54 +0000
commitefca7f9681a4b0048538a02e2be3de3d369ff9c6 (patch)
tree75e967b2dd56099c0e934f6426345bb2587e2b9a /docs/AliasAnalysis.html
parent03560600b4fcaa9896b60fd2f224572a1945426b (diff)
downloadllvm-efca7f9681a4b0048538a02e2be3de3d369ff9c6.tar.gz
llvm-efca7f9681a4b0048538a02e2be3de3d369ff9c6.tar.bz2
llvm-efca7f9681a4b0048538a02e2be3de3d369ff9c6.tar.xz
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
Diffstat (limited to 'docs/AliasAnalysis.html')
-rw-r--r--docs/AliasAnalysis.html5
1 files changed, 5 insertions, 0 deletions
diff --git a/docs/AliasAnalysis.html b/docs/AliasAnalysis.html
index 5e931d77a8..591694a983 100644
--- a/docs/AliasAnalysis.html
+++ b/docs/AliasAnalysis.html
@@ -201,6 +201,11 @@ freed and reallocated between accesses through one pointer and accesses through
the other -- in this case, there is a dependence, but it's mediated by the free
and reallocation.</p>
+<p>As an exception to this is with the
+<a href="LangRef.html#noalias"><tt>noalias</tt></a> keyword. AliasAnalysis
+implementations may choose to ignore the "irrelevant" dependencies, provided
+their clients do not need to be aware of these dependencies for correctness.</p>
+
<p>The MayAlias response is used whenever the two pointers might refer to the
same object. If the two memory objects overlap, but do not start at the same
location, return MayAlias.</p>