12 #include "../../../bin/format/wasm/wasm.h"
440 while ((
i <
sizeof(
tmp) - 1) &&
str[
i] &&
str[
i] !=
' ') {
446 for (
i = 0;
i < 0xff;
i++) {
449 if (!strcmp(opdef->
txt,
tmp)) {
457 for (
i = 0;
i < 0xff;
i++) {
460 if (!strcmp(opdef->
txt,
tmp)) {
628 switch (0x80 -
val) {
823 }
else if (
id == 0xfe) {
904 }
else if (
id == 0xfd) {
914 op->len = 1 + simdop_size;
915 op->op.simd = simdop;
1100 unsigned char bytes[16] = { 0 };
1102 for (
i = 0;
i < 16; ++
i) {
1106 "%02x %02x %02x %02x %02x %02x %02x %02x %02x",
1129 unsigned char lane =
buf[1 + simdop_size];
RZ_IPI int wasm_dis(WasmOp *op, const unsigned char *buf, int buf_len)
static WasmOpDef opcodes[256]
static WasmOpDef opcodes_threads[256]
static WasmOpDef opcodes_simd[256]
@ WASM_OP_F64REINTERPRETI64
@ WASM_OP_F32REINTERPRETI32
@ WASM_OP_I64REINTERPRETF64
@ WASM_OP_I32REINTERPRETF32
@ WASM_OP_I16X8ADDSATURATEU
@ WASM_OP_I8X16SUBSATURATEU
@ WASM_OP_I32X4WIDENLOWI16X8U
@ WASM_OP_I16X8NARROWI32X4U
@ WASM_OP_I8X16EXTRACTLANES
@ WASM_OP_I64X2EXTRACTLANE
@ WASM_OP_F32X4CONVERTI32X4U
@ WASM_OP_F64X2REPLACELANE
@ WASM_OP_I8X16EXTRACTLANEU
@ WASM_OP_I16X8WIDENLOWI8X16S
@ WASM_OP_F32X4CONVERTI32X4S
@ WASM_OP_I32X4TRUNCSATF32X4S
@ WASM_OP_I16X8EXTRACTLANEU
@ WASM_OP_I64X2REPLACELANE
@ WASM_OP_I8X16NARROWI16X8S
@ WASM_OP_I8X16ADDSATURATES
@ WASM_OP_I32X4TRUNCSATF32X4U
@ WASM_OP_F32X4REPLACELANE
@ WASM_OP_I8X16NARROWI16X8U
@ WASM_OP_I32X4WIDENHIGHI16X8U
@ WASM_OP_I32X4REPLACELANE
@ WASM_OP_I16X8SUBSATURATEU
@ WASM_OP_I16X8EXTRACTLANES
@ WASM_OP_I8X16ADDSATURATEU
@ WASM_OP_I8X16SUBSATURATES
@ WASM_OP_I16X8WIDENHIGHI8X16S
@ WASM_OP_I8X16REPLACELANE
@ WASM_OP_I32X4WIDENLOWI16X8S
@ WASM_OP_I16X8WIDENLOWI8X16U
@ WASM_OP_I16X8ADDSATURATES
@ WASM_OP_I32X4WIDENHIGHI16X8S
@ WASM_OP_I16X8SUBSATURATES
@ WASM_OP_I16X8WIDENHIGHI8X16U
@ WASM_OP_F64X2EXTRACTLANE
@ WASM_OP_F32X4EXTRACTLANE
@ WASM_OP_I32X4EXTRACTLANE
@ WASM_OP_I16X8REPLACELANE
@ WASM_OP_I16X8NARROWI32X4S
@ WASM_OP_I32ATOMICRMWSUB
@ WASM_OP_I32ATOMICRMW16UOR
@ WASM_OP_I64ATOMICLOAD16U
@ WASM_OP_I32ATOMICRMW16USUB
@ WASM_OP_I64ATOMICLOAD32U
@ WASM_OP_I32ATOMICRMW8UAND
@ WASM_OP_I64ATOMICLOAD8U
@ WASM_OP_I32ATOMICRMW8UXOR
@ WASM_OP_I64ATOMICRMW32UOR
@ WASM_OP_I64ATOMICRMW32UCMPXCHG
@ WASM_OP_I32ATOMICRMW8UOR
@ WASM_OP_I64ATOMICRMW8UAND
@ WASM_OP_I64ATOMICRMW8UOR
@ WASM_OP_I64ATOMICRMW16UADD
@ WASM_OP_I64ATOMICRMW32UADD
@ WASM_OP_I32ATOMICSTORE16
@ WASM_OP_I32ATOMICRMW8UADD
@ WASM_OP_I64ATOMICSTORE32
@ WASM_OP_I32ATOMICRMW16UCMPXCHG
@ WASM_OP_I64ATOMICRMW8UXCHG
@ WASM_OP_I32ATOMICRMW8USUB
@ WASM_OP_I32ATOMICRMWXOR
@ WASM_OP_I32ATOMICRMW16UADD
@ WASM_OP_I64ATOMICSTORE8
@ WASM_OP_I64ATOMICRMW32UXOR
@ WASM_OP_I32ATOMICLOAD16U
@ WASM_OP_I64ATOMICRMWXCHG
@ WASM_OP_I32ATOMICLOAD8U
@ WASM_OP_I32ATOMICRMW8UCMPXCHG
@ WASM_OP_I64ATOMICRMW16UAND
@ WASM_OP_I64ATOMICRMW32UAND
@ WASM_OP_I64ATOMICRMW16UXOR
@ WASM_OP_I32ATOMICRMWXCHG
@ WASM_OP_I64ATOMICRMWAND
@ WASM_OP_I32ATOMICSTORE8
@ WASM_OP_I64ATOMICSTORE16
@ WASM_OP_I32ATOMICRMW16UAND
@ WASM_OP_I64ATOMICRMWCMPXCHG
@ WASM_OP_I64ATOMICRMW8UADD
@ WASM_OP_I32ATOMICRMWAND
@ WASM_OP_I32ATOMICRMW16UXCHG
@ WASM_OP_I64ATOMICRMW16UOR
@ WASM_OP_I64ATOMICRMW16UXCHG
@ WASM_OP_I32ATOMICRMW8UXCHG
@ WASM_OP_I64ATOMICRMW32USUB
@ WASM_OP_I64ATOMICRMW32UXCHG
@ WASM_OP_I64ATOMICRMW8USUB
@ WASM_OP_I32ATOMICRMW16UXOR
@ WASM_OP_I64ATOMICRMW8UXOR
@ WASM_OP_I64ATOMICRMW16UCMPXCHG
@ WASM_OP_I32ATOMICRMWADD
@ WASM_OP_I32ATOMICRMWCMPXCHG
@ WASM_OP_I64ATOMICRMW8UCMPXCHG
@ WASM_OP_I64ATOMICRMWSUB
@ WASM_OP_I64ATOMICRMWADD
@ WASM_OP_I64ATOMICRMWXOR
@ WASM_OP_I64ATOMICRMW16USUB
RZ_IPI int wasm_asm(const char *str, unsigned char *buf, int buf_len)
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void count
RZ_API void Ht_() free(HtName_(Ht) *ht)
void * calloc(size_t number, size_t size)
static ut64 rz_read_at_le64(const void *src, size_t offset)
static ut32 rz_read_at_le32(const void *src, size_t offset)
RZ_API RZ_OWN char * rz_strbuf_drain(RzStrBuf *sb)
RZ_API const char * rz_strbuf_set(RzStrBuf *sb, const char *s)
RZ_API const char * rz_strbuf_setf(RzStrBuf *sb, const char *fmt,...) RZ_PRINTF_CHECK(2
RZ_API RzStrBuf * rz_strbuf_new(const char *s)
RZ_API bool rz_strbuf_appendf(RzStrBuf *sb, const char *fmt,...) RZ_PRINTF_CHECK(2
RZ_API size_t read_i32_leb128(const ut8 *p, const ut8 *max, st32 *out_val)
RZ_API size_t read_i64_leb128(const ut8 *p, const ut8 *max, st64 *out_val)
RZ_API size_t read_u32_leb128(const ut8 *p, const ut8 *max, ut32 *out_val)
ut64(WINAPI *w32_GetEnabledXStateFeatures)()
int def(FILE *source, FILE *dest, int level)