#include "source/opt/def_use_manager.h"
namespace spvtools {
namespace opt {
namespace analysis {
void DefUseManager::AnalyzeInstDef(Instruction* inst) { … }
void DefUseManager::AnalyzeInstUse(Instruction* inst) { … }
void DefUseManager::AnalyzeInstDefUse(Instruction* inst) { … }
void DefUseManager::UpdateDefUse(Instruction* inst) { … }
Instruction* DefUseManager::GetDef(uint32_t id) { … }
const Instruction* DefUseManager::GetDef(uint32_t id) const { … }
DefUseManager::IdToUsersMap::const_iterator DefUseManager::UsersBegin(
const Instruction* def) const { … }
bool DefUseManager::UsersNotEnd(const IdToUsersMap::const_iterator& iter,
const IdToUsersMap::const_iterator& cached_end,
const Instruction* inst) const { … }
bool DefUseManager::UsersNotEnd(const IdToUsersMap::const_iterator& iter,
const Instruction* inst) const { … }
bool DefUseManager::WhileEachUser(
const Instruction* def, const std::function<bool(Instruction*)>& f) const { … }
bool DefUseManager::WhileEachUser(
uint32_t id, const std::function<bool(Instruction*)>& f) const { … }
void DefUseManager::ForEachUser(
const Instruction* def, const std::function<void(Instruction*)>& f) const { … }
void DefUseManager::ForEachUser(
uint32_t id, const std::function<void(Instruction*)>& f) const { … }
bool DefUseManager::WhileEachUse(
const Instruction* def,
const std::function<bool(Instruction*, uint32_t)>& f) const { … }
bool DefUseManager::WhileEachUse(
uint32_t id, const std::function<bool(Instruction*, uint32_t)>& f) const { … }
void DefUseManager::ForEachUse(
const Instruction* def,
const std::function<void(Instruction*, uint32_t)>& f) const { … }
void DefUseManager::ForEachUse(
uint32_t id, const std::function<void(Instruction*, uint32_t)>& f) const { … }
uint32_t DefUseManager::NumUsers(const Instruction* def) const { … }
uint32_t DefUseManager::NumUsers(uint32_t id) const { … }
uint32_t DefUseManager::NumUses(const Instruction* def) const { … }
uint32_t DefUseManager::NumUses(uint32_t id) const { … }
std::vector<Instruction*> DefUseManager::GetAnnotations(uint32_t id) const { … }
void DefUseManager::AnalyzeDefUse(Module* module) { … }
void DefUseManager::ClearInst(Instruction* inst) { … }
void DefUseManager::EraseUseRecordsOfOperandIds(const Instruction* inst) { … }
bool CompareAndPrintDifferences(const DefUseManager& lhs,
const DefUseManager& rhs) { … }
}
}
}