Rizin
unix-like reverse engineering framework and cli tools
|
#include <rz_util.h>
Go to the source code of this file.
Classes | |
struct | WasmOp |
struct | WasmOpDef |
Functions | |
RZ_IPI int | wasm_asm (const char *str, unsigned char *buf, int buf_len) |
RZ_IPI int | wasm_dis (WasmOp *op, const unsigned char *buf, int buf_len) |
enum WasmOpAtomicCodes |
Definition at line 210 of file wasm.h.
enum WasmOpCodes |
Definition at line 11 of file wasm.h.
enum WasmOpSimdCodes |
Definition at line 291 of file wasm.h.
enum WasmTypeOp |
Referenced by assemble().
Definition at line 479 of file wasm.c.
References buf_len, bytes, calloc(), count, def(), err, f, free(), i, id, n, NULL, opcodes, opcodes_simd, opcodes_threads, PFMT32d, PFMT64d, read_i32_leb128(), read_i64_leb128(), read_u32_leb128(), reserved, RZ_BIN_WASM_VALUETYPE_EMPTY, RZ_BIN_WASM_VALUETYPE_f32, RZ_BIN_WASM_VALUETYPE_f64, RZ_BIN_WASM_VALUETYPE_i32, RZ_BIN_WASM_VALUETYPE_i64, RZ_BIN_WASM_VALUETYPE_v128, rz_read_at_le32(), rz_read_at_le64(), rz_strbuf_appendf(), rz_strbuf_drain(), rz_strbuf_new(), rz_strbuf_set(), rz_strbuf_setf(), sb, st32, st64, WasmOpDef::txt, ut64(), v, val, WASM_OP_BLOCK, WASM_OP_BR, WASM_OP_BRIF, WASM_OP_BRTABLE, WASM_OP_CALL, WASM_OP_CALLINDIRECT, WASM_OP_CURRENTMEMORY, WASM_OP_DROP, WASM_OP_ELSE, WASM_OP_END, WASM_OP_F32ABS, WASM_OP_F32ADD, WASM_OP_F32CEIL, WASM_OP_F32CONST, WASM_OP_F32CONVERTSI32, WASM_OP_F32CONVERTSI64, WASM_OP_F32CONVERTUI32, WASM_OP_F32CONVERTUI64, WASM_OP_F32COPYSIGN, WASM_OP_F32DEMOTEF64, WASM_OP_F32DIV, WASM_OP_F32EQ, WASM_OP_F32FLOOR, WASM_OP_F32GE, WASM_OP_F32GT, WASM_OP_F32LE, WASM_OP_F32LOAD, WASM_OP_F32LT, WASM_OP_F32MAX, WASM_OP_F32MIN, WASM_OP_F32MUL, WASM_OP_F32NE, WASM_OP_F32NEAREST, WASM_OP_F32NEG, WASM_OP_F32REINTERPRETI32, WASM_OP_F32SQRT, WASM_OP_F32STORE, WASM_OP_F32SUB, WASM_OP_F32TRUNC, WASM_OP_F32X4ABS, WASM_OP_F32X4ADD, WASM_OP_F32X4CONVERTI32X4S, WASM_OP_F32X4CONVERTI32X4U, WASM_OP_F32X4DIV, WASM_OP_F32X4EQ, WASM_OP_F32X4EXTRACTLANE, WASM_OP_F32X4GE, WASM_OP_F32X4GT, WASM_OP_F32X4LE, WASM_OP_F32X4LT, WASM_OP_F32X4MAX, WASM_OP_F32X4MIN, WASM_OP_F32X4MUL, WASM_OP_F32X4NE, WASM_OP_F32X4NEG, WASM_OP_F32X4REPLACELANE, WASM_OP_F32X4SPLAT, WASM_OP_F32X4SQRT, WASM_OP_F32X4SUB, WASM_OP_F64ABS, WASM_OP_F64ADD, WASM_OP_F64CEIL, WASM_OP_F64CONST, WASM_OP_F64CONVERTSI32, WASM_OP_F64CONVERTSI64, WASM_OP_F64CONVERTUI32, WASM_OP_F64CONVERTUI64, WASM_OP_F64COPYSIGN, WASM_OP_F64DIV, WASM_OP_F64EQ, WASM_OP_F64FLOOR, WASM_OP_F64GE, WASM_OP_F64GT, WASM_OP_F64LE, WASM_OP_F64LOAD, WASM_OP_F64LT, WASM_OP_F64MAX, WASM_OP_F64MIN, WASM_OP_F64MUL, WASM_OP_F64NE, WASM_OP_F64NEAREST, WASM_OP_F64NEG, WASM_OP_F64PROMOTEF32, WASM_OP_F64REINTERPRETI64, WASM_OP_F64SQRT, WASM_OP_F64STORE, WASM_OP_F64SUB, WASM_OP_F64TRUNC, WASM_OP_F64X2ABS, WASM_OP_F64X2ADD, WASM_OP_F64X2DIV, WASM_OP_F64X2EQ, WASM_OP_F64X2EXTRACTLANE, WASM_OP_F64X2GE, WASM_OP_F64X2GT, WASM_OP_F64X2LE, WASM_OP_F64X2LT, WASM_OP_F64X2MAX, WASM_OP_F64X2MIN, WASM_OP_F64X2MUL, WASM_OP_F64X2NE, WASM_OP_F64X2NEG, WASM_OP_F64X2REPLACELANE, WASM_OP_F64X2SPLAT, WASM_OP_F64X2SQRT, WASM_OP_F64X2SUB, WASM_OP_GETGLOBAL, WASM_OP_GETLOCAL, WASM_OP_GROWMEMORY, WASM_OP_I16X8ABS, WASM_OP_I16X8ADD, WASM_OP_I16X8ADDSATURATES, WASM_OP_I16X8ADDSATURATEU, WASM_OP_I16X8ALLTRUE, WASM_OP_I16X8ANYTRUE, WASM_OP_I16X8AVGRU, WASM_OP_I16X8EQ, WASM_OP_I16X8EXTRACTLANES, WASM_OP_I16X8EXTRACTLANEU, WASM_OP_I16X8GES, WASM_OP_I16X8GEU, WASM_OP_I16X8GTS, WASM_OP_I16X8GTU, WASM_OP_I16X8LES, WASM_OP_I16X8LEU, WASM_OP_I16X8LOAD8X8S, WASM_OP_I16X8LOAD8X8U, WASM_OP_I16X8LTS, WASM_OP_I16X8LTU, WASM_OP_I16X8MAXS, WASM_OP_I16X8MAXU, WASM_OP_I16X8MINS, WASM_OP_I16X8MINU, WASM_OP_I16X8MUL, WASM_OP_I16X8NARROWI32X4S, WASM_OP_I16X8NARROWI32X4U, WASM_OP_I16X8NE, WASM_OP_I16X8NEG, WASM_OP_I16X8REPLACELANE, WASM_OP_I16X8SHL, WASM_OP_I16X8SHRS, WASM_OP_I16X8SHRU, WASM_OP_I16X8SPLAT, WASM_OP_I16X8SUB, WASM_OP_I16X8SUBSATURATES, WASM_OP_I16X8SUBSATURATEU, WASM_OP_I16X8WIDENHIGHI8X16S, WASM_OP_I16X8WIDENHIGHI8X16U, WASM_OP_I16X8WIDENLOWI8X16S, WASM_OP_I16X8WIDENLOWI8X16U, WASM_OP_I32ADD, WASM_OP_I32AND, WASM_OP_I32ATOMICLOAD, WASM_OP_I32ATOMICLOAD16U, WASM_OP_I32ATOMICLOAD8U, WASM_OP_I32ATOMICRMW16UADD, WASM_OP_I32ATOMICRMW16UAND, WASM_OP_I32ATOMICRMW16UOR, WASM_OP_I32ATOMICRMW16USUB, WASM_OP_I32ATOMICRMW16UXCHG, WASM_OP_I32ATOMICRMW16UXOR, WASM_OP_I32ATOMICRMW8UADD, WASM_OP_I32ATOMICRMW8UAND, WASM_OP_I32ATOMICRMW8UOR, WASM_OP_I32ATOMICRMW8USUB, WASM_OP_I32ATOMICRMW8UXCHG, WASM_OP_I32ATOMICRMW8UXOR, WASM_OP_I32ATOMICRMWADD, WASM_OP_I32ATOMICRMWAND, WASM_OP_I32ATOMICRMWOR, WASM_OP_I32ATOMICRMWSUB, WASM_OP_I32ATOMICRMWXCHG, WASM_OP_I32ATOMICRMWXOR, WASM_OP_I32ATOMICSTORE, WASM_OP_I32ATOMICSTORE16, WASM_OP_I32ATOMICSTORE8, WASM_OP_I32CLZ, WASM_OP_I32CONST, WASM_OP_I32CTZ, WASM_OP_I32DIVS, WASM_OP_I32DIVU, WASM_OP_I32EQ, WASM_OP_I32EQZ, WASM_OP_I32GES, WASM_OP_I32GEU, WASM_OP_I32GTS, WASM_OP_I32GTU, WASM_OP_I32LES, WASM_OP_I32LEU, WASM_OP_I32LOAD, WASM_OP_I32LOAD16S, WASM_OP_I32LOAD16U, WASM_OP_I32LOAD8S, WASM_OP_I32LOAD8U, WASM_OP_I32LTS, WASM_OP_I32LTU, WASM_OP_I32MUL, WASM_OP_I32NE, WASM_OP_I32OR, WASM_OP_I32POPCNT, WASM_OP_I32REINTERPRETF32, WASM_OP_I32REMS, WASM_OP_I32REMU, WASM_OP_I32ROTL, WASM_OP_I32ROTR, WASM_OP_I32SHL, WASM_OP_I32SHRS, WASM_OP_I32SHRU, WASM_OP_I32STORE, WASM_OP_I32STORE16, WASM_OP_I32STORE8, WASM_OP_I32SUB, WASM_OP_I32TRUNCSF32, WASM_OP_I32TRUNCSF64, WASM_OP_I32TRUNCUF32, WASM_OP_I32TRUNCUF64, WASM_OP_I32WRAPI64, WASM_OP_I32X4ABS, WASM_OP_I32X4ADD, WASM_OP_I32X4ALLTRUE, WASM_OP_I32X4ANYTRUE, WASM_OP_I32X4EQ, WASM_OP_I32X4EXTRACTLANE, WASM_OP_I32X4GES, WASM_OP_I32X4GEU, WASM_OP_I32X4GTS, WASM_OP_I32X4GTU, WASM_OP_I32X4LES, WASM_OP_I32X4LEU, WASM_OP_I32X4LOAD16X4S, WASM_OP_I32X4LOAD16X4U, WASM_OP_I32X4LTS, WASM_OP_I32X4LTU, WASM_OP_I32X4MAXS, WASM_OP_I32X4MAXU, WASM_OP_I32X4MINS, WASM_OP_I32X4MINU, WASM_OP_I32X4MUL, WASM_OP_I32X4NE, WASM_OP_I32X4NEG, WASM_OP_I32X4REPLACELANE, WASM_OP_I32X4SHL, WASM_OP_I32X4SHRS, WASM_OP_I32X4SHRU, WASM_OP_I32X4SPLAT, WASM_OP_I32X4SUB, WASM_OP_I32X4TRUNCSATF32X4S, WASM_OP_I32X4TRUNCSATF32X4U, WASM_OP_I32X4WIDENHIGHI16X8S, WASM_OP_I32X4WIDENHIGHI16X8U, WASM_OP_I32X4WIDENLOWI16X8S, WASM_OP_I32X4WIDENLOWI16X8U, WASM_OP_I32XOR, WASM_OP_I64ADD, WASM_OP_I64AND, WASM_OP_I64ATOMICLOAD, WASM_OP_I64ATOMICLOAD16U, WASM_OP_I64ATOMICLOAD32U, WASM_OP_I64ATOMICLOAD8U, WASM_OP_I64ATOMICRMW16UADD, WASM_OP_I64ATOMICRMW16UAND, WASM_OP_I64ATOMICRMW16UOR, WASM_OP_I64ATOMICRMW16USUB, WASM_OP_I64ATOMICRMW16UXCHG, WASM_OP_I64ATOMICRMW16UXOR, WASM_OP_I64ATOMICRMW32UADD, WASM_OP_I64ATOMICRMW32UAND, WASM_OP_I64ATOMICRMW32UOR, WASM_OP_I64ATOMICRMW32USUB, WASM_OP_I64ATOMICRMW32UXCHG, WASM_OP_I64ATOMICRMW32UXOR, WASM_OP_I64ATOMICRMW8UADD, WASM_OP_I64ATOMICRMW8UAND, WASM_OP_I64ATOMICRMW8UOR, WASM_OP_I64ATOMICRMW8USUB, WASM_OP_I64ATOMICRMW8UXCHG, WASM_OP_I64ATOMICRMW8UXOR, WASM_OP_I64ATOMICRMWADD, WASM_OP_I64ATOMICRMWAND, WASM_OP_I64ATOMICRMWOR, WASM_OP_I64ATOMICRMWSUB, WASM_OP_I64ATOMICRMWXCHG, WASM_OP_I64ATOMICRMWXOR, WASM_OP_I64ATOMICSTORE, WASM_OP_I64ATOMICSTORE16, WASM_OP_I64ATOMICSTORE32, WASM_OP_I64ATOMICSTORE8, WASM_OP_I64CLZ, WASM_OP_I64CONST, WASM_OP_I64CTZ, WASM_OP_I64DIVS, WASM_OP_I64DIVU, WASM_OP_I64EQ, WASM_OP_I64EQZ, WASM_OP_I64EXTENDSI32, WASM_OP_I64EXTENDUI32, WASM_OP_I64GES, WASM_OP_I64GEU, WASM_OP_I64GTS, WASM_OP_I64GTU, WASM_OP_I64LES, WASM_OP_I64LEU, WASM_OP_I64LOAD, WASM_OP_I64LOAD16S, WASM_OP_I64LOAD16U, WASM_OP_I64LOAD32S, WASM_OP_I64LOAD32U, WASM_OP_I64LOAD8S, WASM_OP_I64LOAD8U, WASM_OP_I64LTS, WASM_OP_I64LTU, WASM_OP_I64MUL, WASM_OP_I64NE, WASM_OP_I64OR, WASM_OP_I64POPCNT, WASM_OP_I64REINTERPRETF64, WASM_OP_I64REMS, WASM_OP_I64REMU, WASM_OP_I64ROTL, WASM_OP_I64ROTR, WASM_OP_I64SHL, WASM_OP_I64SHRS, WASM_OP_I64SHRU, WASM_OP_I64STORE, WASM_OP_I64STORE16, WASM_OP_I64STORE32, WASM_OP_I64STORE8, WASM_OP_I64SUB, WASM_OP_I64TRUNCSF32, WASM_OP_I64TRUNCSF64, WASM_OP_I64TRUNCUF32, WASM_OP_I64TRUNCUF64, WASM_OP_I64X2ADD, WASM_OP_I64X2EXTRACTLANE, WASM_OP_I64X2LOAD32X2S, WASM_OP_I64X2LOAD32X2U, WASM_OP_I64X2MUL, WASM_OP_I64X2NEG, WASM_OP_I64X2REPLACELANE, WASM_OP_I64X2SHL, WASM_OP_I64X2SHRS, WASM_OP_I64X2SHRU, WASM_OP_I64X2SPLAT, WASM_OP_I64X2SUB, WASM_OP_I64XOR, WASM_OP_I8X16ABS, WASM_OP_I8X16ADD, WASM_OP_I8X16ADDSATURATES, WASM_OP_I8X16ADDSATURATEU, WASM_OP_I8X16ALLTRUE, WASM_OP_I8X16ANYTRUE, WASM_OP_I8X16AVGRU, WASM_OP_I8X16EQ, WASM_OP_I8X16EXTRACTLANES, WASM_OP_I8X16EXTRACTLANEU, WASM_OP_I8X16GES, WASM_OP_I8X16GEU, WASM_OP_I8X16GTS, WASM_OP_I8X16GTU, WASM_OP_I8X16LES, WASM_OP_I8X16LEU, WASM_OP_I8X16LTS, WASM_OP_I8X16LTU, WASM_OP_I8X16MAXS, WASM_OP_I8X16MAXU, WASM_OP_I8X16MINS, WASM_OP_I8X16MINU, WASM_OP_I8X16NARROWI16X8S, WASM_OP_I8X16NARROWI16X8U, WASM_OP_I8X16NE, WASM_OP_I8X16NEG, WASM_OP_I8X16REPLACELANE, WASM_OP_I8X16SHL, WASM_OP_I8X16SHRS, WASM_OP_I8X16SHRU, WASM_OP_I8X16SPLAT, WASM_OP_I8X16SUB, WASM_OP_I8X16SUBSATURATES, WASM_OP_I8X16SUBSATURATEU, WASM_OP_IF, WASM_OP_LOOP, WASM_OP_NOP, WASM_OP_RETURN, WASM_OP_SELECT, WASM_OP_SETGLOBAL, WASM_OP_SETLOCAL, WASM_OP_TEELOCAL, WASM_OP_TRAP, WASM_OP_V128AND, WASM_OP_V128ANDNOT, WASM_OP_V128BITSELECT, WASM_OP_V128CONST, WASM_OP_V128LOAD, WASM_OP_V128NOT, WASM_OP_V128OR, WASM_OP_V128STORE, WASM_OP_V128XOR, WASM_OP_V16X8LOADSPLAT, WASM_OP_V32X4LOADSPLAT, WASM_OP_V64X2LOADSPLAT, WASM_OP_V8X16LOADSPLAT, WASM_OP_V8X16SHUFFLE, WASM_OP_V8X16SWIZZLE, WASM_TYPE_OP_ATOMIC, WASM_TYPE_OP_CORE, and WASM_TYPE_OP_SIMD.
Referenced by advance_till_scope_end(), disassemble(), and wasm_op().