8#ifndef TRITON_IRBUILDER_H
9#define TRITON_IRBUILDER_H
61 template <
typename T>
void collectNodes(T& items)
const;
64 void collectNodes(std::vector<triton::arch::OperandWrapper>& operands)
const;
67 template <
typename T>
void collectUnsymbolizedNodes(T& items)
const;
70 void collectUnsymbolizedNodes(std::vector<triton::arch::OperandWrapper>& operands)
const;
The abstract architecture class.
This class is used to represent a basic block.
This class is used to represent an instruction.
virtual TRITON_EXPORT ~IrBuilder()
Destructor.
TRITON_EXPORT IrBuilder(triton::arch::Architecture *architecture, const triton::modes::SharedModes &modes, const triton::ast::SharedAstContext &astCtxt, triton::engines::symbolic::SymbolicEngine *symbolicEngine, triton::engines::taint::TaintEngine *taintEngine)
Constructor.
triton::arch::SemanticsInterface * arm32Isa
ARM32 ISA builder.
triton::arch::SemanticsInterface * aarch64Isa
AArch64 ISA builder.
TRITON_EXPORT triton::arch::exception_e buildSemantics(triton::arch::Instruction &inst)
Builds the semantics of the instruction. Returns triton::arch::NO_FAULT if succeed.
TRITON_EXPORT void preIrInit(triton::arch::Instruction &inst)
Everything which must be done before buiding the semantics.
TRITON_EXPORT void postIrInit(triton::arch::Instruction &inst)
Everything which must be done after building the semantics.
triton::arch::SemanticsInterface * x86Isa
x86 ISA builder.
This interface is used as abstract semantics interface. All ISA semantics must use this interface.
The symbolic engine class.
std::shared_ptr< triton::ast::AstContext > SharedAstContext
Shared AST context.
std::shared_ptr< triton::modes::Modes > SharedModes
Shared Modes.