AED_X86_ENCODER(3) Library Functions Manual AED_X86_ENCODER(3)

AED_x86_get_assembler, AED_x86_encoder_alloc, AED_x86_encoder_free, AED_x86_encoder_reset, AED_x86_encoder_encode_labels, AED_x86_encoder_get_buffer, AED_x86_encoder_get_buffer_length, AED_x86_encoder_has_error, AED_x86_encoder_get_erroraed x86 encoder functions

/* -laed */
#include <aed/x86.h>

typedef void *
AED_alloc(void *ptr, size_t old_size, size_t new_size, void *opaque);

typedef void
AED_free(void *ptr, size_t size, void *opaque);

const AED_x86_assembler *
AED_x86_get_assembler(void);

AED_x86_encoder *
AED_x86_encoder_alloc(uint32_t flags, AED_alloc alloc, AED_free free, void *opaque);

void
AED_x86_encoder_free(AED_x86_encoder *ec);

void
AED_x86_encoder_reset(AED_x86_encoder *ec);

int
AED_x86_encoder_encode_labels(AED_x86_encoder *ec, size_t offset);

const uint8_t *
AED_x86_encoder_get_buffer(const AED_x86_encoder *ec);

size_t
AED_x86_encoder_get_buffer_length(const AED_x86_encoder *ec);

int
AED_x86_encoder_has_error(const AED_x86_encoder *ec);

const char *
AED_x86_encoder_get_error(const AED_x86_encoder *ec);

The aed x86 encoder provides an API used to encode instructions targeting the x86 instruction set architecture in 64-bit mode. The API is divided into two cooperating parts: the encoder and the assembler. The encoder performs the encoding and populates the instruction buffer with the encoded instructions. The assembler exposes each encodable instruction as a function and instructs the encoder to perform the actual encoding.

Below is a complete usage example showing how to encode a routine that calculates the sum of an array of 32-bit signed integers read from memory. The routine assumes the System V ABI, in which the array is passed in register rdi, the length of the same array in register rsi and the accumulated sum returned in register rax. The encoder is referred to as ec and the assembler as a.

/* Jump labels. */
enum {
	Ldone,
	Lloop,
};

AED_x86_encoder *ec = AED_x86_encoder_alloc(0, NULL, NULL, NULL);
const AED_x86_assembler *a = AED_x86_get_assembler();

a->align(16);

a->xor(ec, a->eax, a->eax);
a->xor(ec, a->ecx, a->ecx);

a->test(ec, a->esi, a->esi);
a->jz(ec, a->relative(ec, 8, Ldone));

a->label(ec, Lloop);
a->add(ec, a->eax, a->memory(ec, a->rdi, a->rcx, /*scale=*/4, /*disp=*/0));
a->inc(ec, a->ecx);
a->dec(ec, a->esi);
a->jnz(ec, a->relative(ec, 8, Lloop));

a->label(ec, Ldone);
a->ret(ec);

AED_x86_encoder_encode_labels(ec, 0);
if (AED_x86_encoder_has_error(ec))
	errx(1, "%s", AED_x86_encoder_get_error(ec));

AED_x86_encoder_free(ec);

The () function allocates a new encoder. All memory allocations performed by the encoder are done through the alloc callback which defaults to realloc(3) when passing NULL. The encoder frees memory using the free callback which defaults to free(3) when passing NULL. See the Custom memory allocator section for details on how to manage memory.

The flags may be any combination of the following:

AED_X86_MACHINE_LATEST
 
AED_X86_MACHINE_VIA
 
AED_X86_MACHINE_NEHALEM
 
AED_X86_MACHINE_SKY_LAKE
 
AED_X86_MACHINE_COMET_LAKE
 
AED_X86_MACHINE_GRANITE_RAPIDS
 
AED_X86_MACHINE_DIAMOND_RAPIDS
 
AED_X86_MACHINE_CLEARWATER_FOREST
 
AED_X86_MACHINE_PANTHER_LAKE
 
AED_X86_MACHINE_NOVA_LAKE
Microarchitecture to target, defaults to AED_X86_MACHINE_LATEST.
AED_X86_MACHINE_NATIVE
Favor the microarchitecture of the host processor. If the microarchitecture cannot be detected, a conservative default of AED_X86_MACHINE_NEHALEM is favored.

The () function frees the encoder and all its associated memory.

The () function resets the instruction buffer, effectively discarding any previously encoded instructions.

The () function returns the instruction buffer, including all encoded instructions.

The () function returns the length of the instruction buffer as obtained through AED_x86_encoder_get_buffer().

The () function returns non-zero if an error was encountered during encoding.

The () function returns a human readable representation of the first encountered error during encoding. Note that this function will never return NULL, even if an error is absent.

Encoding instructions is done using the assembler accessible through the () function. The assembler is a stateless object providing functions used to encode instructions and operands.

For each encodable instruction the assembler exposes a function used to encode the same instruction named after the instruction mnemonic, see the Encodable instructions section. Instruction operands are expressed in Intel®-like syntax in which the first operand denotes the destination and all subsequent ones denote source operands.

If an instruction comes in many forms accepting a different number of operands, the form with the fewest number of operands will be named after the instruction mnemonic and all following forms suffixed with an integer denoting the number of operands. This pattern is often seen among instructions offering encodings with non-destructive destination operands, such as the ADD instruction.

size_t (*add)(uintptr_t op0, uintptr_t op1);
size_t (*add3)(uintptr_t op0, uintptr_t op1, uintptr_t op2);

Note that some instruction encoder functions cannot be named after the mnemonic. See the C and C++ gotchas section for details.

