From 4f4365eb4ec0e1e84a48dbc5bb9f323018facec7 Mon Sep 17 00:00:00 2001
From: Chris Lattner
Date: Sat, 25 Apr 2009 21:11:37 +0000
Subject: [PATCH] Update docs to not mention gcse/loadvn and mention memdep and
new stuff. PR3924.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70077 91177308-0d34-0410-b5e6-96231b3b80d8
---
docs/AliasAnalysis.html | 36 ++++++++++++------------------------
1 file changed, 12 insertions(+), 24 deletions(-)
diff --git a/docs/AliasAnalysis.html b/docs/AliasAnalysis.html
index 97a813344d8..a89903d2af8 100644
--- a/docs/AliasAnalysis.html
+++ b/docs/AliasAnalysis.html
@@ -36,7 +36,7 @@
Using alias analysis results
@@ -537,16 +537,16 @@ preference, these are...
-
The load-vn pass uses alias analysis to provide value numbering
-information for load instructions and pointer values. If your analysis
-or transformation can be modeled in a form that uses value numbering
-information, you don't have to do anything special to handle load instructions:
-just use the load-vn pass, which uses alias analysis.
+
The memdep pass uses alias analysis to provide high-level dependence
+information about memory-using instructions. This will tell you which store
+feeds into a load, for example. It uses caching and other techniques to be
+efficient, and is used by Dead Store Elimination, GVN, and memcpy optimizations.
+
@@ -710,7 +710,7 @@ aggressive local analysis that "knows" many important facts:
for internal global variables that don't "have their address taken". If a
global does not have its address taken, the pass knows that no pointers alias
the global. This pass also keeps track of functions that it knows never access
-memory or never read memory. This allows certain optimizations (e.g. GCSE) to
+memory or never read memory. This allows certain optimizations (e.g. GVN) to
eliminate call instructions entirely.
@@ -855,26 +855,14 @@ pointer.
-
The -load-vn pass uses alias analysis to "value
-number" loads and pointers values, which is used by the GCSE pass to
-eliminate instructions. The -load-vn pass relies on alias information
-and must-alias information. This combination of passes can make the following
-transformations:
-
-
-- Redundant load instructions are eliminated.
-- Load instructions that follow a store to the same location are replaced with
-the stored value ("store forwarding").
-- Pointers values (e.g. formal arguments) that must-alias simpler expressions
-(e.g. global variables or the null pointer) are replaced. Note that this
-implements transformations like "virtual method resolution", turning indirect
-calls into direct calls.
-
+
These passes use AliasAnalysis information to reason about loads and stores.
+