Rizin
unix-like reverse engineering framework and cli tools
|
An IL op performing a pure computation, 'a pure. More...
#include <rz_il_opcodes.h>
An IL op performing a pure computation, 'a pure.
BAP uses ocaml's type system for statically differentiating between different kinds of pure ops. Some ops however are polymorphic over all pure types, such as ite : bool -> 'a pure -> 'a pure -> 'a pure
, which is not directly possible in C. So our pure ops are dynamically typed (only on the level of C, the IL is still fully statically typed) and we simply use typedefs like RzILOpBool
and RzILOpBitVector
to at least weakly indicate which concrete type is required.
Definition at line 399 of file rz_il_opcodes.h.
RzILOpArgsAdd rz_il_op_pure_t::add |
Definition at line 421 of file rz_il_opcodes.h.
RzILOpArgsAppend rz_il_op_pure_t::append |
Definition at line 433 of file rz_il_opcodes.h.
RzILOpArgsBv rz_il_op_pure_t::bitv |
Definition at line 411 of file rz_il_opcodes.h.
Referenced by rz_il_op_new_bitv_from_st64(), and rz_il_op_new_bitv_from_ut64().
RzILOpArgsBoolAnd rz_il_op_pure_t::booland |
Definition at line 406 of file rz_il_opcodes.h.
RzILOpArgsBoolInv rz_il_op_pure_t::boolinv |
Definition at line 409 of file rz_il_opcodes.h.
RzILOpArgsBoolOr rz_il_op_pure_t::boolor |
Definition at line 407 of file rz_il_opcodes.h.
RzILOpArgsBoolXor rz_il_op_pure_t::boolxor |
Definition at line 408 of file rz_il_opcodes.h.
RzILOpArgsCast rz_il_op_pure_t::cast |
Definition at line 418 of file rz_il_opcodes.h.
RzILOpPureCode rz_il_op_pure_t::code |
Definition at line 400 of file rz_il_opcodes.h.
Referenced by rz_il_op_new_bitv_from_st64(), and rz_il_op_new_bitv_from_ut64().
RzILOpArgsDiv rz_il_op_pure_t::div |
Definition at line 424 of file rz_il_opcodes.h.
RzILOpArgsEq rz_il_op_pure_t::eq |
Definition at line 415 of file rz_il_opcodes.h.
RzILOpArgsIsZero rz_il_op_pure_t::is_zero |
Definition at line 414 of file rz_il_opcodes.h.
RzILOpArgsIte rz_il_op_pure_t::ite |
Definition at line 402 of file rz_il_opcodes.h.
RzILOpArgsLet rz_il_op_pure_t::let |
Definition at line 404 of file rz_il_opcodes.h.
RzILOpArgsLoad rz_il_op_pure_t::load |
Definition at line 435 of file rz_il_opcodes.h.
RzILOpArgsLoadW rz_il_op_pure_t::loadw |
Definition at line 436 of file rz_il_opcodes.h.
RzILOpArgsLogand rz_il_op_pure_t::logand |
Definition at line 428 of file rz_il_opcodes.h.
RzILOpArgsLogNot rz_il_op_pure_t::lognot |
Definition at line 420 of file rz_il_opcodes.h.
RzILOpArgsLogor rz_il_op_pure_t::logor |
Definition at line 429 of file rz_il_opcodes.h.
RzILOpArgsLogxor rz_il_op_pure_t::logxor |
Definition at line 430 of file rz_il_opcodes.h.
RzILOpArgsLsb rz_il_op_pure_t::lsb |
Definition at line 413 of file rz_il_opcodes.h.
RzILOpArgsMod rz_il_op_pure_t::mod |
Definition at line 427 of file rz_il_opcodes.h.
RzILOpArgsMsb rz_il_op_pure_t::msb |
Definition at line 412 of file rz_il_opcodes.h.
RzILOpArgsMul rz_il_op_pure_t::mul |
Definition at line 423 of file rz_il_opcodes.h.
RzILOpArgsNeg rz_il_op_pure_t::neg |
Definition at line 419 of file rz_il_opcodes.h.
union { ... } rz_il_op_pure_t::op |
Referenced by rz_il_op_new_bitv_from_st64(), and rz_il_op_new_bitv_from_ut64().
RzILOpArgsSdiv rz_il_op_pure_t::sdiv |
Definition at line 425 of file rz_il_opcodes.h.
RzILOpArgsShiftLeft rz_il_op_pure_t::shiftl |
Definition at line 431 of file rz_il_opcodes.h.
RzILOpArgsShiftRight rz_il_op_pure_t::shiftr |
Definition at line 432 of file rz_il_opcodes.h.
RzILOpArgsSle rz_il_op_pure_t::sle |
Definition at line 417 of file rz_il_opcodes.h.
RzILOpArgsSmod rz_il_op_pure_t::smod |
Definition at line 426 of file rz_il_opcodes.h.
RzILOpArgsSub rz_il_op_pure_t::sub |
Definition at line 422 of file rz_il_opcodes.h.
RzILOpArgsUle rz_il_op_pure_t::ule |
Definition at line 416 of file rz_il_opcodes.h.
RzILOpArgsVar rz_il_op_pure_t::var |
Definition at line 403 of file rz_il_opcodes.h.