

def read(self, x86_operand):
    if isinstance(x86_operand, barf.arch.x86.x86base.X86ImmediateOperand):
        reil_operand = ReilImmediateOperand(x86_operand.immediate, x86_operand.size)
    elif isinstance(x86_operand, barf.arch.x86.x86base.X86RegisterOperand):
        reil_operand = ReilRegisterOperand(x86_operand.name, x86_operand.size)
    elif isinstance(x86_operand, barf.arch.x86.x86base.X86MemoryOperand):
        addr = self._compute_memory_address(x86_operand)
        reil_operand = self.temporal(x86_operand.size)
        self.add(self._builder.gen_ldm(addr, reil_operand))
    else:
        raise Exception()
    return reil_operand

dataset/ETHPy150Open programa-stic/barf-project/barf/barf/arch/x86/x86translator.py X86TranslationBuilder.read/original