MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / CMovFlagCond

Function CMovFlagCond

arch/x86/il.cpp:447–465  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

445
446
447static void CMovFlagCond(const int64_t addr, const xed_decoded_inst_t* xedd, LowLevelILFunction& il, BNLowLevelILFlagCondition flag)
448{
449 // keep the true branch but let the false branch goto doneLabel directly
450 LowLevelILLabel trueLabel, doneLabel;
451
452 il.AddInstruction(
453 il.If(
454 il.FlagCondition(flag),
455 trueLabel, doneLabel));
456
457 il.MarkLabel(trueLabel);
458
459 il.AddInstruction(
460 WriteILOperand(il, xedd, addr, 0, 0,
461 ReadILOperand(il, xedd, addr, 1, 1)));
462
463 il.AddInstruction(il.Goto(doneLabel));
464 il.MarkLabel(doneLabel);
465}
466
467
468static void CMovFlagGroup(const int64_t addr, const xed_decoded_inst_t* xedd, LowLevelILFunction& il, uint32_t flag)

Callers 1

Calls 7

FlagConditionMethod · 0.80
WriteILOperandFunction · 0.70
ReadILOperandFunction · 0.70
AddInstructionMethod · 0.45
IfMethod · 0.45
MarkLabelMethod · 0.45
GotoMethod · 0.45

Tested by

no test coverage detected