MCPcopy Create free account
hub / github.com/ZDoom/Raze / EmitBOUND_R

Method EmitBOUND_R

source/common/scripting/jit/jit_flow.cpp:311–328  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

309}
310
311void JitCompiler::EmitBOUND_R()
312{
313 auto cursor = cc.getCursor();
314 auto label = cc.newLabel();
315 cc.bind(label);
316 auto call = CreateCall<void, int, int>(&JitCompiler::ThrowArrayOutOfBounds);
317 call->setArg(0, regD[A]);
318 call->setArg(1, regD[B]);
319 cc.setCursor(cursor);
320
321 cc.cmp(regD[A], regD[B]);
322 cc.jae(label);
323
324 JitLineInfo info;
325 info.Label = label;
326 info.LineNumber = sfunc->PCToLine(pc);
327 LineInfo.Push(info);
328}
329
330void JitCompiler::ThrowArrayOutOfBounds(int index, int size)
331{

Callers

nothing calls this directly

Calls 7

getCursorMethod · 0.80
PCToLineMethod · 0.80
newLabelMethod · 0.45
bindMethod · 0.45
setArgMethod · 0.45
setCursorMethod · 0.45
PushMethod · 0.45

Tested by

no test coverage detected