From b81f47d19131bbc92192cf536d9f6da546cebab7 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Fri, 8 May 2009 20:38:54 +0000 Subject: Make the SCEV* form of getSCEVAtScope public, to allow ScalarEvolution clients to use it. llvm-svn: 71258 --- llvm/lib/Analysis/ScalarEvolution.cpp | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) (limited to 'llvm/lib/Analysis') diff --git a/llvm/lib/Analysis/ScalarEvolution.cpp b/llvm/lib/Analysis/ScalarEvolution.cpp index c43aad39875..8b48b78da41 100644 --- a/llvm/lib/Analysis/ScalarEvolution.cpp +++ b/llvm/lib/Analysis/ScalarEvolution.cpp @@ -2721,9 +2721,16 @@ ComputeBackedgeTakenCountExhaustively(const Loop *L, Value *Cond, bool ExitWhen) return UnknownValue; } -/// getSCEVAtScope - Compute the value of the specified expression within the -/// indicated loop (which may be null to indicate in no loop). If the -/// expression cannot be evaluated, return UnknownValue. +/// getSCEVAtScope - Return a SCEV expression handle for the specified value +/// at the specified scope in the program. The L value specifies a loop +/// nest to evaluate the expression at, where null is the top-level or a +/// specified loop is immediately inside of the loop. +/// +/// This method can be used to compute the exit value for a variable defined +/// in a loop by querying what the value will hold in the parent loop. +/// +/// If this value is not computable at this scope, a SCEVCouldNotCompute +/// object is returned. SCEVHandle ScalarEvolution::getSCEVAtScope(const SCEV *V, const Loop *L) { // FIXME: this should be turned into a virtual method on SCEV! @@ -2897,16 +2904,8 @@ SCEVHandle ScalarEvolution::getSCEVAtScope(const SCEV *V, const Loop *L) { assert(0 && "Unknown SCEV type!"); } -/// getSCEVAtScope - Return a SCEV expression handle for the specified value -/// at the specified scope in the program. The L value specifies a loop -/// nest to evaluate the expression at, where null is the top-level or a -/// specified loop is immediately inside of the loop. -/// -/// This method can be used to compute the exit value for a variable defined -/// in a loop by querying what the value will hold in the parent loop. -/// -/// If this value is not computable at this scope, a SCEVCouldNotCompute -/// object is returned. +/// getSCEVAtScope - This is a convenience function which does +/// getSCEVAtScope(getSCEV(V), L). SCEVHandle ScalarEvolution::getSCEVAtScope(Value *V, const Loop *L) { return getSCEVAtScope(getSCEV(V), L); } -- cgit v1.2.3