typedef struct AED_x86_assembler {
	/* Operand functions. */
	uintptr_t (*immediate)(AED_x86_encoder *ec, int64_t imm);
	uintptr_t (*memory)(AED_x86_encoder *ec, uintptr_t base, uintptr_t index,
	    uint8_t scale, int64_t disp);
	uintptr_t (*gpr)(uint8_t gpr, uint8_t os);
	uintptr_t (*xmm)(uint8_t xmm);
	uintptr_t (*ymm)(uint8_t ymm);
	uintptr_t (*zmm)(uint8_t zmm);
	uintptr_t (*offset)(AED_x86_encoder *ec, uint64_t offset);
	uintptr_t (*relative)(AED_x86_encoder *ec, uint8_t size, int label);
	uintptr_t (*rip_relative)(AED_x86_encoder *ec, uint8_t size, int label);

	/* Label functions. */
	void (*label)(AED_x86_encoder *ec, int label);
	void (*label_at_offset)(AED_x86_encoder *ec, int label, size_t offset);

	/* Memory size functions. */
	uintptr_t (*byte)(void);
	uintptr_t (*word)(void);
	uintptr_t (*dword)(void);
	uintptr_t (*qword)(void);
	uintptr_t (*xword)(void);
	uintptr_t (*yword)(void);
	uintptr_t (*zword)(void);

	/* Memory displacement sizes. */
	int64_t disp8;
	int64_t disp32;

	/* Alignment functions. */
	size_t (*align)(AED_x86_encoder *ec, size_t alignment);
	size_t (*fill)(AED_x86_encoder *ec, size_t length);

	/* Raw functions. */
	size_t (*raw)(AED_x86_encoder *ec, const uint8_t *raw, size_t raw_length);

	/* Explicit prefix functions. */
	const AED_x86_assembler *(*evex)(AED_x86_encoder *ec);
	const AED_x86_assembler *(*rex2)(AED_x86_encoder *ec);

	/* Legacy prefix functions. */
	const AED_x86_assembler *(*os)(AED_x86_encoder *ec);

	/* AVX-512 operand functions. */
	uintptr_t (*broadcast)(void);
	uintptr_t (*sae)(void);
	uintptr_t (*rn_sae)(void);
	uintptr_t (*rd_sae)(void);
	uintptr_t (*ru_sae)(void);
	uintptr_t (*rz_sae)(void);
	uintptr_t (*opmask)(uint8_t opmask, uint8_t z);

	/* APX functions. */
	const AED_x86_assembler *(*dfv)(AED_x86_encoder *ec,
	    uint8_t cf, uint8_t zf, uint8_t sf, uint8_t of);
	const AED_x86_assembler *(*nf)(AED_x86_encoder *ec);

	/* Segment override functions. */
	const AED_x86_assembler *(*es)(AED_x86_encoder *ec);
	const AED_x86_assembler *(*cs)(AED_x86_encoder *ec);
	const AED_x86_assembler *(*ss)(AED_x86_encoder *ec);
	const AED_x86_assembler *(*ds)(AED_x86_encoder *ec);
	const AED_x86_assembler *(*fs)(AED_x86_encoder *ec);
	const AED_x86_assembler *(*gs)(AED_x86_encoder *ec);

	/* General purpose registers. */
	uintptr_t al, ax, eax, rax;
	uintptr_t cl, cx, ecx, rcx;
	uintptr_t dl, dx, edx, rdx;
	uintptr_t bl, bx, ebx, rbx;
	uintptr_t ah, sp, esp, rsp;
	uintptr_t ch, bp, ebp, rbp;
	uintptr_t dh, si, esi, rsi;
	uintptr_t bh, di, edi, rdi;
	uintptr_t r8b, r8w, r8d, r8;
	uintptr_t r9b, r9w, r9d, r9;
	uintptr_t r10b, r10w, r10d, r10;
	uintptr_t r11b, r11w, r11d, r11;
	uintptr_t r12b, r12w, r12d, r12;
	uintptr_t r13b, r13w, r13d, r13;
	uintptr_t r14b, r14w, r14d, r14;
	uintptr_t r15b, r15w, r15d, r15;
	uintptr_t r16b, r16w, r16d, r16;
	uintptr_t r17b, r17w, r17d, r17;
	uintptr_t r18b, r18w, r18d, r18;
	uintptr_t r19b, r19w, r19d, r19;
	uintptr_t r20b, r20w, r20d, r20;
	uintptr_t r21b, r21w, r21d, r21;
	uintptr_t r22b, r22w, r22d, r22;
	uintptr_t r23b, r23w, r23d, r23;
	uintptr_t r24b, r24w, r24d, r24;
	uintptr_t r25b, r25w, r25d, r25;
	uintptr_t r26b, r26w, r26d, r26;
	uintptr_t r27b, r27w, r27d, r27;
	uintptr_t r28b, r28w, r28d, r28;
	uintptr_t r29b, r29w, r29d, r29;
	uintptr_t r30b, r30w, r30d, r30;
	uintptr_t r31b, r31w, r31d, r31;
	uintptr_t eip, rip;
	uintptr_t spl, bpl, sil, dil;

	/* MMX registers. */
	uintptr_t mm0, mm1, mm2, mm3, mm4, mm5, mm6, mm7;

	/* AMX registers. */
	uintptr_t tmm0, tmm1, tmm2, tmm3, tmm4, tmm5, tmm6, tmm7;

	/* XMM registers. */
	uintptr_t xmm0, xmm1, xmm2, xmm3, xmm4, xmm5, xmm6, xmm7,
		  xmm8, xmm9, xmm10, xmm11, xmm12, xmm13, xmm14, xmm15,
		  xmm16, xmm17, xmm18, xmm19, xmm20, xmm21, xmm22, xmm23,
		  xmm24, xmm25, xmm26, xmm27, xmm28, xmm29, xmm30, xmm31;

	/* YMM registers. */
	uintptr_t ymm0, ymm1, ymm2, ymm3, ymm4, ymm5, ymm6, ymm7,
		  ymm8, ymm9, ymm10, ymm11, ymm12, ymm13, ymm14, ymm15,
		  ymm16, ymm17, ymm18, ymm19, ymm20, ymm21, ymm22, ymm23,
		  ymm24, ymm25, ymm26, ymm27, ymm28, ymm29, ymm30, ymm31;

	/* ZMM registers. */
	uintptr_t zmm0, zmm1, zmm2, zmm3, zmm4, zmm5, zmm6, zmm7,
		  zmm8, zmm9, zmm10, zmm11, zmm12, zmm13, zmm14, zmm15,
		  zmm16, zmm17, zmm18, zmm19, zmm20, zmm21, zmm22, zmm23,
		  zmm24, zmm25, zmm26, zmm27, zmm28, zmm29, zmm30, zmm31;

	/* AVX-512 opmask registers. */
	uintptr_t k0, k1, k2, k3, k4, k5, k6, k7;
} AED_x86_assembler;

By default, all instruction encoder functions favor the shortest possible encoding with respect to the given operands.

/* VEX prefix will be favored. */
a->vmovsd(ec, a->xmm0, a->xmm0);

/* EVEX prefix is required due to addressing xmm16. */
a->vmovsd(ec, a->xmm16, a->xmm0);

The desired encoding can be explicitly stated using the () and () assembler functions. These functions return the assembler, allowing it to be chained with the instruction to encode.

/* {evex} andn rax, rcx, rdx */
a->evex(ec)->andn(ec, a->rax, a->rcx, a->rdx);

/* {rex2} mov rax, rcx */
a->rex2(ec)->mov(ec, a->rax, a->rcx);

The assembler has dedicated fields for all supported registers, which can be used to encode register operands.

/* cfcmovo r31, r16 */
a->cfcmovo(ec, a->r31, a->r16);

The () assembler function can be used to encode General Purpose Register (GPR) operands using their corresponding register numbers. The gpr argument denotes the register number and the os argument the register width expressed as a power of 8.

/* dec r8b */
a->dec(ec, a->gpr(8, AED_X86_OS_8));

/* dec r8w */
a->dec(ec, a->gpr(8, AED_X86_OS_16));

/* dec r8d */
a->dec(ec, a->gpr(8, AED_X86_OS_32));

/* dec r8 */
a->dec(ec, a->gpr(8, AED_X86_OS_64));

The assembler has dedicated fields for all supported vector registers, which can be used to encode register operands.

/* vpxor ymm0, ymm1, ymm2 */
a->vpxor(ec, a->ymm0, a->ymm1, a->ymm2);

The (), () and () assembler function can be used to encode vector operands using their corresponding register numbers. The xmm, ymm and zmm argument denotes the register number.

/* vsqrtps xmm0, xmm1 */
a->vsqrtps(ec, a->xmm(0), a->xmm(1));

/* vsqrtps ymm0, ymm1 */
a->vsqrtps(ec, a->ymm(0), a->ymm(1));

/* vsqrtps zmm0, zmm1 */
a->vsqrtps(ec, a->zmm(0), a->zmm(1));

The () assembler function is used to encode immediate operands.

/* jmp 0xff */
a->jmp(ec, a->immediate(ec, 0xff));

The memory() assembler function is used to encode operands addressing memory. The base argument is mandatory and must refer to a General Purpose Register provided by the assembler. The index argument is optional and must either refer to a General Purpose Register provided by the assembler or be omitted by passing zero. The index register can optionally be scaled using the scale argument which treats 2, 4 and 8 as valid scalars. Passing a scale of zero disables scaling. The disp argument is optional and denotes the memory displacement. Passing a disp of zero omits the displacement.

/* mov eax, dword ptr [rbx] */
a->mov(ec, a->eax, a->memory(ec, a->rbx, /*index=*/0, /*scale=*/0, /*disp=*/0));

/* mov eax, dword ptr [rbx + 4*rcx + 0x10] */
a->mov(ec, a->eax, a->memory(ec, a->rbx, a->rcx, /*scale=*/4, /*disp=*/0x10));

By default, the encoder favors the shortest possible encoding of the disp. An explicit displacement size can be stated using the disp8 and disp32 assembler fields.

/* mov eax, dword ptr [rbx + 0x00000010] */
a->mov(ec, a->eax,
    a->memory(ec, a->rbx, /*index=*/0, /*scale=*/0, /*disp=*/0x10 + a->disp32));

The encoder infers the memory size from the given operands. Depending on the instruction, this is not always possible, causing an ambiguity requiring the memory size to be explicitly stated using either the (), (), (), (), (), (), or () assembler functions.

/* vcvtph2hf8 xmm0, ymmword ptr [rax] */
a->vcvtph2hf8(ec, a->xmm0,
    a->memory(ec, a->rax, /*index=*/0, /*scale=*/0, /*disp=*/0) + a->yword());

The memory() assembler function is also used to encode VSIB memory addressing. The index argument is required to refer to a vector register provided by the assembler.

/* vpgatherdd xmm0, xmmword ptr [r8 + xmm15], xmm1 */
a->vpgatherdd3(ec, a->xmm0,
    a->memory(ec, a->r8, a->xmm15, /*scale=*/0, /*disp=*/0), a->xmm1);

The () assembler function is used to encode operands addressing memory using a segment relative offset.

/* mov eax, dword ptr [0xdeadbeef] */
a->mov(ec, a->eax, a->offset(ec, 0xdeadbeef));

The (), (), (), (), () and () assembler functions are used to encode the memory segment. These functions return the assembler, allowing it to be chained with the instruction to apply the segment override to.

/* mov eax, dword ptr fs:[rcx] */
a->fs(ec)->mov(ec, a->eax, a->memory(ec, a->rcx, /*index=*/0, /*scale=*/0, /*disp=*/0));

The os() assembler function can be used to encode an explicit operand size (OS) prefix. This function returns the assembler, allowing it to be chained with the instruction to encode.

Note that the encoder already emits the OS prefix when needed, making the need to use the () function rare. For encoding alignment using NOP instructions, it's advised to use the API outlined in the Encoding alignment section.

/* nop */
a->os(ec)->nop(ec);

The () assembler function associates the current instruction buffer offset with label, allowing instructions to encode operands referring to the same offset using the () assembler function and by passing the same label. The size argument must be either 8, 16 or 32 and represents the number of bits required to express the relative offset between the instruction and the label.

