mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-15 04:30:12 +00:00
967a04442d
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1596 91177308-0d34-0410-b5e6-96231b3b80d8
26 lines
821 B
C++
26 lines
821 B
C++
//===- llvm/Transforms/Scalar/IndVarSimplify.h - IV Eliminate ----*- C++ -*--=//
|
|
//
|
|
// InductionVariableSimplify - Transform induction variables in a program
|
|
// to all use a single cannonical induction variable per loop.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef LLVM_TRANSFORMS_SCALAR_INDVARSIMPLIFY_H
|
|
#define LLVM_TRANSFORMS_SCALAR_INDVARSIMPLIFY_H
|
|
|
|
#include "llvm/Pass.h"
|
|
|
|
namespace cfg { class LoopInfo; }
|
|
|
|
struct InductionVariableSimplify : public MethodPass {
|
|
static bool doit(Method *M, cfg::LoopInfo &Loops);
|
|
|
|
virtual bool runOnMethod(Method *M);
|
|
|
|
virtual void getAnalysisUsageInfo(Pass::AnalysisSet &Required,
|
|
Pass::AnalysisSet &Destroyed,
|
|
Pass::AnalysisSet &Provided);
|
|
};
|
|
|
|
#endif
|