MCPcopy Create free account
hub / github.com/InoriRus/Kyty / SetPreHeaderBlock

Method SetPreHeaderBlock

source/3rdparty/vulkan/source/opt/loop_descriptor.cpp:318–330  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

316}
317
318void Loop::SetPreHeaderBlock(BasicBlock* preheader) {
319 if (preheader) {
320 assert(!IsInsideLoop(preheader) && "The preheader block is in the loop");
321 assert(preheader->tail()->opcode() == SpvOpBranch &&
322 "The preheader block does not unconditionally branch to the header "
323 "block");
324 assert(preheader->tail()->GetSingleWordOperand(0) ==
325 GetHeaderBlock()->id() &&
326 "The preheader block does not unconditionally branch to the header "
327 "block");
328 }
329 loop_preheader_ = preheader;
330}
331
332BasicBlock* Loop::FindLatchBlock() {
333 CFG* cfg = context_->cfg();

Callers 7

ProtectLoopMethod · 0.80
SplitLoopHeaderMethod · 0.80
PopulateLoopDescMethod · 0.80
SplitLoopMethod · 0.80
PerformUnswitchMethod · 0.80

Calls 4

GetSingleWordOperandMethod · 0.80
opcodeMethod · 0.45
tailMethod · 0.45
idMethod · 0.45

Tested by

no test coverage detected