The effective relative offsets for such operands are encoded by the () function, intended to be called after encoding the final instruction. The offset argument can be used when the encoded instructions are expected to reside at a certain offset in memory, which affects the effective relative offsets. The AED_x86_encoder_encode_labels() function returns non-zero on success and zero on error. Errors can be further diagnosed using AED_x86_encoder_get_error().

/* Label for loop. */
const int Lloop = 0;

/* Loop until ecx reaches zero. */
a->label(ec, Lloop);
a->dec(ec, a->ecx);
a->jnz(ec, a->relative(ec, 8, Lloop));

AED_x86_encoder_encode_labels(ec, 0);

Instead of associating the current instruction buffer offset with a label, an explicit offset can be defined using the () assembler function. It is intended to be used when the encoded instructions are expected to reside at a certain offset within memory.

/* Label for global. */
const int Lglobal = 0;

/* Position Lglobal at offset 0x1000. */
a->label_at_offset(ec, Lglobal, 0x1000);

Labels can be used to encode RIP-relative addressing using the () assembler function. The size argument must be either 8 or 32 and represents the number of bits required to express the relative offset between the instruction pointer and the label.

/* Label for global accessed through RIP-relative addressing. */
const int Lglobal = 0;

/* Position Lglobal at offset 0x1000. */
a->label_at_offset(ec, Lglobal, 0x1000);

/* Move Lglobal to register, instruction expected to reside at
 * offset 0x2000. */
a->mov(ec, a->rax, a->rip_relative(ec, 32, Lglobal));
AED_x86_encoder_encode_labels(ec, 0x2000);

The () assembler function aligns the instruction buffer to the next multiple of alignment using as few NOP instructions as possible.

/* Align the instruction buffer to the next multiple of 16. */
a->align(ec, 16);

The () assembler function fills the instruction buffer with as few NOP instructions as possible that fit within length.

/* Fill the instruction buffer with as few as possible NOP
 * instructions that fit within 16 bytes. */
a->fill(ec, 16);

The () assembler function can be used to turn a memory operand into a broadcast in which the element loaded from memory will be broadcast to all other elements.

/* vaddpd zmm0, zmm0, qword ptr [rax]{1to8} */
a->vaddpd(ec, a->zmm0, a->zmm0,
    a->memory(ec, a->rax, /*index=*/0, /*scale=*/0, /*disp=*/0) + a->broadcast());

The () assembler function can be used to annotate a destination register operand as using opmask as the opmask register. A non-zero z argument enables zeroing-masking; otherwise, merging-masking is favored.

/* vmovupd zmm0{k7}, zmm1 */
a->vmovupd(ec, a->zmm0 + a->opmask(7, /*z=*/0), a->zmm1);

The () assembler function can be used to enable Suppress All Exceptions (SAE). Note that sae() can only be added to source register operands, not to destination operands.

/* vgetmantps zmm2{sae}, zmm1, 0x0 */
a->vgetmantps(ec, a->zmm2, a->zmm1 + a->sae(), a->immediate(ec, 0));

The desired rounding control can be defined using the (), (), (), and () assembler functions. Note that these functions can only be added to source register operands, not to destination operands.

/* vcvtsd2si rax{rn-sae}, xmm0 */
a->vcvtsd2si(ec, a->rax, a->xmm0 + a->rn_sae());

If the instruction to encode supports compressed displacement, the encoder compresses the displacement to favor the shortest encoding. The disp argument provided to the () assembler function must therefore be uncompressed.

/* vcvthf82ph zmm0, ymmword ptr [rax + 0x20] */
a->vcvthf82ph(ec, a->zmm0, a->memory(ec, a->rax, /*index=*/0, /*scale=*/0, /*disp=*/32));

The () assembler function can be used to set the default flags value. This function returns the assembler, allowing it to be chained with the instruction to encode.

/* ctesto {dfv=zf} rax, rcx */
a->dfv(ec, /*cf=*/0, /*zf=*/1, /*sf=*/0, /*of=*/0)->ctesto(ec, a->rax, a->rcx);

The () assembler function can be used to enable status flags update suppression. This function returns the assembler, allowing it to be chained with the instruction to encode.

/* {nf} add r31, r16 */
a->nf(ec)->add(ec, a->r31, a->r16);

Instructions capable of zeroing the upper part of the destination register (ZU) have dedicated instruction encoder functions: (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), () and ().

/* imulzu r16, r17, 0xff */
a->imulzu(ec, a->r16, a->r17, a->immediate(ec, 0xff));

The () assembler function appends raw_length number of bytes from raw to the instruction buffer.

const uint8_t nop[] = {0x66, 0x90};
a->raw(ec, nop, sizeof(nop));

Since int is a reserved keyword in C, the assembler cannot expose an instruction encoder function named () for the INT instruction. Instead, the function is suffixed with an underscore.

/* int 0x3 */
a->int_(ec, a->immediate(ec, 3));

In C++, the following additional instructions conflict with reserved identifiers and thus must also be suffixed with an underscore:

/* and rax, rax */
a->and_(ec, a->rax, a->rax);

/* not rax */
a->not_(ec, a->rax);

/* or rax, rax */
a->or_(ec, a->rax, a->rax);

/* xor rax, rax */
a->xor_(ec, a->rax, a->rax);

The memory allocated by the encoder can be managed by supplying implementations to the () function using the alloc and free arguments.

  • The alloc argument must conform to realloc(3)-like semantics. If the given ptr is not NULL, the returned memory address must contain old_size number of bytes copied from ptr. The returned memory address must always have a capacity of new_size number of bytes.
  • The free argument is guaranteed never to be given a NULL ptr argument.
  • The opaque argument is passed as-is to both callbacks.
static void *
encoder_alloc(void *ptr, size_t old_size, size_t new_size, void *arg)
{
	return realloc(ptr, new_size);
}

static void
encoder_free(void *ptr, size_t size, void *arg)
{
	free(ptr);
}

AED_x86_encoder *ec = AED_x86_encoder_alloc(0, encoder_alloc, encoder_free, NULL);

