aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2008-08-15 21:31:02 +0000
committerOwen Anderson <resistor@mac.com>2008-08-15 21:31:02 +0000
commit3688f268cb31dbfb5b36131d96af668fa2fc6a8d (patch)
tree5cbacc759b0f9cbea95786085820e7aceaaffa04 /include
parent35115f92e4a1e19921af4ae43db6e31f9a633738 (diff)
downloadexternal_llvm-3688f268cb31dbfb5b36131d96af668fa2fc6a8d.zip
external_llvm-3688f268cb31dbfb5b36131d96af668fa2fc6a8d.tar.gz
external_llvm-3688f268cb31dbfb5b36131d96af668fa2fc6a8d.tar.bz2
Remove GCSE, ValueNumbering, and LoadValueNumbering. These have been deprecated for almost a year; it's finally time for them to go away.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54822 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/Analysis/LoadValueNumbering.h35
-rw-r--r--include/llvm/Analysis/Passes.h7
-rw-r--r--include/llvm/Analysis/ValueNumbering.h75
-rw-r--r--include/llvm/LinkAllPasses.h4
-rw-r--r--include/llvm/Transforms/Scalar.h9
5 files changed, 0 insertions, 130 deletions
diff --git a/include/llvm/Analysis/LoadValueNumbering.h b/include/llvm/Analysis/LoadValueNumbering.h
deleted file mode 100644
index 340a193..0000000
--- a/include/llvm/Analysis/LoadValueNumbering.h
+++ /dev/null
@@ -1,35 +0,0 @@
-//===- llvm/Analysis/LoadValueNumbering.h - Value # Load Insts --*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file defines a value numbering pass that value #'s load instructions.
-// To do this, it finds lexically identical load instructions, and uses alias
-// analysis to determine which loads are guaranteed to produce the same value.
-//
-// This pass builds off of another value numbering pass to implement value
-// numbering for non-load instructions. It uses Alias Analysis so that it can
-// disambiguate the load instructions. The more powerful these base analyses
-// are, the more powerful the resultant analysis will be.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_ANALYSIS_LOAD_VALUE_NUMBERING_H
-#define LLVM_ANALYSIS_LOAD_VALUE_NUMBERING_H
-
-namespace llvm {
-
-class FunctionPass;
-
-/// createLoadValueNumberingPass - Create and return a new pass that implements
-/// the ValueNumbering interface.
-///
-FunctionPass *createLoadValueNumberingPass();
-
-} // End llvm namespace
-
-#endif
diff --git a/include/llvm/Analysis/Passes.h b/include/llvm/Analysis/Passes.h
index 7843aea..7995fc8 100644
--- a/include/llvm/Analysis/Passes.h
+++ b/include/llvm/Analysis/Passes.h
@@ -79,13 +79,6 @@ namespace llvm {
//===--------------------------------------------------------------------===//
//
- // createBasicVNPass - This pass walks SSA def-use chains to trivially
- // identify lexically identical expressions.
- //
- ImmutablePass *createBasicVNPass();
-
- //===--------------------------------------------------------------------===//
- //
// createProfileLoaderPass - This pass loads information from a profile dump
// file.
//
diff --git a/include/llvm/Analysis/ValueNumbering.h b/include/llvm/Analysis/ValueNumbering.h
deleted file mode 100644
index 72452ac..0000000
--- a/include/llvm/Analysis/ValueNumbering.h
+++ /dev/null
@@ -1,75 +0,0 @@
-//===- llvm/Analysis/ValueNumbering.h - Value #'ing Interface ---*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file defines the abstract ValueNumbering interface, which is used as the
-// common interface used by all clients of value numbering information, and
-// implemented by all value numbering implementations.
-//
-// Implementations of this interface must implement the various virtual methods,
-// which automatically provides functionality for the entire suite of client
-// APIs.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_ANALYSIS_VALUE_NUMBERING_H
-#define LLVM_ANALYSIS_VALUE_NUMBERING_H
-
-#include <vector>
-#include "llvm/Pass.h"
-#include "llvm/System/IncludeFile.h"
-
-namespace llvm {
-
-class Value;
-class Instruction;
-
-struct ValueNumbering {
- static char ID; // Class identification, replacement for typeinfo
- virtual ~ValueNumbering(); // We want to be subclassed
-
- /// getEqualNumberNodes - Return nodes with the same value number as the
- /// specified Value. This fills in the argument vector with any equal values.
- ///
- virtual void getEqualNumberNodes(Value *V1,
- std::vector<Value*> &RetVals) const = 0;
-
- ///===-------------------------------------------------------------------===//
- /// Interfaces to update value numbering analysis information as the client
- /// changes the program.
- ///
-
- /// deleteValue - This method should be called whenever an LLVM Value is
- /// deleted from the program, for example when an instruction is found to be
- /// redundant and is eliminated.
- ///
- virtual void deleteValue(Value *V) {}
-
- /// copyValue - This method should be used whenever a preexisting value in the
- /// program is copied or cloned, introducing a new value. Note that analysis
- /// implementations should tolerate clients that use this method to introduce
- /// the same value multiple times: if the analysis already knows about a
- /// value, it should ignore the request.
- ///
- virtual void copyValue(Value *From, Value *To) {}
-
- /// replaceWithNewValue - This method is the obvious combination of the two
- /// above, and it provided as a helper to simplify client code.
- ///
- void replaceWithNewValue(Value *Old, Value *New) {
- copyValue(Old, New);
- deleteValue(Old);
- }
-};
-
-} // End llvm namespace
-
-// Force any file including this header to get the implementation as well
-FORCE_DEFINING_FILE_TO_BE_LINKED(BasicValueNumbering)
-
-#endif
diff --git a/include/llvm/LinkAllPasses.h b/include/llvm/LinkAllPasses.h
index 76a4a2f..d53e7be 100644
--- a/include/llvm/LinkAllPasses.h
+++ b/include/llvm/LinkAllPasses.h
@@ -18,7 +18,6 @@
#include "llvm/Analysis/AliasSetTracker.h"
#include "llvm/Analysis/FindUsedTypes.h"
#include "llvm/Analysis/IntervalPartition.h"
-#include "llvm/Analysis/LoadValueNumbering.h"
#include "llvm/Analysis/LoopVR.h"
#include "llvm/Analysis/Passes.h"
#include "llvm/Analysis/PostDominators.h"
@@ -50,7 +49,6 @@ namespace {
(void) llvm::createStructRetPromotionPass();
(void) llvm::createBasicAliasAnalysisPass();
(void) llvm::createLibCallAliasAnalysisPass(0);
- (void) llvm::createBasicVNPass();
(void) llvm::createBlockPlacementPass();
(void) llvm::createBlockProfilerPass();
(void) llvm::createBreakCriticalEdgesPass();
@@ -65,7 +63,6 @@ namespace {
(void) llvm::createEdgeProfilerPass();
(void) llvm::createFunctionInliningPass();
(void) llvm::createFunctionProfilerPass();
- (void) llvm::createGCSEPass();
(void) llvm::createGlobalDCEPass();
(void) llvm::createGlobalOptimizerPass();
(void) llvm::createGlobalsModRefPass();
@@ -77,7 +74,6 @@ namespace {
(void) llvm::createInternalizePass(false);
(void) llvm::createLCSSAPass();
(void) llvm::createLICMPass();
- (void) llvm::createLoadValueNumberingPass();
(void) llvm::createLoopExtractorPass();
(void) llvm::createLoopSimplifyPass();
(void) llvm::createLoopStrengthReducePass();
diff --git a/include/llvm/Transforms/Scalar.h b/include/llvm/Transforms/Scalar.h
index d62cdc7..b4c3e7c 100644
--- a/include/llvm/Transforms/Scalar.h
+++ b/include/llvm/Transforms/Scalar.h
@@ -78,15 +78,6 @@ FunctionPass *createScalarReplAggregatesPass(signed Threshold = -1);
//===----------------------------------------------------------------------===//
//
-// GCSE - This pass is designed to be a very quick global transformation that
-// eliminates global common subexpressions from a function. It does this by
-// examining the SSA value graph of the function, instead of doing slow
-// bit-vector computations.
-//
-FunctionPass *createGCSEPass();
-
-//===----------------------------------------------------------------------===//
-//
// InductionVariableSimplify - Transform induction variables in a program to all
// use a single canonical induction variable per loop.
//