pub type sljit_u8 = ::core::ffi::c_uchar;
pub type sljit_s8 = ::core::ffi::c_schar;
pub type sljit_u16 = ::core::ffi::c_ushort;
pub type sljit_s16 = ::core::ffi::c_short;
pub type sljit_u32 = ::core::ffi::c_uint;
pub type sljit_s32 = ::core::ffi::c_int;
pub type sljit_uw = ::core::ffi::c_ulong;
pub type sljit_sw = ::core::ffi::c_long;
pub type sljit_sp = sljit_sw;
pub type sljit_up = sljit_uw;
pub type sljit_f32 = f32;
pub type sljit_f64 = f64;
#[repr(C)]
#[repr(align(8))]
#[derive(Debug, Copy, Clone, Hash, ConstDefault, TypedBuilder)]
pub struct sljit_memory_fragment {
pub _bindgen_opaque_blob: [u64; 3usize],
}
#[repr(C)]
#[repr(align(8))]
#[derive(Debug, Copy, Clone, Hash, TypedBuilder)]
pub struct sljit_label {
pub _bindgen_opaque_blob: [u64; 3usize],
}
#[repr(C)]
#[repr(align(8))]
#[derive(Debug, Copy, Clone, Hash, TypedBuilder)]
pub struct sljit_jump {
pub _bindgen_opaque_blob: [u64; 4usize],
}
#[repr(C)]
#[repr(align(8))]
#[derive(Debug, Copy, Clone, Hash, ConstDefault, TypedBuilder)]
pub struct sljit_const {
pub _bindgen_opaque_blob: [u64; 2usize],
}
#[repr(C)]
#[repr(align(8))]
#[derive(Debug, Copy, Clone, Hash, ConstDefault, TypedBuilder)]
pub struct sljit_generate_code_buffer {
pub _bindgen_opaque_blob: [u64; 3usize],
}
#[repr(C)]
#[repr(align(8))]
#[derive(Debug, Copy, Clone, Hash, TypedBuilder)]
pub struct sljit_read_only_buffer {
pub _bindgen_opaque_blob: [u64; 3usize],
}
#[repr(C)]
#[repr(align(8))]
#[derive(Debug, Copy, Clone, Hash, ConstDefault, TypedBuilder)]
pub struct sljit_compiler {
pub _bindgen_opaque_blob: [u64; 19usize],
}
#[repr(C)]
#[repr(align(8))]
#[derive(Debug, Copy, Clone, Hash, ConstDefault, TypedBuilder)]
pub struct sljit_stack {
pub _bindgen_opaque_blob: [u64; 4usize],
}
pub const SLJIT_CONFIG_AUTO: i32 = 1;
pub const SLJIT_CONFIG_X86_64: i32 = 1;
pub const SLJIT_CONFIG_X86: i32 = 1;
pub const SLJIT_UTIL_STACK: i32 = 1;
pub const SLJIT_UTIL_SIMPLE_STACK_ALLOCATION: i32 = 0;
pub const SLJIT_SINGLE_THREADED: i32 = 0;
pub const SLJIT_STD_MACROS_DEFINED: i32 = 0;
pub const SLJIT_EXECUTABLE_ALLOCATOR: i32 = 1;
pub const SLJIT_PROT_EXECUTABLE_ALLOCATOR: i32 = 0;
pub const SLJIT_WX_EXECUTABLE_ALLOCATOR: i32 = 0;
pub const SLJIT_ARGUMENT_CHECKS: i32 = 0;
pub const SLJIT_64BIT_ARCHITECTURE: i32 = 1;
pub const SLJIT_WORD_SHIFT: i32 = 3;
pub const SLJIT_POINTER_SHIFT: i32 = 3;
pub const SLJIT_F32_SHIFT: i32 = 2;
pub const SLJIT_F64_SHIFT: i32 = 3;
pub const SLJIT_CONV_RESULT_MAX_INT: i32 = 0;
pub const SLJIT_CONV_RESULT_MIN_INT: i32 = 1;
pub const SLJIT_CONV_RESULT_ZERO: i32 = 2;
pub const SLJIT_CONV_MAX_FLOAT: i32 = 1;
pub const SLJIT_CONV_MIN_FLOAT: i32 = 1;
pub const SLJIT_CONV_NAN_FLOAT: i32 = 1;
pub const SLJIT_LITTLE_ENDIAN: i32 = 1;
pub const SLJIT_UNALIGNED: i32 = 1;
pub const SLJIT_FPU_UNALIGNED: i32 = 1;
pub const SLJIT_RETURN_ADDRESS_OFFSET: i32 = 0;
pub const SLJIT_NUMBER_OF_REGISTERS: i32 = 13;
pub const SLJIT_NUMBER_OF_TEMPORARY_REGISTERS: i32 = 2;
pub const SLJIT_NUMBER_OF_FLOAT_REGISTERS: i32 = 15;
pub const SLJIT_NUMBER_OF_TEMPORARY_FLOAT_REGISTERS: i32 = 1;
pub const SLJIT_NUMBER_OF_SAVED_REGISTERS: i32 = 6;
pub const SLJIT_NUMBER_OF_SAVED_FLOAT_REGISTERS: i32 = 0;
pub const SLJIT_LOCALS_OFFSET_BASE: i32 = 0;
pub const SLJIT_MASKED_SHIFT: i32 = 1;
pub const SLJIT_MASKED_SHIFT32: i32 = 1;
pub const SLJIT_UPPER_BITS_IGNORED: i32 = 1;
pub const SLJIT_UPPER_BITS_ZERO_EXTENDED: i32 = 1;
pub const SLJIT_NUMBER_OF_VECTOR_REGISTERS: i32 = 15;
pub const SLJIT_NUMBER_OF_SAVED_VECTOR_REGISTERS: i32 = 0;
pub const SLJIT_NUMBER_OF_TEMPORARY_VECTOR_REGISTERS: i32 = 1;
pub const SLJIT_LOCALS_OFFSET: i32 = 0;
pub const SLJIT_NUMBER_OF_SCRATCH_REGISTERS: i32 = 7;
pub const SLJIT_NUMBER_OF_SCRATCH_FLOAT_REGISTERS: i32 = 15;
pub const SLJIT_NUMBER_OF_SCRATCH_VECTOR_REGISTERS: i32 = 15;
pub const SLJIT_TMP_REGISTER_BASE: i32 = 15;
pub const SLJIT_TMP_FREGISTER_BASE: i32 = 16;
pub const SLJIT_TMP_VREGISTER_BASE: i32 = 16;
pub const SLJIT_TMP_R0: i32 = 15;
pub const SLJIT_TMP_R1: i32 = 16;
pub const SLJIT_TMP_R2: i32 = 17;
pub const SLJIT_TMP_R3: i32 = 18;
pub const SLJIT_TMP_R4: i32 = 19;
pub const SLJIT_TMP_R5: i32 = 20;
pub const SLJIT_TMP_R6: i32 = 21;
pub const SLJIT_TMP_R7: i32 = 22;
pub const SLJIT_TMP_R8: i32 = 23;
pub const SLJIT_TMP_R9: i32 = 24;
pub const SLJIT_TMP_FR0: i32 = 16;
pub const SLJIT_TMP_FR1: i32 = 17;
pub const SLJIT_TMP_FR2: i32 = 18;
pub const SLJIT_TMP_FR3: i32 = 19;
pub const SLJIT_TMP_FR4: i32 = 20;
pub const SLJIT_TMP_FR5: i32 = 21;
pub const SLJIT_TMP_FR6: i32 = 22;
pub const SLJIT_TMP_FR7: i32 = 23;
pub const SLJIT_TMP_FR8: i32 = 24;
pub const SLJIT_TMP_FR9: i32 = 25;
pub const SLJIT_TMP_VR0: i32 = 16;
pub const SLJIT_TMP_VR1: i32 = 17;
pub const SLJIT_TMP_VR2: i32 = 18;
pub const SLJIT_TMP_VR3: i32 = 19;
pub const SLJIT_TMP_VR4: i32 = 20;
pub const SLJIT_TMP_VR5: i32 = 21;
pub const SLJIT_TMP_VR6: i32 = 22;
pub const SLJIT_TMP_VR7: i32 = 23;
pub const SLJIT_TMP_VR8: i32 = 24;
pub const SLJIT_TMP_VR9: i32 = 25;
pub const SLJIT_MAJOR_VERSION: i32 = 0;
pub const SLJIT_MINOR_VERSION: i32 = 95;
pub const SLJIT_SUCCESS: i32 = 0;
pub const SLJIT_ERR_COMPILED: i32 = 1;
pub const SLJIT_ERR_ALLOC_FAILED: i32 = 2;
pub const SLJIT_ERR_EX_ALLOC_FAILED: i32 = 3;
pub const SLJIT_ERR_UNSUPPORTED: i32 = 4;
pub const SLJIT_ERR_BAD_ARGUMENT: i32 = 5;
pub const SLJIT_R0: i32 = 1;
pub const SLJIT_R1: i32 = 2;
pub const SLJIT_R2: i32 = 3;
pub const SLJIT_R3: i32 = 4;
pub const SLJIT_R4: i32 = 5;
pub const SLJIT_R5: i32 = 6;
pub const SLJIT_R6: i32 = 7;
pub const SLJIT_R7: i32 = 8;
pub const SLJIT_R8: i32 = 9;
pub const SLJIT_R9: i32 = 10;
pub const SLJIT_S0: i32 = 13;
pub const SLJIT_S1: i32 = 12;
pub const SLJIT_S2: i32 = 11;
pub const SLJIT_S3: i32 = 10;
pub const SLJIT_S4: i32 = 9;
pub const SLJIT_S5: i32 = 8;
pub const SLJIT_S6: i32 = 7;
pub const SLJIT_S7: i32 = 6;
pub const SLJIT_S8: i32 = 5;
pub const SLJIT_S9: i32 = 4;
pub const SLJIT_FIRST_SAVED_REG: i32 = 8;
pub const SLJIT_SP: i32 = 14;
pub const SLJIT_RETURN_REG: i32 = 1;
pub const SLJIT_FR0: i32 = 1;
pub const SLJIT_FR1: i32 = 2;
pub const SLJIT_FR2: i32 = 3;
pub const SLJIT_FR3: i32 = 4;
pub const SLJIT_FR4: i32 = 5;
pub const SLJIT_FR5: i32 = 6;
pub const SLJIT_FR6: i32 = 7;
pub const SLJIT_FR7: i32 = 8;
pub const SLJIT_FR8: i32 = 9;
pub const SLJIT_FR9: i32 = 10;
pub const SLJIT_FS0: i32 = 15;
pub const SLJIT_FS1: i32 = 14;
pub const SLJIT_FS2: i32 = 13;
pub const SLJIT_FS3: i32 = 12;
pub const SLJIT_FS4: i32 = 11;
pub const SLJIT_FS5: i32 = 10;
pub const SLJIT_FS6: i32 = 9;
pub const SLJIT_FS7: i32 = 8;
pub const SLJIT_FS8: i32 = 7;
pub const SLJIT_FS9: i32 = 6;
pub const SLJIT_FIRST_SAVED_FLOAT_REG: i32 = 16;
pub const SLJIT_RETURN_FREG: i32 = 1;
pub const SLJIT_VR0: i32 = 1;
pub const SLJIT_VR1: i32 = 2;
pub const SLJIT_VR2: i32 = 3;
pub const SLJIT_VR3: i32 = 4;
pub const SLJIT_VR4: i32 = 5;
pub const SLJIT_VR5: i32 = 6;
pub const SLJIT_VR6: i32 = 7;
pub const SLJIT_VR7: i32 = 8;
pub const SLJIT_VR8: i32 = 9;
pub const SLJIT_VR9: i32 = 10;
pub const SLJIT_VS0: i32 = 15;
pub const SLJIT_VS1: i32 = 14;
pub const SLJIT_VS2: i32 = 13;
pub const SLJIT_VS3: i32 = 12;
pub const SLJIT_VS4: i32 = 11;
pub const SLJIT_VS5: i32 = 10;
pub const SLJIT_VS6: i32 = 9;
pub const SLJIT_VS7: i32 = 8;
pub const SLJIT_VS8: i32 = 7;
pub const SLJIT_VS9: i32 = 6;
pub const SLJIT_FIRST_SAVED_VECTOR_REG: i32 = 16;
pub const SLJIT_ARG_TYPE_SCRATCH_REG: i32 = 8;
pub const SLJIT_ARG_TYPE_RET_VOID: i32 = 0;
pub const SLJIT_ARG_TYPE_W: i32 = 1;
pub const SLJIT_ARG_TYPE_W_R: i32 = 9;
pub const SLJIT_ARG_TYPE_32: i32 = 2;
pub const SLJIT_ARG_TYPE_32_R: i32 = 10;
pub const SLJIT_ARG_TYPE_P: i32 = 3;
pub const SLJIT_ARG_TYPE_P_R: i32 = 11;
pub const SLJIT_ARG_TYPE_F64: i32 = 4;
pub const SLJIT_ARG_TYPE_F32: i32 = 5;
pub const SLJIT_ARG_SHIFT: i32 = 4;
pub const SLJIT_GENERATE_CODE_BUFFER: i32 = 1;
pub const SLJIT_GENERATE_CODE_NO_CONTEXT: i32 = 2;
pub const SLJIT_HAS_FPU: i32 = 0;
pub const SLJIT_HAS_VIRTUAL_REGISTERS: i32 = 1;
pub const SLJIT_HAS_ZERO_REGISTER: i32 = 2;
pub const SLJIT_HAS_CLZ: i32 = 3;
pub const SLJIT_HAS_CTZ: i32 = 4;
pub const SLJIT_HAS_REV: i32 = 5;
pub const SLJIT_HAS_ROT: i32 = 6;
pub const SLJIT_HAS_CMOV: i32 = 7;
pub const SLJIT_HAS_PREFETCH: i32 = 8;
pub const SLJIT_HAS_COPY_F32: i32 = 9;
pub const SLJIT_HAS_COPY_F64: i32 = 10;
pub const SLJIT_HAS_F64_AS_F32_PAIR: i32 = 11;
pub const SLJIT_HAS_SIMD: i32 = 12;
pub const SLJIT_SIMD_REGS_ARE_PAIRS: i32 = 13;
pub const SLJIT_HAS_ATOMIC: i32 = 14;
pub const SLJIT_HAS_MEMORY_BARRIER: i32 = 15;
pub const SLJIT_HAS_AVX: i32 = 100;
pub const SLJIT_HAS_AVX2: i32 = 101;
pub const SLJIT_ENTER_REG_ARG: i32 = 4;
pub const SLJIT_ENTER_USE_VEX: i32 = 65536;
pub const SLJIT_MAX_LOCAL_SIZE: i32 = 1048576;
pub const SLJIT_MEM: i32 = 128;
pub const SLJIT_IMM: i32 = 127;
pub const SLJIT_32: i32 = 256;
pub const SLJIT_SET_Z: i32 = 512;
pub const SLJIT_OP0_BASE: i32 = 0;
pub const SLJIT_BREAKPOINT: i32 = 0;
pub const SLJIT_NOP: i32 = 1;
pub const SLJIT_LMUL_UW: i32 = 2;
pub const SLJIT_LMUL_SW: i32 = 3;
pub const SLJIT_DIVMOD_UW: i32 = 4;
pub const SLJIT_DIVMOD_U32: i32 = 260;
pub const SLJIT_DIVMOD_SW: i32 = 5;
pub const SLJIT_DIVMOD_S32: i32 = 261;
pub const SLJIT_DIV_UW: i32 = 6;
pub const SLJIT_DIV_U32: i32 = 262;
pub const SLJIT_DIV_SW: i32 = 7;
pub const SLJIT_DIV_S32: i32 = 263;
pub const SLJIT_MEMORY_BARRIER: i32 = 8;
pub const SLJIT_ENDBR: i32 = 9;
pub const SLJIT_SKIP_FRAMES_BEFORE_RETURN: i32 = 10;
pub const SLJIT_OP1_BASE: i32 = 32;
pub const SLJIT_MOV: i32 = 32;
pub const SLJIT_MOV_U8: i32 = 33;
pub const SLJIT_MOV32_U8: i32 = 289;
pub const SLJIT_MOV_S8: i32 = 34;
pub const SLJIT_MOV32_S8: i32 = 290;
pub const SLJIT_MOV_U16: i32 = 35;
pub const SLJIT_MOV32_U16: i32 = 291;
pub const SLJIT_MOV_S16: i32 = 36;
pub const SLJIT_MOV32_S16: i32 = 292;
pub const SLJIT_MOV_U32: i32 = 37;
pub const SLJIT_MOV_S32: i32 = 38;
pub const SLJIT_MOV32: i32 = 39;
pub const SLJIT_MOV_P: i32 = 40;
pub const SLJIT_CLZ: i32 = 41;
pub const SLJIT_CLZ32: i32 = 297;
pub const SLJIT_CTZ: i32 = 42;
pub const SLJIT_CTZ32: i32 = 298;
pub const SLJIT_REV: i32 = 43;
pub const SLJIT_REV32: i32 = 299;
pub const SLJIT_REV_U16: i32 = 44;
pub const SLJIT_REV32_U16: i32 = 300;
pub const SLJIT_REV_S16: i32 = 45;
pub const SLJIT_REV32_S16: i32 = 301;
pub const SLJIT_REV_U32: i32 = 46;
pub const SLJIT_REV_S32: i32 = 47;
pub const SLJIT_OP2_BASE: i32 = 64;
pub const SLJIT_ADD: i32 = 64;
pub const SLJIT_ADD32: i32 = 320;
pub const SLJIT_ADDC: i32 = 65;
pub const SLJIT_ADDC32: i32 = 321;
pub const SLJIT_SUB: i32 = 66;
pub const SLJIT_SUB32: i32 = 322;
pub const SLJIT_SUBC: i32 = 67;
pub const SLJIT_SUBC32: i32 = 323;
pub const SLJIT_MUL: i32 = 68;
pub const SLJIT_MUL32: i32 = 324;
pub const SLJIT_AND: i32 = 69;
pub const SLJIT_AND32: i32 = 325;
pub const SLJIT_OR: i32 = 70;
pub const SLJIT_OR32: i32 = 326;
pub const SLJIT_XOR: i32 = 71;
pub const SLJIT_XOR32: i32 = 327;
pub const SLJIT_SHL: i32 = 72;
pub const SLJIT_SHL32: i32 = 328;
pub const SLJIT_MSHL: i32 = 73;
pub const SLJIT_MSHL32: i32 = 329;
pub const SLJIT_LSHR: i32 = 74;
pub const SLJIT_LSHR32: i32 = 330;
pub const SLJIT_MLSHR: i32 = 75;
pub const SLJIT_MLSHR32: i32 = 331;
pub const SLJIT_ASHR: i32 = 76;
pub const SLJIT_ASHR32: i32 = 332;
pub const SLJIT_MASHR: i32 = 77;
pub const SLJIT_MASHR32: i32 = 333;
pub const SLJIT_ROTL: i32 = 78;
pub const SLJIT_ROTL32: i32 = 334;
pub const SLJIT_ROTR: i32 = 79;
pub const SLJIT_ROTR32: i32 = 335;
pub const SLJIT_OP2R_BASE: i32 = 96;
pub const SLJIT_MULADD: i32 = 96;
pub const SLJIT_MULADD32: i32 = 352;
pub const SLJIT_SHIFT_INTO_NON_ZERO: i32 = 512;
pub const SLJIT_OP_SRC_DST_BASE: i32 = 112;
pub const SLJIT_FAST_RETURN: i32 = 112;
pub const SLJIT_SKIP_FRAMES_BEFORE_FAST_RETURN: i32 = 113;
pub const SLJIT_PREFETCH_L1: i32 = 114;
pub const SLJIT_PREFETCH_L2: i32 = 115;
pub const SLJIT_PREFETCH_L3: i32 = 116;
pub const SLJIT_PREFETCH_ONCE: i32 = 117;
pub const SLJIT_FAST_ENTER: i32 = 118;
pub const SLJIT_GET_RETURN_ADDRESS: i32 = 119;
pub const SLJIT_FOP1_BASE: i32 = 144;
pub const SLJIT_MOV_F64: i32 = 144;
pub const SLJIT_MOV_F32: i32 = 400;
pub const SLJIT_CONV_F64_FROM_F32: i32 = 145;
pub const SLJIT_CONV_F32_FROM_F64: i32 = 401;
pub const SLJIT_CONV_SW_FROM_F64: i32 = 146;
pub const SLJIT_CONV_SW_FROM_F32: i32 = 402;
pub const SLJIT_CONV_S32_FROM_F64: i32 = 147;
pub const SLJIT_CONV_S32_FROM_F32: i32 = 403;
pub const SLJIT_CONV_F64_FROM_SW: i32 = 148;
pub const SLJIT_CONV_F32_FROM_SW: i32 = 404;
pub const SLJIT_CONV_F64_FROM_S32: i32 = 149;
pub const SLJIT_CONV_F32_FROM_S32: i32 = 405;
pub const SLJIT_CONV_F64_FROM_UW: i32 = 150;
pub const SLJIT_CONV_F32_FROM_UW: i32 = 406;
pub const SLJIT_CONV_F64_FROM_U32: i32 = 151;
pub const SLJIT_CONV_F32_FROM_U32: i32 = 407;
pub const SLJIT_CMP_F64: i32 = 152;
pub const SLJIT_CMP_F32: i32 = 408;
pub const SLJIT_NEG_F64: i32 = 153;
pub const SLJIT_NEG_F32: i32 = 409;
pub const SLJIT_ABS_F64: i32 = 154;
pub const SLJIT_ABS_F32: i32 = 410;
pub const SLJIT_FOP2_BASE: i32 = 176;
pub const SLJIT_ADD_F64: i32 = 176;
pub const SLJIT_ADD_F32: i32 = 432;
pub const SLJIT_SUB_F64: i32 = 177;
pub const SLJIT_SUB_F32: i32 = 433;
pub const SLJIT_MUL_F64: i32 = 178;
pub const SLJIT_MUL_F32: i32 = 434;
pub const SLJIT_DIV_F64: i32 = 179;
pub const SLJIT_DIV_F32: i32 = 435;
pub const SLJIT_FOP2R_BASE: i32 = 192;
pub const SLJIT_COPYSIGN_F64: i32 = 192;
pub const SLJIT_COPYSIGN_F32: i32 = 448;
pub const SLJIT_COPY_TO_F64: i32 = 1;
pub const SLJIT_COPY32_TO_F32: i32 = 257;
pub const SLJIT_COPY_FROM_F64: i32 = 2;
pub const SLJIT_COPY32_FROM_F32: i32 = 258;
pub const SLJIT_LABEL_ALIGN_1: i32 = 0;
pub const SLJIT_LABEL_ALIGN_2: i32 = 1;
pub const SLJIT_LABEL_ALIGN_4: i32 = 2;
pub const SLJIT_LABEL_ALIGN_8: i32 = 3;
pub const SLJIT_LABEL_ALIGN_16: i32 = 4;
pub const SLJIT_LABEL_ALIGN_W: i32 = 3;
pub const SLJIT_LABEL_ALIGN_P: i32 = 3;
pub const SLJIT_EQUAL: i32 = 0;
pub const SLJIT_ZERO: i32 = 0;
pub const SLJIT_NOT_EQUAL: i32 = 1;
pub const SLJIT_NOT_ZERO: i32 = 1;
pub const SLJIT_LESS: i32 = 2;
pub const SLJIT_GREATER_EQUAL: i32 = 3;
pub const SLJIT_GREATER: i32 = 4;
pub const SLJIT_LESS_EQUAL: i32 = 5;
pub const SLJIT_SIG_LESS: i32 = 6;
pub const SLJIT_SIG_GREATER_EQUAL: i32 = 7;
pub const SLJIT_SIG_GREATER: i32 = 8;
pub const SLJIT_SIG_LESS_EQUAL: i32 = 9;
pub const SLJIT_OVERFLOW: i32 = 10;
pub const SLJIT_NOT_OVERFLOW: i32 = 11;
pub const SLJIT_CARRY: i32 = 12;
pub const SLJIT_NOT_CARRY: i32 = 13;
pub const SLJIT_ATOMIC_STORED: i32 = 14;
pub const SLJIT_ATOMIC_NOT_STORED: i32 = 15;
pub const SLJIT_F_EQUAL: i32 = 16;
pub const SLJIT_F_NOT_EQUAL: i32 = 17;
pub const SLJIT_F_LESS: i32 = 18;
pub const SLJIT_F_GREATER_EQUAL: i32 = 19;
pub const SLJIT_F_GREATER: i32 = 20;
pub const SLJIT_F_LESS_EQUAL: i32 = 21;
pub const SLJIT_UNORDERED: i32 = 22;
pub const SLJIT_ORDERED: i32 = 23;
pub const SLJIT_ORDERED_EQUAL: i32 = 24;
pub const SLJIT_UNORDERED_OR_NOT_EQUAL: i32 = 25;
pub const SLJIT_ORDERED_LESS: i32 = 26;
pub const SLJIT_UNORDERED_OR_GREATER_EQUAL: i32 = 27;
pub const SLJIT_ORDERED_GREATER: i32 = 28;
pub const SLJIT_UNORDERED_OR_LESS_EQUAL: i32 = 29;
pub const SLJIT_UNORDERED_OR_EQUAL: i32 = 30;
pub const SLJIT_ORDERED_NOT_EQUAL: i32 = 31;
pub const SLJIT_UNORDERED_OR_LESS: i32 = 32;
pub const SLJIT_ORDERED_GREATER_EQUAL: i32 = 33;
pub const SLJIT_UNORDERED_OR_GREATER: i32 = 34;
pub const SLJIT_ORDERED_LESS_EQUAL: i32 = 35;
pub const SLJIT_JUMP: i32 = 36;
pub const SLJIT_FAST_CALL: i32 = 37;
pub const SLJIT_CALL: i32 = 38;
pub const SLJIT_CALL_REG_ARG: i32 = 39;
pub const SLJIT_REWRITABLE_JUMP: i32 = 65536;
pub const SLJIT_CALL_RETURN: i32 = 131072;
pub const SLJIT_JUMP_IF_NON_ZERO: i32 = 0;
pub const SLJIT_JUMP_IF_ZERO: i32 = 512;
pub const SLJIT_MEM_LOAD: i32 = 0;
pub const SLJIT_MEM_STORE: i32 = 512;
pub const SLJIT_MEM_UNALIGNED: i32 = 1024;
pub const SLJIT_MEM_ALIGNED_16: i32 = 2048;
pub const SLJIT_MEM_ALIGNED_32: i32 = 4096;
pub const SLJIT_MEM_PRE: i32 = 0;
pub const SLJIT_MEM_POST: i32 = 1024;
pub const SLJIT_MEM_SUPP: i32 = 2048;
pub const SLJIT_SIMD_LOAD: i32 = 0;
pub const SLJIT_SIMD_STORE: i32 = 1;
pub const SLJIT_SIMD_FLOAT: i32 = 1024;
pub const SLJIT_SIMD_TEST: i32 = 2048;
pub const SLJIT_SIMD_REG_64: i32 = 12288;
pub const SLJIT_SIMD_REG_128: i32 = 16384;
pub const SLJIT_SIMD_REG_256: i32 = 20480;
pub const SLJIT_SIMD_REG_512: i32 = 24576;
pub const SLJIT_SIMD_ELEM_8: i32 = 0;
pub const SLJIT_SIMD_ELEM_16: i32 = 262144;
pub const SLJIT_SIMD_ELEM_32: i32 = 524288;
pub const SLJIT_SIMD_ELEM_64: i32 = 786432;
pub const SLJIT_SIMD_ELEM_128: i32 = 1048576;
pub const SLJIT_SIMD_ELEM_256: i32 = 1310720;
pub const SLJIT_SIMD_MEM_UNALIGNED: i32 = 0;
pub const SLJIT_SIMD_MEM_ALIGNED_16: i32 = 16777216;
pub const SLJIT_SIMD_MEM_ALIGNED_32: i32 = 33554432;
pub const SLJIT_SIMD_MEM_ALIGNED_64: i32 = 50331648;
pub const SLJIT_SIMD_MEM_ALIGNED_128: i32 = 67108864;
pub const SLJIT_SIMD_MEM_ALIGNED_256: i32 = 83886080;
pub const SLJIT_SIMD_MEM_ALIGNED_512: i32 = 100663296;
pub const SLJIT_SIMD_LANE_ZERO: i32 = 2;
pub const SLJIT_SIMD_LANE_SIGNED: i32 = 4;
pub const SLJIT_SIMD_EXTEND_SIGNED: i32 = 2;
pub const SLJIT_SIMD_EXTEND_16: i32 = 16777216;
pub const SLJIT_SIMD_EXTEND_32: i32 = 33554432;
pub const SLJIT_SIMD_EXTEND_64: i32 = 50331648;
pub const SLJIT_SIMD_OP2_AND: i32 = 1;
pub const SLJIT_SIMD_OP2_OR: i32 = 2;
pub const SLJIT_SIMD_OP2_XOR: i32 = 3;
pub const SLJIT_SIMD_OP2_SHUFFLE: i32 = 4;
pub const SLJIT_ATOMIC_TEST: i32 = 65536;
pub const SLJIT_ATOMIC_USE_CAS: i32 = 131072;
pub const SLJIT_ATOMIC_USE_LS: i32 = 262144;
pub const SLJIT_MOV_ADDR: i32 = 0;
pub const SLJIT_MOV_ABS_ADDR: i32 = 1;
pub const SLJIT_ADD_ABS_ADDR: i32 = 2;
pub const SLJIT_GP_REGISTER: i32 = 0;
pub const SLJIT_FLOAT_REGISTER: i32 = 1;
pub const SLJIT_CURRENT_FLAGS_32: i32 = 256;
pub const SLJIT_CURRENT_FLAGS_ADD: i32 = 1;
pub const SLJIT_CURRENT_FLAGS_SUB: i32 = 2;
pub const SLJIT_CURRENT_FLAGS_COMPARE: i32 = 4;
pub const SLJIT_CURRENT_FLAGS_OP2CMPZ: i32 = 8;
pub const SLJIT_SERIALIZE_IGNORE_DEBUG: i32 = 1;
#[repr(C)]
#[derive(Copy, Clone)]
pub union sljit_label__bindgen_ty_1 {
pub index: sljit_uw,
pub addr: sljit_uw,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union sljit_jump__bindgen_ty_1 {
pub target: sljit_uw,
pub label: *mut sljit_label,
}
#[repr(C)]
#[derive(Copy, Clone)]
pub union sljit_read_only_buffer__bindgen_ty_1 {
pub label: *mut sljit_label,
pub addr: sljit_uw,
}
unsafe extern "C" {
pub fn sljit_malloc_exec(size: sljit_uw) -> *mut ::core::ffi::c_void;
pub fn sljit_free_exec(ptr: *mut ::core::ffi::c_void);
pub fn sljit_create_compiler(allocator_data: *mut ::core::ffi::c_void) -> *mut sljit_compiler;
pub fn sljit_free_compiler(compiler: *mut sljit_compiler);
#[link_name = "sljit_get_compiler_error__extern"]
pub fn sljit_get_compiler_error(compiler: *mut sljit_compiler) -> sljit_s32;
pub fn sljit_set_compiler_memory_error(compiler: *mut sljit_compiler);
pub fn sljit_alloc_memory(
compiler: *mut sljit_compiler,
size: sljit_s32,
) -> *mut ::core::ffi::c_void;
#[link_name = "sljit_compiler_get_allocator_data__extern"]
pub fn sljit_compiler_get_allocator_data(
compiler: *mut sljit_compiler,
) -> *mut ::core::ffi::c_void;
#[link_name = "sljit_compiler_set_user_data__extern"]
pub fn sljit_compiler_set_user_data(
compiler: *mut sljit_compiler,
user_data: *mut ::core::ffi::c_void,
);
#[link_name = "sljit_compiler_get_user_data__extern"]
pub fn sljit_compiler_get_user_data(compiler: *mut sljit_compiler) -> *mut ::core::ffi::c_void;
pub fn sljit_generate_code(
compiler: *mut sljit_compiler,
options: sljit_s32,
exec_allocator_data: *mut ::core::ffi::c_void,
) -> *mut ::core::ffi::c_void;
pub fn sljit_free_code(
code: *mut ::core::ffi::c_void,
exec_allocator_data: *mut ::core::ffi::c_void,
);
#[link_name = "sljit_get_executable_offset__extern"]
pub fn sljit_get_executable_offset(compiler: *mut sljit_compiler) -> sljit_sw;
#[link_name = "sljit_get_generated_code_size__extern"]
pub fn sljit_get_generated_code_size(compiler: *mut sljit_compiler) -> sljit_uw;
pub fn sljit_has_cpu_feature(feature_type: sljit_s32) -> sljit_s32;
pub fn sljit_cmp_info(type_: sljit_s32) -> sljit_s32;
pub fn sljit_emit_enter(
compiler: *mut sljit_compiler,
options: sljit_s32,
arg_types: sljit_s32,
scratches: sljit_s32,
saveds: sljit_s32,
local_size: sljit_s32,
) -> sljit_s32;
pub fn sljit_set_context(
compiler: *mut sljit_compiler,
options: sljit_s32,
arg_types: sljit_s32,
scratches: sljit_s32,
saveds: sljit_s32,
local_size: sljit_s32,
) -> sljit_s32;
pub fn sljit_emit_return_void(compiler: *mut sljit_compiler) -> sljit_s32;
pub fn sljit_emit_return(
compiler: *mut sljit_compiler,
op: sljit_s32,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_return_to(
compiler: *mut sljit_compiler,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_op0(compiler: *mut sljit_compiler, op: sljit_s32) -> sljit_s32;
pub fn sljit_emit_op1(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_op2(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
src1: sljit_s32,
src1w: sljit_sw,
src2: sljit_s32,
src2w: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_op2u(
compiler: *mut sljit_compiler,
op: sljit_s32,
src1: sljit_s32,
src1w: sljit_sw,
src2: sljit_s32,
src2w: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_op2r(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst_reg: sljit_s32,
src1: sljit_s32,
src1w: sljit_sw,
src2: sljit_s32,
src2w: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_shift_into(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst_reg: sljit_s32,
src1_reg: sljit_s32,
src2_reg: sljit_s32,
src3: sljit_s32,
src3w: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_op_src(
compiler: *mut sljit_compiler,
op: sljit_s32,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_op_dst(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_fop1(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_fop2(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
src1: sljit_s32,
src1w: sljit_sw,
src2: sljit_s32,
src2w: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_fop2r(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst_freg: sljit_s32,
src1: sljit_s32,
src1w: sljit_sw,
src2: sljit_s32,
src2w: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_fset32(
compiler: *mut sljit_compiler,
freg: sljit_s32,
value: sljit_f32,
) -> sljit_s32;
pub fn sljit_emit_fset64(
compiler: *mut sljit_compiler,
freg: sljit_s32,
value: sljit_f64,
) -> sljit_s32;
pub fn sljit_emit_fcopy(
compiler: *mut sljit_compiler,
op: sljit_s32,
freg: sljit_s32,
reg: sljit_s32,
) -> sljit_s32;
pub fn sljit_emit_label(compiler: *mut sljit_compiler) -> *mut sljit_label;
pub fn sljit_emit_aligned_label(
compiler: *mut sljit_compiler,
alignment: sljit_s32,
buffers: *mut sljit_read_only_buffer,
) -> *mut sljit_label;
pub fn sljit_emit_jump(compiler: *mut sljit_compiler, type_: sljit_s32) -> *mut sljit_jump;
pub fn sljit_emit_call(
compiler: *mut sljit_compiler,
type_: sljit_s32,
arg_types: sljit_s32,
) -> *mut sljit_jump;
pub fn sljit_emit_cmp(
compiler: *mut sljit_compiler,
type_: sljit_s32,
src1: sljit_s32,
src1w: sljit_sw,
src2: sljit_s32,
src2w: sljit_sw,
) -> *mut sljit_jump;
pub fn sljit_emit_fcmp(
compiler: *mut sljit_compiler,
type_: sljit_s32,
src1: sljit_s32,
src1w: sljit_sw,
src2: sljit_s32,
src2w: sljit_sw,
) -> *mut sljit_jump;
pub fn sljit_emit_op2cmpz(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
src1: sljit_s32,
src1w: sljit_sw,
src2: sljit_s32,
src2w: sljit_sw,
) -> *mut sljit_jump;
pub fn sljit_set_label(jump: *mut sljit_jump, label: *mut sljit_label);
pub fn sljit_set_target(jump: *mut sljit_jump, target: sljit_uw);
pub fn sljit_emit_ijump(
compiler: *mut sljit_compiler,
type_: sljit_s32,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_icall(
compiler: *mut sljit_compiler,
type_: sljit_s32,
arg_types: sljit_s32,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_op_flags(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
type_: sljit_s32,
) -> sljit_s32;
pub fn sljit_emit_select(
compiler: *mut sljit_compiler,
type_: sljit_s32,
dst_reg: sljit_s32,
src1: sljit_s32,
src1w: sljit_sw,
src2_reg: sljit_s32,
) -> sljit_s32;
pub fn sljit_emit_fselect(
compiler: *mut sljit_compiler,
type_: sljit_s32,
dst_freg: sljit_s32,
src1: sljit_s32,
src1w: sljit_sw,
src2_freg: sljit_s32,
) -> sljit_s32;
pub fn sljit_emit_mem(
compiler: *mut sljit_compiler,
type_: sljit_s32,
reg: sljit_s32,
mem: sljit_s32,
memw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_mem_update(
compiler: *mut sljit_compiler,
type_: sljit_s32,
reg: sljit_s32,
mem: sljit_s32,
memw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_fmem(
compiler: *mut sljit_compiler,
type_: sljit_s32,
freg: sljit_s32,
mem: sljit_s32,
memw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_fmem_update(
compiler: *mut sljit_compiler,
type_: sljit_s32,
freg: sljit_s32,
mem: sljit_s32,
memw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_simd_mov(
compiler: *mut sljit_compiler,
type_: sljit_s32,
vreg: sljit_s32,
srcdst: sljit_s32,
srcdstw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_simd_replicate(
compiler: *mut sljit_compiler,
type_: sljit_s32,
vreg: sljit_s32,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_simd_lane_mov(
compiler: *mut sljit_compiler,
type_: sljit_s32,
vreg: sljit_s32,
lane_index: sljit_s32,
srcdst: sljit_s32,
srcdstw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_simd_lane_replicate(
compiler: *mut sljit_compiler,
type_: sljit_s32,
vreg: sljit_s32,
src: sljit_s32,
src_lane_index: sljit_s32,
) -> sljit_s32;
pub fn sljit_emit_simd_extend(
compiler: *mut sljit_compiler,
type_: sljit_s32,
vreg: sljit_s32,
src: sljit_s32,
srcw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_simd_sign(
compiler: *mut sljit_compiler,
type_: sljit_s32,
vreg: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_simd_op2(
compiler: *mut sljit_compiler,
type_: sljit_s32,
dst_vreg: sljit_s32,
src1_vreg: sljit_s32,
src2: sljit_s32,
src2w: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_atomic_load(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst_reg: sljit_s32,
mem_reg: sljit_s32,
) -> sljit_s32;
pub fn sljit_emit_atomic_store(
compiler: *mut sljit_compiler,
op: sljit_s32,
src_reg: sljit_s32,
mem_reg: sljit_s32,
temp_reg: sljit_s32,
) -> sljit_s32;
pub fn sljit_get_local_base(
compiler: *mut sljit_compiler,
dst: sljit_s32,
dstw: sljit_sw,
offset: sljit_sw,
) -> sljit_s32;
pub fn sljit_emit_const(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
init_value: sljit_sw,
) -> *mut sljit_const;
pub fn sljit_emit_op_addr(
compiler: *mut sljit_compiler,
op: sljit_s32,
dst: sljit_s32,
dstw: sljit_sw,
) -> *mut sljit_jump;
#[link_name = "sljit_get_label_addr__extern"]
pub fn sljit_get_label_addr(label: *mut sljit_label) -> sljit_uw;
#[link_name = "sljit_get_label_abs_addr__extern"]
pub fn sljit_get_label_abs_addr(label: *mut sljit_label) -> sljit_uw;
#[link_name = "sljit_get_jump_addr__extern"]
pub fn sljit_get_jump_addr(jump: *mut sljit_jump) -> sljit_uw;
#[link_name = "sljit_get_const_addr__extern"]
pub fn sljit_get_const_addr(const_: *mut sljit_const) -> sljit_uw;
pub fn sljit_set_jump_addr(addr: sljit_uw, new_target: sljit_uw, executable_offset: sljit_sw);
pub fn sljit_set_const(
addr: sljit_uw,
op: sljit_s32,
new_constant: sljit_sw,
executable_offset: sljit_sw,
);
pub fn sljit_read_only_buffer_start_writing(
addr: sljit_uw,
size: sljit_uw,
executable_offset: sljit_sw,
) -> *mut ::core::ffi::c_void;
pub fn sljit_read_only_buffer_end_writing(
addr: sljit_uw,
size: sljit_uw,
executable_offset: sljit_sw,
);
pub fn sljit_get_register_index(type_: sljit_s32, reg: sljit_s32) -> sljit_s32;
pub fn sljit_emit_op_custom(
compiler: *mut sljit_compiler,
instruction: *mut ::core::ffi::c_void,
size: sljit_u32,
) -> sljit_s32;
pub fn sljit_set_current_flags(compiler: *mut sljit_compiler, current_flags: sljit_s32);
#[link_name = "sljit_get_first_label__extern"]
pub fn sljit_get_first_label(compiler: *mut sljit_compiler) -> *mut sljit_label;
#[link_name = "sljit_get_first_jump__extern"]
pub fn sljit_get_first_jump(compiler: *mut sljit_compiler) -> *mut sljit_jump;
#[link_name = "sljit_get_first_const__extern"]
pub fn sljit_get_first_const(compiler: *mut sljit_compiler) -> *mut sljit_const;
#[link_name = "sljit_get_next_label__extern"]
pub fn sljit_get_next_label(label: *mut sljit_label) -> *mut sljit_label;
#[link_name = "sljit_get_next_jump__extern"]
pub fn sljit_get_next_jump(jump: *mut sljit_jump) -> *mut sljit_jump;
#[link_name = "sljit_get_next_const__extern"]
pub fn sljit_get_next_const(const_: *mut sljit_const) -> *mut sljit_const;
pub fn sljit_get_label_index(label: *mut sljit_label) -> sljit_uw;
pub fn sljit_jump_has_label(jump: *mut sljit_jump) -> sljit_s32;
#[link_name = "sljit_jump_get_label__extern"]
pub fn sljit_jump_get_label(jump: *mut sljit_jump) -> *mut sljit_label;
pub fn sljit_jump_has_target(jump: *mut sljit_jump) -> sljit_s32;
#[link_name = "sljit_jump_get_target__extern"]
pub fn sljit_jump_get_target(jump: *mut sljit_jump) -> sljit_uw;
pub fn sljit_jump_is_mov_addr(jump: *mut sljit_jump) -> sljit_s32;
pub fn sljit_serialize_compiler(
compiler: *mut sljit_compiler,
options: sljit_s32,
size: *mut sljit_uw,
) -> *mut sljit_uw;
pub fn sljit_deserialize_compiler(
buffer: *mut sljit_uw,
size: sljit_uw,
options: sljit_s32,
allocator_data: *mut ::core::ffi::c_void,
) -> *mut sljit_compiler;
pub fn sljit_get_platform_name() -> *const ::core::ffi::c_char;
pub fn sljit_allocate_stack(
start_size: sljit_uw,
max_size: sljit_uw,
allocator_data: *mut ::core::ffi::c_void,
) -> *mut sljit_stack;
pub fn sljit_free_stack(stack: *mut sljit_stack, allocator_data: *mut ::core::ffi::c_void);
pub fn sljit_stack_resize(stack: *mut sljit_stack, new_start: *mut sljit_u8) -> *mut sljit_u8;
pub fn sljit_free_unused_memory_exec();
}