Example #1
0
Inst *IdivIRBuilder::process(AnalysisProcessor &ap) const {
    this->checkSetup();

    Inst *inst = new Inst(ap.getThreadID(), this->address, this->disas);

    try {
        this->templateMethod(ap, *inst, this->operands, "IDIV");
        ap.incNumberOfExpressions(inst->numberOfElements()); /* Used for statistics */
        ControlFlow::rip(*inst, ap, this->nextAddress);
    }
    catch (std::exception &e) {
        delete inst;
        throw;
    }

    return inst;
}