LLVM 19.0.0git
|
The base class for IR Change classes. More...
#include "llvm/SandboxIR/Tracker.h"
Public Member Functions | |
IRChangeBase (Tracker &Parent) | |
virtual void | revert ()=0 |
This runs when changes get reverted. | |
virtual void | accept ()=0 |
This runs when changes get accepted. | |
virtual | ~IRChangeBase ()=default |
unsigned | getIdx () const |
\Returns the index of this change by iterating over all changes in the tracker. | |
void | dumpCommon (raw_ostream &OS) const |
virtual void | dump (raw_ostream &OS) const =0 |
virtual LLVM_DUMP_METHOD void | dump () const =0 |
Protected Attributes | |
Tracker & | Parent |
Friends | |
raw_ostream & | operator<< (raw_ostream &OS, const IRChangeBase &C) |
IRChangeBase::IRChangeBase | ( | Tracker & | Parent | ) |
Definition at line 18 of file Tracker.cpp.
References assert(), llvm::sandboxir::Tracker::InMiddleOfCreatingChange, llvm::sandboxir::Tracker::isTracking(), and Parent.
|
virtualdefault |
|
pure virtual |
This runs when changes get accepted.
Implemented in llvm::sandboxir::UseSet, llvm::sandboxir::EraseFromParent, llvm::sandboxir::RemoveFromParent, and llvm::sandboxir::MoveInstr.
|
pure virtual |
|
pure virtual |
|
inline |
Definition at line 75 of file Tracker.h.
Referenced by llvm::sandboxir::UseSet::dump(), llvm::sandboxir::EraseFromParent::dump(), llvm::sandboxir::RemoveFromParent::dump(), and llvm::sandboxir::MoveInstr::dump().
unsigned IRChangeBase::getIdx | ( | ) | const |
\Returns the index of this change by iterating over all changes in the tracker.
This is only used for debugging.
Definition at line 28 of file Tracker.cpp.
References llvm::find_if(), Parent, and Ptr.
Referenced by dumpCommon().
|
pure virtual |
This runs when changes get reverted.
Implemented in llvm::sandboxir::UseSet, llvm::sandboxir::EraseFromParent, llvm::sandboxir::RemoveFromParent, and llvm::sandboxir::MoveInstr.
|
friend |
|
protected |
Definition at line 62 of file Tracker.h.
Referenced by getIdx(), IRChangeBase(), and llvm::sandboxir::EraseFromParent::revert().