typedef struct AED_x86_assembler {
	size_t (*aaa)(AED_x86_encoder *);
	size_t (*aad)(AED_x86_encoder *, uintptr_t);
	size_t (*aadd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aam)(AED_x86_encoder *, uintptr_t);
	size_t (*aand)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aas)(AED_x86_encoder *);
	size_t (*adc)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*adc3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*adcx)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*adcx3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*add)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*add3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*addpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*addps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*addsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*addss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*addsubpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*addsubps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*adox)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*adox3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*aesdec)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aesdec128kl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aesdec256kl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aesdeclast)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aesdecwide128kl)(AED_x86_encoder *, uintptr_t);
	size_t (*aesdecwide256kl)(AED_x86_encoder *, uintptr_t);
	size_t (*aesenc)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aesenc128kl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aesenc256kl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aesenclast)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aesencwide128kl)(AED_x86_encoder *, uintptr_t);
	size_t (*aesencwide256kl)(AED_x86_encoder *, uintptr_t);
	size_t (*aesimc)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aeskeygenassist)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*and_)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*and3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*andn)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*andnpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*andnps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*andpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*andps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*aor)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*arpl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*axor)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*bextr)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*blendpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*blendps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*blendvpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*blendvps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*blsi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*blsmsk)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*blsr)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*bound)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*bsf)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*bsr)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*bswap)(AED_x86_encoder *, uintptr_t);
	size_t (*bt)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*btc)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*btr)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*bts)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*bzhi)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*call)(AED_x86_encoder *, uintptr_t);
	size_t (*cbw)(AED_x86_encoder *);
	size_t (*ccmpb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpf)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmple)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpnb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpnbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpnl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpnle)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpno)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpns)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpnz)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpo)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpt)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ccmpz)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cdq)(AED_x86_encoder *);
	size_t (*cdqe)(AED_x86_encoder *);
	size_t (*cfcmovb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovb3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovbe3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovl3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovle)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovle3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovnb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovnb3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovnbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovnbe3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovnl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovnl3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovnle)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovnle3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovno)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovno3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovnp)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovnp3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovns)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovns3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovnz)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovnz3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovo)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovo3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovp)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovp3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovs3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cfcmovz)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cfcmovz3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*clac)(AED_x86_encoder *);
	size_t (*clc)(AED_x86_encoder *);
	size_t (*cld)(AED_x86_encoder *);
	size_t (*cldemote)(AED_x86_encoder *, uintptr_t);
	size_t (*clflush)(AED_x86_encoder *, uintptr_t);
	size_t (*clflushopt)(AED_x86_encoder *, uintptr_t);
	size_t (*clgi)(AED_x86_encoder *);
	size_t (*cli)(AED_x86_encoder *);
	size_t (*clrssbsy)(AED_x86_encoder *, uintptr_t);
	size_t (*clts)(AED_x86_encoder *);
	size_t (*clui)(AED_x86_encoder *);
	size_t (*clwb)(AED_x86_encoder *, uintptr_t);
	size_t (*clzero)(AED_x86_encoder *);
	size_t (*cmc)(AED_x86_encoder *);
	size_t (*cmovb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovb3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovbe3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovl3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovle)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovle3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovnb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovnb3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovnbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovnbe3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovnl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovnl3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovnle)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovnle3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovno)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovno3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovnp)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovnp3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovns)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovns3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovnz)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovnz3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovo)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovo3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovp)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovp3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovs3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmovz)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmovz3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmp)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmpbexadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpbxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmplexadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmplxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpnbexadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpnbxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpnlexadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpnlxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpnoxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpnpxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpnsxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpnzxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpoxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmppd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmppxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmpsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmpsd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpsq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmpss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmpsxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*cmpxchg)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cmpxchg16b)(AED_x86_encoder *, uintptr_t);
	size_t (*cmpxchg8b)(AED_x86_encoder *, uintptr_t);
	size_t (*cmpzxadd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*comisd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*comiss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cpuid)(AED_x86_encoder *);
	size_t (*cqo)(AED_x86_encoder *);
	size_t (*crc32)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestf)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestle)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestnb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestnbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestnl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestnle)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestno)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestns)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestnz)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctesto)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctests)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestt)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ctestz)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtdq2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtdq2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtpd2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtpd2pi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtpd2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtpi2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtpi2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtps2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtps2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtps2pi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtsd2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtsd2ss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtsi2sd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtsi2ss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtss2sd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvtss2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvttpd2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvttpd2pi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvttps2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvttps2pi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvttsd2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cvttss2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*cwd)(AED_x86_encoder *);
	size_t (*cwde)(AED_x86_encoder *);
	size_t (*daa)(AED_x86_encoder *);
	size_t (*das)(AED_x86_encoder *);
	size_t (*dec)(AED_x86_encoder *, uintptr_t);
	size_t (*dec2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*div)(AED_x86_encoder *, uintptr_t);
	size_t (*divpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*divps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*divsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*divss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*dppd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*dpps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*emms)(AED_x86_encoder *);
	size_t (*encls)(AED_x86_encoder *);
	size_t (*enclu)(AED_x86_encoder *);
	size_t (*enclv)(AED_x86_encoder *);
	size_t (*encodekey128)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*encodekey256)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*endbr32)(AED_x86_encoder *);
	size_t (*endbr64)(AED_x86_encoder *);
	size_t (*enqcmd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*enqcmds)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*enter)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*erets)(AED_x86_encoder *);
	size_t (*eretu)(AED_x86_encoder *);
	size_t (*extractps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*f2xm1)(AED_x86_encoder *);
	size_t (*fabs)(AED_x86_encoder *);
	size_t (*fadd)(AED_x86_encoder *, uintptr_t);
	size_t (*faddp)(AED_x86_encoder *, uintptr_t);
	size_t (*fbld)(AED_x86_encoder *, uintptr_t);
	size_t (*fbstp)(AED_x86_encoder *, uintptr_t);
	size_t (*fchs)(AED_x86_encoder *);
	size_t (*fcmovb)(AED_x86_encoder *, uintptr_t);
	size_t (*fcmovbe)(AED_x86_encoder *, uintptr_t);
	size_t (*fcmove)(AED_x86_encoder *, uintptr_t);
	size_t (*fcmovnb)(AED_x86_encoder *, uintptr_t);
	size_t (*fcmovnbe)(AED_x86_encoder *, uintptr_t);
	size_t (*fcmovne)(AED_x86_encoder *, uintptr_t);
	size_t (*fcmovnu)(AED_x86_encoder *, uintptr_t);
	size_t (*fcmovu)(AED_x86_encoder *, uintptr_t);
	size_t (*fcom)(AED_x86_encoder *, uintptr_t);
	size_t (*fcomi)(AED_x86_encoder *, uintptr_t);
	size_t (*fcomip)(AED_x86_encoder *, uintptr_t);
	size_t (*fcomp)(AED_x86_encoder *, uintptr_t);
	size_t (*fcompp)(AED_x86_encoder *);
	size_t (*fcos)(AED_x86_encoder *);
	size_t (*fdecstp)(AED_x86_encoder *);
	size_t (*fdisi8087_nop)(AED_x86_encoder *);
	size_t (*fdiv)(AED_x86_encoder *, uintptr_t);
	size_t (*fdivp)(AED_x86_encoder *, uintptr_t);
	size_t (*fdivr)(AED_x86_encoder *, uintptr_t);
	size_t (*fdivrp)(AED_x86_encoder *, uintptr_t);
	size_t (*feni8087_nop)(AED_x86_encoder *);
	size_t (*ffree)(AED_x86_encoder *, uintptr_t);
	size_t (*ffreep)(AED_x86_encoder *, uintptr_t);
	size_t (*fiadd)(AED_x86_encoder *, uintptr_t);
	size_t (*ficom)(AED_x86_encoder *, uintptr_t);
	size_t (*ficomp)(AED_x86_encoder *, uintptr_t);
	size_t (*fidiv)(AED_x86_encoder *, uintptr_t);
	size_t (*fidivr)(AED_x86_encoder *, uintptr_t);
	size_t (*fild)(AED_x86_encoder *, uintptr_t);
	size_t (*fimul)(AED_x86_encoder *, uintptr_t);
	size_t (*fincstp)(AED_x86_encoder *);
	size_t (*fist)(AED_x86_encoder *, uintptr_t);
	size_t (*fistp)(AED_x86_encoder *, uintptr_t);
	size_t (*fisttp)(AED_x86_encoder *, uintptr_t);
	size_t (*fisub)(AED_x86_encoder *, uintptr_t);
	size_t (*fisubr)(AED_x86_encoder *, uintptr_t);
	size_t (*fld)(AED_x86_encoder *, uintptr_t);
	size_t (*fld1)(AED_x86_encoder *);
	size_t (*fldcw)(AED_x86_encoder *, uintptr_t);
	size_t (*fldenv)(AED_x86_encoder *, uintptr_t);
	size_t (*fldl2e)(AED_x86_encoder *);
	size_t (*fldl2t)(AED_x86_encoder *);
	size_t (*fldlg2)(AED_x86_encoder *);
	size_t (*fldln2)(AED_x86_encoder *);
	size_t (*fldpi)(AED_x86_encoder *);
	size_t (*fldz)(AED_x86_encoder *);
	size_t (*fmul)(AED_x86_encoder *, uintptr_t);
	size_t (*fmulp)(AED_x86_encoder *, uintptr_t);
	size_t (*fnclex)(AED_x86_encoder *);
	size_t (*fninit)(AED_x86_encoder *);
	size_t (*fnop)(AED_x86_encoder *);
	size_t (*fnsave)(AED_x86_encoder *, uintptr_t);
	size_t (*fnstcw)(AED_x86_encoder *, uintptr_t);
	size_t (*fnstenv)(AED_x86_encoder *, uintptr_t);
	size_t (*fnstsw)(AED_x86_encoder *, uintptr_t);
	size_t (*fpatan)(AED_x86_encoder *);
	size_t (*fprem)(AED_x86_encoder *);
	size_t (*fprem1)(AED_x86_encoder *);
	size_t (*fptan)(AED_x86_encoder *);
	size_t (*frndint)(AED_x86_encoder *);
	size_t (*frstor)(AED_x86_encoder *, uintptr_t);
	size_t (*fscale)(AED_x86_encoder *);
	size_t (*fsetpm287_nop)(AED_x86_encoder *);
	size_t (*fsin)(AED_x86_encoder *);
	size_t (*fsincos)(AED_x86_encoder *);
	size_t (*fsqrt)(AED_x86_encoder *);
	size_t (*fst)(AED_x86_encoder *, uintptr_t);
	size_t (*fstp)(AED_x86_encoder *, uintptr_t);
	size_t (*fstpnce)(AED_x86_encoder *, uintptr_t);
	size_t (*fsub)(AED_x86_encoder *, uintptr_t);
	size_t (*fsubp)(AED_x86_encoder *, uintptr_t);
	size_t (*fsubr)(AED_x86_encoder *, uintptr_t);
	size_t (*fsubrp)(AED_x86_encoder *, uintptr_t);
	size_t (*ftst)(AED_x86_encoder *);
	size_t (*fucom)(AED_x86_encoder *, uintptr_t);
	size_t (*fucomi)(AED_x86_encoder *, uintptr_t);
	size_t (*fucomip)(AED_x86_encoder *, uintptr_t);
	size_t (*fucomp)(AED_x86_encoder *, uintptr_t);
	size_t (*fucompp)(AED_x86_encoder *);
	size_t (*fwait)(AED_x86_encoder *);
	size_t (*fxam)(AED_x86_encoder *);
	size_t (*fxch)(AED_x86_encoder *, uintptr_t);
	size_t (*fxrstor)(AED_x86_encoder *, uintptr_t);
	size_t (*fxrstor64)(AED_x86_encoder *, uintptr_t);
	size_t (*fxsave)(AED_x86_encoder *, uintptr_t);
	size_t (*fxsave64)(AED_x86_encoder *, uintptr_t);
	size_t (*fxtract)(AED_x86_encoder *);
	size_t (*fyl2x)(AED_x86_encoder *);
	size_t (*fyl2xp1)(AED_x86_encoder *);
	size_t (*getsec)(AED_x86_encoder *);
	size_t (*gf2p8affineinvqb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*gf2p8affineqb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*gf2p8mulb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*haddpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*haddps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*hlt)(AED_x86_encoder *);
	size_t (*hreset)(AED_x86_encoder *, uintptr_t);
	size_t (*hsubpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*hsubps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ibhf)(AED_x86_encoder *);
	size_t (*idiv)(AED_x86_encoder *, uintptr_t);
	size_t (*imul)(AED_x86_encoder *, uintptr_t);
	size_t (*imul2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*imul3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*imulzu)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*in)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*inc)(AED_x86_encoder *, uintptr_t);
	size_t (*inc2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*incsspd)(AED_x86_encoder *, uintptr_t);
	size_t (*incsspq)(AED_x86_encoder *, uintptr_t);
	size_t (*insb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*insd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*insertps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*insw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*int_)(AED_x86_encoder *, uintptr_t);
	size_t (*int1)(AED_x86_encoder *);
	size_t (*int3)(AED_x86_encoder *);
	size_t (*into)(AED_x86_encoder *);
	size_t (*invd)(AED_x86_encoder *);
	size_t (*invept)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*invlpg)(AED_x86_encoder *, uintptr_t);
	size_t (*invpcid)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*invvpid)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*iret)(AED_x86_encoder *);
	size_t (*iretd)(AED_x86_encoder *);
	size_t (*iretq)(AED_x86_encoder *);
	size_t (*jb)(AED_x86_encoder *, uintptr_t);
	size_t (*jbe)(AED_x86_encoder *, uintptr_t);
	size_t (*jcxz)(AED_x86_encoder *, uintptr_t);
	size_t (*jecxz)(AED_x86_encoder *, uintptr_t);
	size_t (*jl)(AED_x86_encoder *, uintptr_t);
	size_t (*jle)(AED_x86_encoder *, uintptr_t);
	size_t (*jmp)(AED_x86_encoder *, uintptr_t);
	size_t (*jmpabs)(AED_x86_encoder *, uintptr_t);
	size_t (*jnb)(AED_x86_encoder *, uintptr_t);
	size_t (*jnbe)(AED_x86_encoder *, uintptr_t);
	size_t (*jnl)(AED_x86_encoder *, uintptr_t);
	size_t (*jnle)(AED_x86_encoder *, uintptr_t);
	size_t (*jno)(AED_x86_encoder *, uintptr_t);
	size_t (*jnp)(AED_x86_encoder *, uintptr_t);
	size_t (*jns)(AED_x86_encoder *, uintptr_t);
	size_t (*jnz)(AED_x86_encoder *, uintptr_t);
	size_t (*jo)(AED_x86_encoder *, uintptr_t);
	size_t (*jp)(AED_x86_encoder *, uintptr_t);
	size_t (*jrcxz)(AED_x86_encoder *, uintptr_t);
	size_t (*js)(AED_x86_encoder *, uintptr_t);
	size_t (*jz)(AED_x86_encoder *, uintptr_t);
	size_t (*kaddb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kaddd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kaddq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kaddw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kandb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kandd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kandnb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kandnd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kandnq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kandnw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kandq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kandw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kmovb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*kmovd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*kmovq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*kmovw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*knotb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*knotd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*knotq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*knotw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*korb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kord)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*korq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kortestb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*kortestd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*kortestq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*kortestw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*korw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kshiftlb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kshiftld)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kshiftlq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kshiftlw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kshiftrb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kshiftrd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kshiftrq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kshiftrw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*ktestb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ktestd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ktestq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ktestw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*kunpckbw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kunpckdq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kunpckwd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kxnorb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kxnord)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kxnorq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kxnorw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kxorb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kxord)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kxorq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*kxorw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*lahf)(AED_x86_encoder *);
	size_t (*lar)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lddqu)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ldmxcsr)(AED_x86_encoder *, uintptr_t);
	size_t (*lds)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ldtilecfg)(AED_x86_encoder *, uintptr_t);
	size_t (*lea)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*leave)(AED_x86_encoder *);
	size_t (*les)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lfence)(AED_x86_encoder *);
	size_t (*lfs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lgdt)(AED_x86_encoder *, uintptr_t);
	size_t (*lgs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lidt)(AED_x86_encoder *, uintptr_t);
	size_t (*lkgs)(AED_x86_encoder *, uintptr_t);
	size_t (*lldt)(AED_x86_encoder *, uintptr_t);
	size_t (*lmsw)(AED_x86_encoder *, uintptr_t);
	size_t (*loadiwkey)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lodsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lodsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lodsq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lodsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*loop)(AED_x86_encoder *, uintptr_t);
	size_t (*loope)(AED_x86_encoder *, uintptr_t);
	size_t (*loopne)(AED_x86_encoder *, uintptr_t);
	size_t (*lsl)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*lss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ltr)(AED_x86_encoder *, uintptr_t);
	size_t (*lzcnt)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*maskmovdqu)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*maskmovq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*maxpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*maxps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*maxsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*maxss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*mfence)(AED_x86_encoder *);
	size_t (*minpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*minps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*minsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*minss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*monitor)(AED_x86_encoder *);
	size_t (*montmul)(AED_x86_encoder *);
	size_t (*mov)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movapd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movaps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movbe)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movddup)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movdir64b)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movdiri)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movdq2q)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movdqa)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movdqu)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movhlps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movhpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movhps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movlhps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movlpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movlps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movmskpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movmskps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movntdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movntdqa)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movnti)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movntpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movntps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movntq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movq2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movrs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movshdup)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movsldup)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movsq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movsx)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movsxd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movupd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movups)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*movzx)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*mpsadbw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*mul)(AED_x86_encoder *, uintptr_t);
	size_t (*mulpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*mulps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*mulsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*mulss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*mulx)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*mwait)(AED_x86_encoder *);
	size_t (*neg)(AED_x86_encoder *, uintptr_t);
	size_t (*neg2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*nop)(AED_x86_encoder *);
	size_t (*nop1)(AED_x86_encoder *, uintptr_t);
	size_t (*nop2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*not_)(AED_x86_encoder *, uintptr_t);
	size_t (*not2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*or_)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*or3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*orpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*orps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*out)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*outsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*outsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*outsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pabsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pabsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pabsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*packssdw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*packsswb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*packusdw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*packuswb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*paddb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*paddd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*paddq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*paddsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*paddsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*paddusb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*paddusw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*paddw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*palignr)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pand)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pandn)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pause)(AED_x86_encoder *);
	size_t (*pavgb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pavgw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pblendvb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pblendw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pbndkb)(AED_x86_encoder *);
	size_t (*pclmulqdq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pcmpeqb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pcmpeqd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pcmpeqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pcmpeqw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pcmpestri)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pcmpestri64)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pcmpestrm)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pcmpestrm64)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pcmpgtb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pcmpgtd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pcmpgtq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pcmpgtw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pcmpistri)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pcmpistri64)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pcmpistrm)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pconfig)(AED_x86_encoder *);
	size_t (*pdep)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pext)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pextrb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pextrd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pextrq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pextrw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*phaddd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*phaddsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*phaddw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*phminposuw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*phsubd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*phsubsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*phsubw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pinsrb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pinsrd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pinsrq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pinsrw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pmaddubsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmaddwd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmaxsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmaxsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmaxsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmaxub)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmaxud)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmaxuw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pminsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pminsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pminsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pminub)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pminud)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pminuw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovmskb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovsxbd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovsxbq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovsxbw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovsxdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovsxwd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovsxwq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovzxbd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovzxbq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovzxbw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovzxdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovzxwd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmovzxwq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmuldq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmulhrsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmulhuw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmulhw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmulld)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmullw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pmuludq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pop)(AED_x86_encoder *, uintptr_t);
	size_t (*pop2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pop2p)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*popa)(AED_x86_encoder *);
	size_t (*popad)(AED_x86_encoder *);
	size_t (*popcnt)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*popf)(AED_x86_encoder *);
	size_t (*popfd)(AED_x86_encoder *);
	size_t (*popfq)(AED_x86_encoder *);
	size_t (*popp)(AED_x86_encoder *, uintptr_t);
	size_t (*por)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*prefetch)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetchit0)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetchit1)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetchnta)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetchrst2)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetcht0)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetcht1)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetcht2)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetchw)(AED_x86_encoder *, uintptr_t);
	size_t (*prefetchwt1)(AED_x86_encoder *, uintptr_t);
	size_t (*psadbw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pshufb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pshufd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pshufhw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pshuflw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*pshufw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*psignb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psignd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psignw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pslld)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pslldq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psllq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psllw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psrad)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psraw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psrld)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psrldq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psrlq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psrlw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psubb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psubd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psubq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psubsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psubsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psubusb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psubusw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*psubw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ptest)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ptwrite)(AED_x86_encoder *, uintptr_t);
	size_t (*punpckhbw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*punpckhdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*punpckhqdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*punpckhwd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*punpcklbw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*punpckldq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*punpcklqdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*punpcklwd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*push)(AED_x86_encoder *, uintptr_t);
	size_t (*push2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*push2p)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*pusha)(AED_x86_encoder *);
	size_t (*pushad)(AED_x86_encoder *);
	size_t (*pushf)(AED_x86_encoder *);
	size_t (*pushfd)(AED_x86_encoder *);
	size_t (*pushfq)(AED_x86_encoder *);
	size_t (*pushp)(AED_x86_encoder *, uintptr_t);
	size_t (*pxor)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rcl)(AED_x86_encoder *, uintptr_t);
	size_t (*rcl2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rcl3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*rcpps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rcpss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rcr)(AED_x86_encoder *, uintptr_t);
	size_t (*rcr2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rcr3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*rdfsbase)(AED_x86_encoder *, uintptr_t);
	size_t (*rdgsbase)(AED_x86_encoder *, uintptr_t);
	size_t (*rdmsr)(AED_x86_encoder *);
	size_t (*rdmsr2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rdmsrlist)(AED_x86_encoder *);
	size_t (*rdpid)(AED_x86_encoder *, uintptr_t);
	size_t (*rdpkru)(AED_x86_encoder *);
	size_t (*rdpmc)(AED_x86_encoder *);
	size_t (*rdrand)(AED_x86_encoder *, uintptr_t);
	size_t (*rdseed)(AED_x86_encoder *, uintptr_t);
	size_t (*rdsspd)(AED_x86_encoder *, uintptr_t);
	size_t (*rdsspq)(AED_x86_encoder *, uintptr_t);
	size_t (*rdtsc)(AED_x86_encoder *);
	size_t (*rdtscp)(AED_x86_encoder *);
	size_t (*ret)(AED_x86_encoder *);
	size_t (*ret1)(AED_x86_encoder *, uintptr_t);
	size_t (*rmpchkd)(AED_x86_encoder *);
	size_t (*rmpopt)(AED_x86_encoder *);
	size_t (*rol)(AED_x86_encoder *, uintptr_t);
	size_t (*rol2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rol3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*ror)(AED_x86_encoder *, uintptr_t);
	size_t (*ror2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ror3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*rorx)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*roundpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*roundps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*roundsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*roundss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*rsm)(AED_x86_encoder *);
	size_t (*rsqrtps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rsqrtss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*rstorssp)(AED_x86_encoder *, uintptr_t);
	size_t (*sahf)(AED_x86_encoder *);
	size_t (*salc)(AED_x86_encoder *);
	size_t (*sar)(AED_x86_encoder *, uintptr_t);
	size_t (*sar2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sar3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*sarx)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*saveprevssp)(AED_x86_encoder *);
	size_t (*sbb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sbb3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*scasb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*scasd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*scasq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*scasw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*seamcall)(AED_x86_encoder *);
	size_t (*seamops)(AED_x86_encoder *);
	size_t (*seamret)(AED_x86_encoder *);
	size_t (*senduipi)(AED_x86_encoder *, uintptr_t);
	size_t (*serialize)(AED_x86_encoder *);
	size_t (*setb)(AED_x86_encoder *, uintptr_t);
	size_t (*setbe)(AED_x86_encoder *, uintptr_t);
	size_t (*setl)(AED_x86_encoder *, uintptr_t);
	size_t (*setle)(AED_x86_encoder *, uintptr_t);
	size_t (*setnb)(AED_x86_encoder *, uintptr_t);
	size_t (*setnbe)(AED_x86_encoder *, uintptr_t);
	size_t (*setnl)(AED_x86_encoder *, uintptr_t);
	size_t (*setnle)(AED_x86_encoder *, uintptr_t);
	size_t (*setno)(AED_x86_encoder *, uintptr_t);
	size_t (*setnp)(AED_x86_encoder *, uintptr_t);
	size_t (*setns)(AED_x86_encoder *, uintptr_t);
	size_t (*setnz)(AED_x86_encoder *, uintptr_t);
	size_t (*seto)(AED_x86_encoder *, uintptr_t);
	size_t (*setp)(AED_x86_encoder *, uintptr_t);
	size_t (*sets)(AED_x86_encoder *, uintptr_t);
	size_t (*setssbsy)(AED_x86_encoder *);
	size_t (*setz)(AED_x86_encoder *, uintptr_t);
	size_t (*setzub)(AED_x86_encoder *, uintptr_t);
	size_t (*setzube)(AED_x86_encoder *, uintptr_t);
	size_t (*setzul)(AED_x86_encoder *, uintptr_t);
	size_t (*setzule)(AED_x86_encoder *, uintptr_t);
	size_t (*setzunb)(AED_x86_encoder *, uintptr_t);
	size_t (*setzunbe)(AED_x86_encoder *, uintptr_t);
	size_t (*setzunl)(AED_x86_encoder *, uintptr_t);
	size_t (*setzunle)(AED_x86_encoder *, uintptr_t);
	size_t (*setzuno)(AED_x86_encoder *, uintptr_t);
	size_t (*setzunp)(AED_x86_encoder *, uintptr_t);
	size_t (*setzuns)(AED_x86_encoder *, uintptr_t);
	size_t (*setzunz)(AED_x86_encoder *, uintptr_t);
	size_t (*setzuo)(AED_x86_encoder *, uintptr_t);
	size_t (*setzup)(AED_x86_encoder *, uintptr_t);
	size_t (*setzus)(AED_x86_encoder *, uintptr_t);
	size_t (*setzuz)(AED_x86_encoder *, uintptr_t);
	size_t (*sfence)(AED_x86_encoder *);
	size_t (*sgdt)(AED_x86_encoder *, uintptr_t);
	size_t (*sha1msg1)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sha1msg2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sha1nexte)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sha1rnds4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*sha256msg1)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sha256msg2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sha256rnds2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*shl)(AED_x86_encoder *, uintptr_t);
	size_t (*shl2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*shl3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shld)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*shld3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shld4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shlx)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shr)(AED_x86_encoder *, uintptr_t);
	size_t (*shr2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*shr3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shrd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*shrd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shrd4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shrx)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shufpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*shufps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*sidt)(AED_x86_encoder *, uintptr_t);
	size_t (*sldt)(AED_x86_encoder *, uintptr_t);
	size_t (*smsw)(AED_x86_encoder *, uintptr_t);
	size_t (*sqrtpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sqrtps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sqrtsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sqrtss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*stac)(AED_x86_encoder *);
	size_t (*stc)(AED_x86_encoder *);
	size_t (*std)(AED_x86_encoder *);
	size_t (*stgi)(AED_x86_encoder *);
	size_t (*sti)(AED_x86_encoder *);
	size_t (*stmxcsr)(AED_x86_encoder *, uintptr_t);
	size_t (*stosb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*stosd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*stosq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*stosw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*str)(AED_x86_encoder *, uintptr_t);
	size_t (*sttilecfg)(AED_x86_encoder *, uintptr_t);
	size_t (*stui)(AED_x86_encoder *);
	size_t (*sub)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*sub3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*subpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*subps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*subsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*subss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*swapgs)(AED_x86_encoder *);
	size_t (*syscall)(AED_x86_encoder *);
	size_t (*sysenter)(AED_x86_encoder *);
	size_t (*sysexit)(AED_x86_encoder *);
	size_t (*sysret)(AED_x86_encoder *);
	size_t (*tcmmimfp16ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tcmmrlfp16ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tcvtrowd2ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tcvtrowps2bf16h)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tcvtrowps2bf16l)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tcvtrowps2phh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tcvtrowps2phl)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdcall)(AED_x86_encoder *);
	size_t (*tdpbf16ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdpbf8ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdpbhf8ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdpbssd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdpbsud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdpbusd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdpbuud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdpfp16ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdphbf8ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tdphf8ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*test)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*testui)(AED_x86_encoder *);
	size_t (*tileloadd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*tileloaddrs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*tileloaddrst1)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*tileloaddt1)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*tilemovrow)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tilerelease)(AED_x86_encoder *);
	size_t (*tilestored)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*tilezero)(AED_x86_encoder *, uintptr_t);
	size_t (*tmmultf32ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*tpause)(AED_x86_encoder *, uintptr_t);
	size_t (*tzcnt)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ucomisd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ucomiss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ud0)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ud1)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*ud2)(AED_x86_encoder *);
	size_t (*udb)(AED_x86_encoder *);
	size_t (*uiret)(AED_x86_encoder *);
	size_t (*umonitor)(AED_x86_encoder *, uintptr_t);
	size_t (*umwait)(AED_x86_encoder *, uintptr_t);
	size_t (*unpckhpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*unpckhps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*unpcklpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*unpcklps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*urdmsr)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*uwrmsr)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*v4fmaddps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*v4fmaddss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*v4fnmaddps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*v4fnmaddss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddsubpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaddsubps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaesdec)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaesdeclast)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaesenc)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaesenclast)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vaesimc)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vaeskeygenassist)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*valignd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*valignq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vandnpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vandnps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vandpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vandps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vbcstnebf162ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbcstnesh2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbitrevb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vblendmpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vblendmps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vblendpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vblendps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vblendvpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vblendvps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vbmacor16x16x16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vbmacxor16x16x16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vbroadcastf128)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcastf32x2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcastf32x4)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcastf32x8)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcastf64x2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcastf64x4)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcasti128)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcasti32x2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcasti32x4)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcasti32x8)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcasti64x2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcasti64x4)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcastsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vbroadcastss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcmpbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcmppd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcmpph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcmpps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcmpsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcmpsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcmpss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcomisbf16)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcomisd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcomish)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcomiss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcompresspd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcompressps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcomxsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcomxsh)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcomxss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvt2ph2bf8)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvt2ph2bf8s)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvt2ph2hf8)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvt2ph2hf8s)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvt2ps2phx)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtbf162ibs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtbf162iubs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtbiasph2bf8)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtbiasph2bf8s)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtbiasph2hf8)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtbiasph2hf8s)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtdq2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtdq2ph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtdq2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvthf82ph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtne2ps2bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtneebf162ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtneeph2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtneobf162ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtneoph2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtneps2bf16)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtpd2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtpd2ph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtpd2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtpd2qq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtpd2udq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtpd2uqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2bf8)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2bf8s)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2hf8)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2hf8s)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2ibs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2iubs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2psx)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2qq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2udq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2uqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2uw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtph2w)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtps2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtps2ibs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtps2iubs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtps2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtps2ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtps2phx)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtps2qq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtps2udq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtps2uqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtqq2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtqq2ph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtqq2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtsd2sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtsd2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtsd2ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtsd2usi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtsh2sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtsh2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtsh2ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtsh2usi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtsi2sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtsi2sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtsi2ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtss2sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtss2sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtss2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtss2usi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttbf162ibs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttbf162iubs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttpd2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttpd2dqs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttpd2qq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttpd2qqs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttpd2udq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttpd2udqs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttpd2uqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttpd2uqqs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttph2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttph2ibs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttph2iubs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttph2qq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttph2udq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttph2uqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttph2uw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttph2w)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2dq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2dqs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2ibs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2iubs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2qq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2qqs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2udq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2udqs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2uqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttps2uqqs)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttsd2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttsd2sis)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttsd2usi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttsd2usis)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttsh2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttsh2usi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttss2si)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttss2sis)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttss2usi)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvttss2usis)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtudq2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtudq2ph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtudq2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtuqq2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtuqq2ph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtuqq2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtusi2sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtusi2sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtusi2ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vcvtuw2ph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vcvtw2ph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vdbpsadbw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdivbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdivpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdivph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdivps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdivsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdivsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdivss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdpbf16ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdppd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdpphps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vdpps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*verr)(AED_x86_encoder *, uintptr_t);
	size_t (*verw)(AED_x86_encoder *, uintptr_t);
	size_t (*vexp2pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vexp2ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vexpandpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vexpandps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vextractf128)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextractf32x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextractf32x8)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextractf64x2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextractf64x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextracti128)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextracti32x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextracti32x8)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextracti64x2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextracti64x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vextractps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfcmaddcph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfcmaddcsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfcmulcph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfcmulcsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfixupimmpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfixupimmps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfixupimmsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfixupimmss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd132bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd132pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd132ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd132ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd132sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd132sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd132ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd213bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd213pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd213ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd213ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd213sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd213sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd213ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd231bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd231pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd231ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd231ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd231sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd231sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmadd231ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddcph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddcsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub132pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub132ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub132ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub213pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub213ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub213ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub231pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub231ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmaddsub231ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub132bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub132pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub132ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub132ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub132sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub132sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub132ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub213bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub213pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub213ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub213ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub213sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub213sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub213ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub231bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub231pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub231ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub231ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub231sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub231sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsub231ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd132pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd132ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd132ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd213pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd213ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd213ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd231pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd231ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmsubadd231ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmulcph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfmulcsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd132bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd132pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd132ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd132ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd132sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd132sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd132ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd213bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd213pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd213ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd213ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd213sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd213sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd213ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd231bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd231pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd231ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd231ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd231sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd231sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmadd231ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub132bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub132pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub132ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub132ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub132sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub132sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub132ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub213bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub213pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub213ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub213ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub213sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub213sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub213ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub231bf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub231pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub231ph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub231ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub231sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub231sh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfnmsub231ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfpclassbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfpclasspd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfpclassph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfpclassps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfpclasssd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfpclasssh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vfpclassss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgatherdpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vgatherdpd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgatherdps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vgatherdps3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgatherpf0dpd)(AED_x86_encoder *, uintptr_t);
	size_t (*vgatherpf0dps)(AED_x86_encoder *, uintptr_t);
	size_t (*vgatherpf0qpd)(AED_x86_encoder *, uintptr_t);
	size_t (*vgatherpf0qps)(AED_x86_encoder *, uintptr_t);
	size_t (*vgatherpf1dpd)(AED_x86_encoder *, uintptr_t);
	size_t (*vgatherpf1dps)(AED_x86_encoder *, uintptr_t);
	size_t (*vgatherpf1qpd)(AED_x86_encoder *, uintptr_t);
	size_t (*vgatherpf1qps)(AED_x86_encoder *, uintptr_t);
	size_t (*vgatherqpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vgatherqpd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgatherqps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vgatherqps3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetexpbf16)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vgetexppd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vgetexpph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vgetexpps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vgetexpsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetexpsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetexpss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetmantbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetmantpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetmantph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetmantps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetmantsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetmantsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgetmantss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgf2p8affineinvqb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgf2p8affineqb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vgf2p8mulb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vhaddpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vhaddps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vhsubpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vhsubps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinsertf128)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinsertf32x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinsertf32x8)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinsertf64x2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinsertf64x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinserti128)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinserti32x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinserti32x8)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinserti64x2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinserti64x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vinsertps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vlddqu)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vldmxcsr)(AED_x86_encoder *, uintptr_t);
	size_t (*vmaskmovdqu)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmaskmovpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmaskmovps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmaxbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmaxpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmaxph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmaxps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmaxsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmaxsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmaxss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmcall)(AED_x86_encoder *);
	size_t (*vmclear)(AED_x86_encoder *, uintptr_t);
	size_t (*vmfunc)(AED_x86_encoder *);
	size_t (*vminbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminmaxbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminmaxpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminmaxph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminmaxps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminmaxsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminmaxsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminmaxss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vminss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmlaunch)(AED_x86_encoder *);
	size_t (*vmload)(AED_x86_encoder *);
	size_t (*vmovapd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovaps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovddup)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovdqa)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovdqa32)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovdqa64)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovdqu)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovdqu16)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovdqu32)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovdqu64)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovdqu8)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovhlps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovhpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovhpd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovhps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovhps3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovlhps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovlpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovlpd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovlps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovlps3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovmskpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovmskps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovntdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovntdqa)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovntpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovntps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovrsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovrsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovrsq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovrsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovsd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovsh)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovsh3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovshdup)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovsldup)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovss3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmovupd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovups)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmovw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmpsadbw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmptrld)(AED_x86_encoder *, uintptr_t);
	size_t (*vmptrst)(AED_x86_encoder *, uintptr_t);
	size_t (*vmread)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmresume)(AED_x86_encoder *);
	size_t (*vmrun)(AED_x86_encoder *);
	size_t (*vmsave)(AED_x86_encoder *);
	size_t (*vmulbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmulpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmulph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmulps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmulsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmulsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmulss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vmwrite)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vmxoff)(AED_x86_encoder *);
	size_t (*vmxon)(AED_x86_encoder *, uintptr_t);
	size_t (*vorpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vorps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vp2intersectd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vp2intersectq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vp4dpwssd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vp4dpwssds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpabsb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpabsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpabsq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpabsw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpackssdw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpacksswb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpackusdw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpackuswb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpaddb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpaddd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpaddq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpaddsb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpaddsw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpaddusb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpaddusw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpaddw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpalignr)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpand)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpandd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpandn)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpandnd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpandnq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpandq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpavgb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpavgw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpblendd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpblendmb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpblendmd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpblendmq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpblendmw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpblendvb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpblendw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpbroadcastb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpbroadcastd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpbroadcastmb2q)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpbroadcastmw2d)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpbroadcastq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpbroadcastw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpclmulqdq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpeqb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpeqd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpeqq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpeqw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpestri)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpestri64)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpestrm)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpestrm64)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpgtb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpgtd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpgtq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpgtw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpistri)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpistri64)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpistrm)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpub)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpuq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpuw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcmpw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpcompressb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpcompressd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpcompressq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpcompressw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpconflictd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpconflictq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpdpbssd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpbssds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpbsud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpbsuds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpbusd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpbusds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpbuud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpbuuds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpwssd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpwssds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpwsud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpwsuds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpwusd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpwusds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpwuud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpdpwuuds)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vperm2f128)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vperm2i128)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermi2b)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermi2d)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermi2pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermi2ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermi2q)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermi2w)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermilpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermilps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermt2b)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermt2d)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermt2pd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermt2ps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermt2q)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermt2w)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpermw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpexpandb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpexpandd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpexpandq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpexpandw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpextrb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpextrd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpextrq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpextrw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpgatherdd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpgatherdd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpgatherdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpgatherdq3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpgatherqd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpgatherqd3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpgatherqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpgatherqq3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vphaddd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vphaddsw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vphaddw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vphminposuw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vphsubd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vphsubsw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vphsubw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpinsrb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpinsrd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpinsrq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpinsrw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vplzcntd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vplzcntq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmadd52huq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmadd52luq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaddubsw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaddwd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaskmovd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaskmovq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaxsb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaxsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaxsq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaxsw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaxub)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaxud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaxuq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmaxuw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpminsb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpminsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpminsq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpminsw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpminub)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpminud)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpminuq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpminuw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmovb2m)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovd2m)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovdb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovdw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovm2b)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovm2d)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovm2q)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovm2w)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovmskb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovq2m)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovqb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovqd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovqw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsdb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsdw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsqb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsqd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsqw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovswb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsxbd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsxbq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsxbw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsxdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsxwd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovsxwq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovusdb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovusdw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovusqb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovusqd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovusqw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovuswb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovw2m)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovwb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovzxbd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovzxbq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovzxbw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovzxdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovzxwd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmovzxwq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpmuldq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmulhrsw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmulhuw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmulhw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmulld)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmullq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmullw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmultishiftqb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpmuludq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpopcntb)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpopcntd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpopcntq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpopcntw)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpor)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpord)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vporq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vprold)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vprolq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vprolvd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vprolvq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vprord)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vprorq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vprorvd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vprorvq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsadbw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpscatterdd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpscatterdq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpscatterqd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpscatterqq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vpshldd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshldq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshldvd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshldvq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshldvw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshldw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshrdd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshrdq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshrdvd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshrdvq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshrdvw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshrdw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshufb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshufbitqmb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshufd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshufhw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpshuflw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsignb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsignd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsignw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpslld)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpslldq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsllq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsllvd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsllvq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsllvw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsllw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsrad)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsraq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsravd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsravq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsravw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsraw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsrld)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsrldq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsrlq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsrlvd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsrlvq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsrlvw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsrlw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsubb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsubd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsubq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsubsb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsubsw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsubusb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsubusw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpsubw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpternlogd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpternlogq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vptest)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vptestmb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vptestmd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vptestmq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vptestmw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vptestnmb)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vptestnmd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vptestnmq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vptestnmw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpunpckhbw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpunpckhdq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpunpckhqdq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpunpckhwd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpunpcklbw)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpunpckldq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpunpcklqdq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpunpcklwd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpxor)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpxord)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vpxorq)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrangepd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrangeps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrangesd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrangess)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrcp14pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrcp14ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrcp14sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrcp14ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrcp28pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrcp28ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrcp28sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrcp28ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrcpbf16)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrcpph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrcpps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrcpsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrcpss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vreducebf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vreducepd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vreduceph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vreduceps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vreducesd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vreducesh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vreducess)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrndscalebf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrndscalepd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrndscaleph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrndscaleps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrndscalesd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrndscalesh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrndscaless)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vroundpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vroundps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vroundsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vroundss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrsqrt14pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrsqrt14ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrsqrt14sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrsqrt14ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrsqrt28pd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrsqrt28ps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrsqrt28sd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrsqrt28ss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrsqrtbf16)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrsqrtph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrsqrtps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vrsqrtsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vrsqrtss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vscalefbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vscalefpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vscalefph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vscalefps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vscalefsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vscalefsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vscalefss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vscatterdpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vscatterdps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vscatterpf0dpd)(AED_x86_encoder *, uintptr_t);
	size_t (*vscatterpf0dps)(AED_x86_encoder *, uintptr_t);
	size_t (*vscatterpf0qpd)(AED_x86_encoder *, uintptr_t);
	size_t (*vscatterpf0qps)(AED_x86_encoder *, uintptr_t);
	size_t (*vscatterpf1dpd)(AED_x86_encoder *, uintptr_t);
	size_t (*vscatterpf1dps)(AED_x86_encoder *, uintptr_t);
	size_t (*vscatterpf1qpd)(AED_x86_encoder *, uintptr_t);
	size_t (*vscatterpf1qps)(AED_x86_encoder *, uintptr_t);
	size_t (*vscatterqpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vscatterqps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vsha512msg1)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vsha512msg2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vsha512rnds2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vshuff32x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vshuff64x2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vshufi32x4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vshufi64x2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vshufpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vshufps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsm3msg1)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsm3msg2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsm3rnds2)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsm4key4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsm4rnds4)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsqrtbf16)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vsqrtpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vsqrtph)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vsqrtps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vsqrtsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsqrtsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsqrtss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vstmxcsr)(AED_x86_encoder *, uintptr_t);
	size_t (*vsubbf16)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsubpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsubph)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsubps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsubsd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsubsh)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vsubss)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vtestpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vtestps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vucomisd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vucomish)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vucomiss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vucomxsd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vucomxsh)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vucomxss)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*vunpckhpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vunpckhps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vunpcklpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vunpcklps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vxorpd)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vxorps)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*vzeroall)(AED_x86_encoder *);
	size_t (*vzeroupper)(AED_x86_encoder *);
	size_t (*wbinvd)(AED_x86_encoder *);
	size_t (*wbnoinvd)(AED_x86_encoder *);
	size_t (*wrfsbase)(AED_x86_encoder *, uintptr_t);
	size_t (*wrgsbase)(AED_x86_encoder *, uintptr_t);
	size_t (*wrmsr)(AED_x86_encoder *);
	size_t (*wrmsrlist)(AED_x86_encoder *);
	size_t (*wrmsrns)(AED_x86_encoder *);
	size_t (*wrmsrns2)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*wrpkru)(AED_x86_encoder *);
	size_t (*wrssd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*wrssq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*wrussd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*wrussq)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*xabort)(AED_x86_encoder *, uintptr_t);
	size_t (*xadd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*xbegin)(AED_x86_encoder *, uintptr_t);
	size_t (*xchg)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*xcryptcbc)(AED_x86_encoder *);
	size_t (*xcryptcfb)(AED_x86_encoder *);
	size_t (*xcryptctr)(AED_x86_encoder *);
	size_t (*xcryptecb)(AED_x86_encoder *);
	size_t (*xcryptofb)(AED_x86_encoder *);
	size_t (*xend)(AED_x86_encoder *);
	size_t (*xgetbv)(AED_x86_encoder *);
	size_t (*xlat)(AED_x86_encoder *);
	size_t (*xor_)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*xor3)(AED_x86_encoder *, uintptr_t, uintptr_t, uintptr_t);
	size_t (*xorpd)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*xorps)(AED_x86_encoder *, uintptr_t, uintptr_t);
	size_t (*xresldtrk)(AED_x86_encoder *);
	size_t (*xrstor)(AED_x86_encoder *, uintptr_t);
	size_t (*xrstor64)(AED_x86_encoder *, uintptr_t);
	size_t (*xrstors)(AED_x86_encoder *, uintptr_t);
	size_t (*xrstors64)(AED_x86_encoder *, uintptr_t);
	size_t (*xsave)(AED_x86_encoder *, uintptr_t);
	size_t (*xsave64)(AED_x86_encoder *, uintptr_t);
	size_t (*xsavec)(AED_x86_encoder *, uintptr_t);
	size_t (*xsavec64)(AED_x86_encoder *, uintptr_t);
	size_t (*xsaveopt)(AED_x86_encoder *, uintptr_t);
	size_t (*xsaveopt64)(AED_x86_encoder *, uintptr_t);
	size_t (*xsaves)(AED_x86_encoder *, uintptr_t);
	size_t (*xsaves64)(AED_x86_encoder *, uintptr_t);
	size_t (*xsetbv)(AED_x86_encoder *);
	size_t (*xsha1)(AED_x86_encoder *);
	size_t (*xsha256)(AED_x86_encoder *);
	size_t (*xstore)(AED_x86_encoder *);
	size_t (*xsusldtrk)(AED_x86_encoder *);
	size_t (*xtest)(AED_x86_encoder *);
} AED_x86_assembler;

The return values of all instruction encoder functions, align(), fill() and raw() are interpreted as follows:

> 0
Instruction successfully encoded. Returns the length of the encoded instruction.
= 0
Failed to encode instruction. Errors can be further diagnosed using AED_x86_encoder_get_error().

aed_x86_decoder(3), aed_x86_instruction_walk(3), aed_x86_serializer(3)

Anton Lindqvist <anton@basename.se>

OpenBSD 7.8 June 8, 2025 AED_X86_ENCODER(3)