#include "source/opt/licm_pass.h"
#include <queue>
#include "source/opt/module.h"
#include "source/opt/pass.h"
namespace spvtools {
namespace opt {
Pass::Status LICMPass::Process() { … }
Pass::Status LICMPass::ProcessIRContext() { … }
Pass::Status LICMPass::ProcessFunction(Function* f) { … }
Pass::Status LICMPass::ProcessLoop(Loop* loop, Function* f) { … }
Pass::Status LICMPass::AnalyseAndHoistFromBB(
Loop* loop, Function* f, BasicBlock* bb,
std::vector<BasicBlock*>* loop_bbs) { … }
bool LICMPass::IsImmediatelyContainedInLoop(Loop* loop, Function* f,
BasicBlock* bb) { … }
bool LICMPass::HoistInstruction(Loop* loop, Instruction* inst) { … }
}
}