|
| Capstone2LlvmIrTranslatorArm_impl (llvm::Module *m, cs_mode basic=CS_MODE_ARM, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
virtual bool | isAllowedBasicMode (cs_mode m) override |
|
virtual bool | isAllowedExtraMode (cs_mode m) override |
|
virtual uint32_t | getArchByteSize () override |
|
| Capstone2LlvmIrTranslator_impl (cs_arch a, cs_mode basic, cs_mode extra, llvm::Module *m) |
|
virtual | ~Capstone2LlvmIrTranslator_impl () |
|
virtual void | setIgnoreUnexpectedOperands (bool f) override |
|
virtual void | setIgnoreUnhandledInstructions (bool f) override |
|
virtual void | setGeneratePseudoAsmFunctions (bool f) override |
|
virtual bool | isIgnoreUnexpectedOperands () const override |
|
virtual bool | isIgnoreUnhandledInstructions () const override |
|
virtual bool | isGeneratePseudoAsmFunctions () const override |
|
virtual void | modifyBasicMode (cs_mode m) override |
|
virtual void | modifyExtraMode (cs_mode m) override |
|
virtual uint32_t | getArchBitSize () override |
|
virtual TranslationResult | translate (const uint8_t *bytes, std::size_t size, retdec::common::Address a, llvm::IRBuilder<> &irb, std::size_t count=0, bool stopOnBranch=false) override |
|
virtual TranslationResultOne | translateOne (const uint8_t *&bytes, std::size_t &size, retdec::common::Address &a, llvm::IRBuilder<> &irb) override |
|
virtual const csh & | getCapstoneEngine () const override |
|
virtual cs_arch | getArchitecture () const override |
|
virtual cs_mode | getBasicMode () const override |
|
virtual cs_mode | getExtraMode () const override |
|
virtual bool | hasDelaySlot (uint32_t id) const override |
|
virtual bool | hasDelaySlotTypical (uint32_t id) const override |
|
virtual bool | hasDelaySlotLikely (uint32_t id) const override |
|
virtual std::size_t | getDelaySlot (uint32_t id) const override |
|
virtual llvm::GlobalVariable * | getRegister (uint32_t r) override |
|
virtual std::string | getRegisterName (uint32_t r) const override |
|
virtual uint32_t | getRegisterBitSize (uint32_t r) const override |
|
virtual uint32_t | getRegisterByteSize (uint32_t r) const override |
|
virtual llvm::Type * | getRegisterType (uint32_t r) const override |
|
virtual bool | isControlFlowInstruction (cs_insn &i) const override |
|
virtual bool | isCallInstruction (cs_insn &i) const override |
|
virtual bool | isReturnInstruction (cs_insn &i) const override |
|
virtual bool | isBranchInstruction (cs_insn &i) const override |
|
virtual bool | isCondBranchInstruction (cs_insn &i) const override |
|
virtual llvm::Module * | getModule () const override |
|
virtual bool | isSpecialAsm2LlvmMapGlobal (llvm::Value *v) const override |
|
virtual llvm::StoreInst * | isSpecialAsm2LlvmInstr (llvm::Value *v) const override |
|
virtual llvm::GlobalVariable * | getAsm2LlvmMapGlobalVariable () const override |
|
virtual bool | isCallFunction (llvm::Function *f) const override |
|
virtual bool | isCallFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::BranchInst * | isInConditionCallFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::Function * | getCallFunction () const override |
|
virtual bool | isReturnFunction (llvm::Function *f) const override |
|
virtual bool | isReturnFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::BranchInst * | isInConditionReturnFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::Function * | getReturnFunction () const override |
|
virtual bool | isBranchFunction (llvm::Function *f) const override |
|
virtual bool | isBranchFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::BranchInst * | isInConditionBranchFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::Function * | getBranchFunction () const override |
|
virtual bool | isCondBranchFunction (llvm::Function *f) const override |
|
virtual bool | isCondBranchFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::BranchInst * | isInConditionCondBranchFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::Function * | getCondBranchFunction () const override |
|
virtual bool | isAnyPseudoFunction (llvm::Function *f) const override |
|
virtual bool | isAnyPseudoFunctionCall (llvm::CallInst *c) const override |
|
virtual llvm::GlobalVariable * | isRegister (llvm::Value *v) const override |
|
virtual uint32_t | getCapstoneRegister (llvm::GlobalVariable *gv) const override |
|
virtual bool | isPseudoAsmFunction (llvm::Function *f) const override |
|
virtual bool | isPseudoAsmFunctionCall (llvm::CallInst *c) const override |
|
virtual const std::set< llvm::Function * > & | getPseudoAsmFunctions () const override |
|
virtual | ~Capstone2LlvmIrTranslator ()=default |
|
|
virtual void | initializeArchSpecific () override |
|
virtual void | initializeRegNameMap () override |
|
virtual void | initializeRegTypeMap () override |
|
virtual void | initializePseudoCallInstructionIDs () override |
|
virtual void | generateEnvironmentArchSpecific () override |
|
virtual void | generateDataLayout () override |
|
virtual void | generateRegisters () override |
|
virtual uint32_t | getCarryRegister () override |
|
virtual void | translateInstruction (cs_insn *i, llvm::IRBuilder<> &irb) override |
|
llvm::Value * | getCurrentPc (cs_insn *i) |
|
virtual llvm::Value * | loadRegister (uint32_t r, llvm::IRBuilder<> &irb, llvm::Type *dstType=nullptr, eOpConv ct=eOpConv::THROW) override |
|
virtual llvm::Value * | loadOp (cs_arm_op &op, llvm::IRBuilder<> &irb, llvm::Type *ty=nullptr, bool lea=false) override |
|
virtual llvm::Instruction * | storeRegister (uint32_t r, llvm::Value *val, llvm::IRBuilder<> &irb, eOpConv ct=eOpConv::SEXT_TRUNC_OR_BITCAST) override |
|
virtual llvm::Instruction * | storeOp (cs_arm_op &op, llvm::Value *val, llvm::IRBuilder<> &irb, eOpConv ct=eOpConv::SEXT_TRUNC_OR_BITCAST) override |
|
llvm::Value * | generateInsnConditionCode (llvm::IRBuilder<> &irb, cs_arm *ai) |
|
llvm::Value * | generateOperandShift (llvm::IRBuilder<> &irb, cs_arm_op &op, llvm::Value *val) |
|
llvm::Value * | generateShiftAsr (llvm::IRBuilder<> &irb, llvm::Value *val, llvm::Value *n) |
|
llvm::Value * | generateShiftLsl (llvm::IRBuilder<> &irb, llvm::Value *val, llvm::Value *n) |
|
llvm::Value * | generateShiftLsr (llvm::IRBuilder<> &irb, llvm::Value *val, llvm::Value *n) |
|
llvm::Value * | generateShiftRor (llvm::IRBuilder<> &irb, llvm::Value *val, llvm::Value *n) |
|
llvm::Value * | generateShiftRrx (llvm::IRBuilder<> &irb, llvm::Value *val, llvm::Value *n) |
|
uint32_t | sysregNumberTranslation (uint32_t r) |
|
virtual bool | isOperandRegister (cs_arm_op &op) override |
|
virtual uint8_t | getOperandAccess (cs_arm_op &op) override |
|
void | translateAdc (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateAdd (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateAnd (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateB (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateBl (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateCbnz (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateCbz (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateClz (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateEor (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateLdmStm (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateLdr (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateLdrd (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateMla (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateMls (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateMov (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateMovt (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateMovw (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateMul (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateNop (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateOrr (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateRev (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateSbc (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateShifts (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateStr (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateSub (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateUmlal (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateUmull (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateUxtah (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateUxtb (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateUxtb16 (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
void | translateUxth (cs_insn *i, cs_arm *ai, llvm::IRBuilder<> &irb) |
|
llvm::Value * | generateTypeConversion (llvm::IRBuilder<> &irb, llvm::Value *from, llvm::Type *to, eOpConv ct) |
|
llvm::Type * | _checkTypeConversion (llvm::IRBuilder<> &irb, llvm::Type *to, eOpConv ct) |
|
virtual void | initialize () |
|
virtual void | openHandle () |
|
virtual void | configureHandle () |
|
virtual void | closeHandle () |
|
virtual void | generateEnvironment () |
|
virtual void | generateSpecialAsm2LlvmMapGlobal () |
|
virtual llvm::StoreInst * | generateSpecialAsm2LlvmInstr (llvm::IRBuilder<> &irb, cs_insn *i) |
|
virtual void | generateCallFunction () |
|
virtual llvm::CallInst * | generateCallFunctionCall (llvm::IRBuilder<> &irb, llvm::Value *t) |
|
virtual llvm::CallInst * | generateCondCallFunctionCall (llvm::IRBuilder<> &irb, llvm::Value *cond, llvm::Value *t) |
|
virtual void | generateReturnFunction () |
|
virtual llvm::CallInst * | generateReturnFunctionCall (llvm::IRBuilder<> &irb, llvm::Value *t) |
|
virtual llvm::CallInst * | generateCondReturnFunctionCall (llvm::IRBuilder<> &irb, llvm::Value *cond, llvm::Value *t) |
|
virtual void | generateBranchFunction () |
|
virtual llvm::CallInst * | generateBranchFunctionCall (llvm::IRBuilder<> &irb, llvm::Value *t) |
|
virtual void | generateCondBranchFunction () |
|
virtual llvm::CallInst * | generateCondBranchFunctionCall (llvm::IRBuilder<> &irb, llvm::Value *cond, llvm::Value *t) |
|
virtual llvm::GlobalVariable * | createRegister (uint32_t r, llvm::GlobalValue::LinkageTypes lt=llvm::GlobalValue::LinkageTypes::InternalLinkage, llvm::Constant *initializer=nullptr) |
|
virtual llvm::Value * | loadRegister (uint32_t r, llvm::IRBuilder<> &irb, llvm::Type *dstType=nullptr, eOpConv ct=eOpConv::THROW)=0 |
|
llvm::Value * | loadOp (cs_arm *ci, llvm::IRBuilder<> &irb, std::size_t idx, llvm::Type *loadType=nullptr, llvm::Type *dstType=nullptr, eOpConv ct=eOpConv::NOTHING) |
|
virtual llvm::Instruction * | storeRegister (uint32_t r, llvm::Value *val, llvm::IRBuilder<> &irb, eOpConv ct=eOpConv::SEXT_TRUNC_OR_BITCAST)=0 |
|
virtual llvm::Instruction * | storeOp (cs_arm_op &op, llvm::Value *val, llvm::IRBuilder<> &irb, eOpConv ct=eOpConv::SEXT_TRUNC_OR_BITCAST)=0 |
|
std::vector< llvm::Value * > | _loadOps (cs_arm *ci, llvm::IRBuilder<> &irb, std::size_t opCnt, bool strictCheck=true, llvm::Type *loadType=nullptr, llvm::Type *dstType=nullptr, eOpConv ct=eOpConv::NOTHING) |
|
std::vector< llvm::Value * > | _loadOpsUniversal (cs_arm *ci, llvm::IRBuilder<> &irb, std::size_t opCnt, bool strictCheck=true, eOpConv ict=eOpConv::SEXT_TRUNC_OR_BITCAST, eOpConv fct=eOpConv::FPCAST_OR_BITCAST) |
|
llvm::Value * | loadOpUnary (cs_arm *ci, llvm::IRBuilder<> &irb, llvm::Type *dstType=nullptr, llvm::Type *loadType=nullptr, eOpConv ct=eOpConv::THROW) |
|
std::pair< llvm::Value *, llvm::Value * > | loadOpBinary (cs_arm *ci, llvm::IRBuilder<> &irb, eOpConv ct=eOpConv::NOTHING) |
|
std::pair< llvm::Value *, llvm::Value * > | loadOpBinary (cs_arm *ci, llvm::IRBuilder<> &irb, eOpConv ict, eOpConv fct) |
|
std::pair< llvm::Value *, llvm::Value * > | loadOpBinary (cs_arm *ci, llvm::IRBuilder<> &irb, llvm::Type *loadType, llvm::Type *dstType=nullptr, eOpConv ct=eOpConv::NOTHING) |
|
llvm::Value * | loadOpBinaryOp0 (cs_arm *ci, llvm::IRBuilder<> &irb, llvm::Type *ty=nullptr) |
|
llvm::Value * | loadOpBinaryOp1 (cs_arm *ci, llvm::IRBuilder<> &irb, llvm::Type *ty=nullptr) |
|
std::tuple< llvm::Value *, llvm::Value *, llvm::Value * > | loadOpTernary (cs_arm *ci, llvm::IRBuilder<> &irb, eOpConv ct=eOpConv::NOTHING) |
|
std::tuple< llvm::Value *, llvm::Value *, llvm::Value * > | loadOpTernary (cs_arm *ci, llvm::IRBuilder<> &irb, eOpConv ict, eOpConv fct) |
|
std::tuple< llvm::Value *, llvm::Value *, llvm::Value * > | loadOpTernary (cs_arm *ci, llvm::IRBuilder<> &irb, llvm::Type *loadType, llvm::Type *dstType=nullptr, eOpConv ct=eOpConv::NOTHING) |
|
std::pair< llvm::Value *, llvm::Value * > | loadOpBinaryOrTernaryOp1Op2 (cs_arm *ai, llvm::IRBuilder<> &irb, eOpConv ct=eOpConv::NOTHING) |
|
std::pair< llvm::Value *, llvm::Value * > | loadOpBinaryOrTernaryOp1Op2 (cs_arm *ai, llvm::IRBuilder<> &irb, eOpConv ict, eOpConv fct) |
|
std::tuple< llvm::Value *, llvm::Value *, llvm::Value * > | loadOpQuaternaryOp1Op2Op3 (cs_arm *ai, llvm::IRBuilder<> &irb) |
|
llvm::Value * | generateCarryAdd (llvm::Value *add, llvm::Value *op0, llvm::IRBuilder<> &irb) |
|
llvm::Value * | generateCarryAddC (llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb, llvm::Value *cf=nullptr) |
|
llvm::Value * | generateCarryAddInt4 (llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb) |
|
llvm::Value * | generateCarryAddCInt4 (llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb, llvm::Value *cf=nullptr) |
|
llvm::Value * | generateOverflowAdd (llvm::Value *add, llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb) |
|
llvm::Value * | generateOverflowAddC (llvm::Value *add, llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb, llvm::Value *cf=nullptr) |
|
llvm::Value * | generateOverflowSub (llvm::Value *sub, llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb) |
|
llvm::Value * | generateOverflowSubC (llvm::Value *sub, llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb, llvm::Value *cf=nullptr) |
|
llvm::Value * | generateBorrowSub (llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb) |
|
llvm::Value * | generateBorrowSubC (llvm::Value *sub, llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb, llvm::Value *cf=nullptr) |
|
llvm::Value * | generateBorrowSubInt4 (llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb) |
|
llvm::Value * | generateBorrowSubCInt4 (llvm::Value *op0, llvm::Value *op1, llvm::IRBuilder<> &irb, llvm::Value *cf=nullptr) |
|
llvm::IntegerType * | getDefaultType () |
|
llvm::Value * | getThisInsnAddress (cs_insn *i) |
|
llvm::Value * | getNextInsnAddress (cs_insn *i) |
|
llvm::BranchInst * | getCondBranchForInsnInIfThen (llvm::Instruction *i) const |
|
std::string | getPseudoAsmFunctionName (cs_insn *insn) |
|
llvm::Function * | getPseudoAsmFunction (cs_insn *insn, llvm::FunctionType *type, const std::string &name="") |
|
llvm::Function * | getPseudoAsmFunction (cs_insn *insn, llvm::Type *retType, llvm::ArrayRef< llvm::Type * > params, const std::string &name="") |
|
void | translatePseudoAsmOp0Fnc (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmFncOp0 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmOp0FncOp0 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmFncOp0Op1 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmOp0FncOp1 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmOp0FncOp0Op1 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmFncOp0Op1Op2 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmOp0FncOp1Op2 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmOp0FncOp0Op1Op2 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmFncOp0Op1Op2Op3 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmOp0FncOp1Op2Op3 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmOp0FncOp0Op1Op2Op3 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | translatePseudoAsmOp0Op1FncOp0Op1Op2Op3 (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
virtual uint8_t | getOperandAccess (cs_arm_op &op) |
|
virtual void | translatePseudoAsmGeneric (cs_insn *i, cs_arm *ci, llvm::IRBuilder<> &irb) |
|
void | throwUnexpectedOperands (cs_insn *i, const std::string comment="") |
|
void | throwUnhandledInstructions (cs_insn *i, const std::string comment="") |
|
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createArch (cs_arch a, llvm::Module *m, cs_mode basic=CS_MODE_LITTLE_ENDIAN, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createArm (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createThumb (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createArm64 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createMips32 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createMips64 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createMips3 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createMips32R6 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createX86_16 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createX86_32 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createX86_64 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createPpc32 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createPpc64 (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createPpcQpx (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createSparc (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createSysz (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
static std::unique_ptr< Capstone2LlvmIrTranslator > | createXcore (llvm::Module *m, cs_mode extra=CS_MODE_LITTLE_ENDIAN) |
|
enum class | eOpConv |
|
csh | _handle |
|
cs_arch | _arch |
|
cs_mode | _basicMode |
|
cs_mode | _extraMode |
|
cs_mode | _origBasicMode |
|
llvm::Module * | _module |
|
llvm::GlobalVariable * | _asm2llvmGv |
|
llvm::Function * | _callFunction |
|
llvm::Function * | _returnFunction |
|
llvm::Function * | _branchFunction |
|
llvm::Function * | _condBranchFunction |
|
llvm::GlobalValue::LinkageTypes | _regLt |
|
std::map< std::pair< std::string, llvm::FunctionType * >, llvm::Function * > | _insn2asmFunctions |
| (fnc_name, fnc_type) -> fnc More...
|
|
std::set< llvm::Function * > | _asmFunctions |
|
std::map< uint32_t, std::string > | _reg2name |
|
std::map< uint32_t, llvm::Type * > | _reg2type |
|
std::map< llvm::GlobalVariable *, uint32_t > | _llvm2CapstoneRegs |
|
std::map< uint32_t, llvm::GlobalVariable * > | _capstone2LlvmRegs |
|
llvm::CallInst * | _branchGenerated |
|
bool | _inCondition |
|
llvm::Value * | op0 |
|
llvm::Value * | op1 |
|
llvm::Value * | op2 |
|
llvm::Value * | op3 |
|
cs_insn * | _insn |
| Capstone instruction being currently translated. More...
|
|
std::set< unsigned int > | _callInsnIds |
|
std::set< unsigned int > | _returnInsnIds |
|
std::set< unsigned int > | _branchInsnIds |
|
std::set< unsigned int > | _condBranchInsnIds |
|
std::set< unsigned int > | _controlFlowInsnIds |
|
bool | _ignoreUnexpectedOperands |
|
bool | _ignoreUnhandledInstructions |
|
bool | _generatePseudoAsmFunctions |
|