| Index: src/IceTargetLowering.h
|
| diff --git a/src/IceTargetLowering.h b/src/IceTargetLowering.h
|
| index 0095a39d53f4625024960c84405d96e955ae4898..f35983f1846e6bf9ed43ff05a238bb470cbfd241 100644
|
| --- a/src/IceTargetLowering.h
|
| +++ b/src/IceTargetLowering.h
|
| @@ -65,6 +65,9 @@ public:
|
| void setNext(InstList::iterator N) { Next = N; }
|
| void rewind();
|
| void setInsertPoint(const InstList::iterator &Position) { Next = Position; }
|
| + void availabilityReset();
|
| + void availabilityUpdate();
|
| + Variable *availabilityGet(Operand *Src) const;
|
|
|
| private:
|
| /// Node is the argument to Inst::updateVars().
|
| @@ -85,6 +88,11 @@ private:
|
| InstList::iterator Begin;
|
| /// End is a copy of Insts.end(), used if Next needs to be advanced.
|
| InstList::iterator End;
|
| + /// LastDest and LastSrc capture the parameters of the last "Dest=Src" simple
|
| + /// assignment inserted (provided Src is a variable). This is used for simple
|
| + /// availability analysis.
|
| + Variable *LastDest = nullptr;
|
| + Variable *LastSrc = nullptr;
|
|
|
| void skipDeleted(InstList::iterator &I) const;
|
| void advanceForward(InstList::iterator &I) const;
|
|
|