forked from OSchip/llvm-project
Initial version of LoadValueNumbering interface
llvm-svn: 3539
This commit is contained in:
parent
0653f10c2f
commit
3e4e6974f2
|
@ -0,0 +1,24 @@
|
||||||
|
//===- llvm/Analysis/LoadValueNumbering.h - Value # Load Insts --*- C++ -*-===//
|
||||||
|
//
|
||||||
|
// 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
|
||||||
|
|
||||||
|
class Pass;
|
||||||
|
|
||||||
|
/// createLoadValueNumberingPass - Create and return a new pass that implements
|
||||||
|
/// the ValueNumbering interface.
|
||||||
|
///
|
||||||
|
Pass *createLoadValueNumberingPass();
|
||||||
|
|
||||||
|
#endif
|
Loading…
Reference in New Issue