Update comments and documentation to reflect that GCSE and ValueNumbering are

deprecated by the GVN and GVNPRE passes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51983 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Matthijs Kooijman
2008-06-05 07:55:49 +00:00
parent 67944fc427
commit 845f524c25
5 changed files with 34 additions and 3 deletions

View File

@ -298,7 +298,7 @@ perl -e '$/ = undef; for (split(/\n/, <>)) { s:^ *///? ?::; print " <p>\n" if !
<!-------------------------------------------------------------------------- --> <!-------------------------------------------------------------------------- -->
<div class="doc_subsection"> <div class="doc_subsection">
<a name="basicvn">Basic Value Numbering (default GVN impl)</a> <a name="basicvn">Basic Value Numbering (default Value Numbering impl)</a>
</div> </div>
<div class="doc_text"> <div class="doc_text">
<p> <p>
@ -307,6 +307,12 @@ perl -e '$/ = undef; for (split(/\n/, <>)) { s:^ *///? ?::; print " <p>\n" if !
lexically identical expressions. This does not require any ahead of time lexically identical expressions. This does not require any ahead of time
analysis, so it is a very fast default implementation. analysis, so it is a very fast default implementation.
</p> </p>
<p>
The ValueNumbering analysis passes are mostly deprecated. They are only used
by the <a href="#gcse">Global Common Subexpression Elimination pass</a>, which
is deprecated by the <a href="#gvn">Global Value Numbering pass</a> (which
does its value numbering on its own).
</p>
</div> </div>
<!-------------------------------------------------------------------------- --> <!-------------------------------------------------------------------------- -->
@ -859,9 +865,13 @@ perl -e '$/ = undef; for (split(/\n/, <>)) { s:^ *///? ?::; print " <p>\n" if !
<p> <p>
This pass is designed to be a very quick global transformation that This pass is designed to be a very quick global transformation that
eliminates global common subexpressions from a function. It does this by eliminates global common subexpressions from a function. It does this by
using an existing value numbering implementation to identify the common using an existing value numbering analysis pass to identify the common
subexpressions, eliminating them when possible. subexpressions, eliminating them when possible.
</p> </p>
<p>
This pass is deprecated by the <a href="#gvn">Global Value Numbering pass</a>
(which does a better job with its own value numbering).
</p>
</div> </div>
<!-------------------------------------------------------------------------- --> <!-------------------------------------------------------------------------- -->
@ -899,6 +909,10 @@ perl -e '$/ = undef; for (split(/\n/, <>)) { s:^ *///? ?::; print " <p>\n" if !
This pass performs global value numbering to eliminate fully redundant This pass performs global value numbering to eliminate fully redundant
instructions. It also performs simple dead load elimination. instructions. It also performs simple dead load elimination.
</p> </p>
<p>
Note that this pass does the value numbering itself, it does not use the
ValueNumbering analysis passes.
</p>
</div> </div>
<!-------------------------------------------------------------------------- --> <!-------------------------------------------------------------------------- -->
@ -916,6 +930,10 @@ perl -e '$/ = undef; for (split(/\n/, <>)) { s:^ *///? ?::; print " <p>\n" if !
live ranges, and should be used with caution on platforms that are very live ranges, and should be used with caution on platforms that are very
sensitive to register pressure. sensitive to register pressure.
</p> </p>
<p>
Note that this pass does the value numbering itself, it does not use the
ValueNumbering analysis passes.
</p>
</div> </div>
<!-------------------------------------------------------------------------- --> <!-------------------------------------------------------------------------- -->

View File

@ -10,6 +10,10 @@
// This file implements the non-abstract Value Numbering methods as well as a // This file implements the non-abstract Value Numbering methods as well as a
// default implementation for the analysis group. // default implementation for the analysis group.
// //
// The ValueNumbering analysis pass is mostly deprecated. It is only used by the
// Global Common Subexpression Elimination pass, which is deprecated by the
// Global Value Numbering pass (which does its value numbering on its own).
//
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
#include "llvm/Analysis/Passes.h" #include "llvm/Analysis/Passes.h"

View File

@ -9,9 +9,12 @@
// //
// This pass is designed to be a very quick global transformation that // This pass is designed to be a very quick global transformation that
// eliminates global common subexpressions from a function. It does this by // eliminates global common subexpressions from a function. It does this by
// using an existing value numbering implementation to identify the common // using an existing value numbering analysis pass to identify the common
// subexpressions, eliminating them when possible. // subexpressions, eliminating them when possible.
// //
// This pass is deprecated by the Global Value Numbering pass (which does a
// better job with its own value numbering).
//
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
#define DEBUG_TYPE "gcse" #define DEBUG_TYPE "gcse"

View File

@ -10,6 +10,9 @@
// This pass performs global value numbering to eliminate fully redundant // This pass performs global value numbering to eliminate fully redundant
// instructions. It also performs simple dead load elimination. // instructions. It also performs simple dead load elimination.
// //
// Note that this pass does the value numbering itself, it does not use the
// ValueNumbering analysis passes.
//
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
#define DEBUG_TYPE "gvn" #define DEBUG_TYPE "gvn"

View File

@ -16,6 +16,9 @@
// live ranges, and should be used with caution on platforms that are very // live ranges, and should be used with caution on platforms that are very
// sensitive to register pressure. // sensitive to register pressure.
// //
// Note that this pass does the value numbering itself, it does not use the
// ValueNumbering analysis passes.
//
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//
#define DEBUG_TYPE "gvnpre" #define DEBUG_TYPE "gvnpre"