diff options
Diffstat (limited to 'compiler/optimizing/induction_var_range.h')
-rw-r--r-- | compiler/optimizing/induction_var_range.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/compiler/optimizing/induction_var_range.h b/compiler/optimizing/induction_var_range.h index ab1772bf15..0b980f596a 100644 --- a/compiler/optimizing/induction_var_range.h +++ b/compiler/optimizing/induction_var_range.h @@ -151,6 +151,16 @@ class InductionVarRange { } /** + * Checks if the given phi instruction has been classified as anything by + * induction variable analysis. Returns false for anything that cannot be + * classified statically, such as reductions or other complex cycles. + */ + bool IsClassified(HPhi* phi) const { + HLoopInformation* lp = phi->GetBlock()->GetLoopInformation(); // closest enveloping loop + return (lp != nullptr) && (induction_analysis_->LookupInfo(lp, phi) != nullptr); + } + + /** * Checks if header logic of a loop terminates. Sets trip-count tc if known. */ bool IsFinite(HLoopInformation* loop, /*out*/ int64_t* tc) const; |