"""
Auto-generated Python stub file from vipersimd.py
Module: vipersimd
"""


import t, c

def simd_add4d(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_sub4d(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_mul4d(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_div4d(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_sqrt4d(a: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_neg4d(a: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_abs4d(a: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_max4d(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_min4d(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_mul_scalar4d(a: t.CPtr, scalar: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_add_scalar4d(a: t.CPtr, scalar: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_hsum4d(a: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_dot4d(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_fma4d(a: t.CPtr, b: t.CPtr, c_val: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_add4f(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_sub4f(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_mul4f(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_div4f(a: t.CPtr, b: t.CPtr, out: t.CPtr) -> t.CVoid: pass

def simd_add_array(a: t.CPtr, b: t.CPtr, out: t.CPtr, n: t.CSizeT) -> t.CVoid: pass

def simd_sub_array(a: t.CPtr, b: t.CPtr, out: t.CPtr, n: t.CSizeT) -> t.CVoid: pass

def simd_mul_array(a: t.CPtr, b: t.CPtr, out: t.CPtr, n: t.CSizeT) -> t.CVoid: pass

def simd_div_array(a: t.CPtr, b: t.CPtr, out: t.CPtr, n: t.CSizeT) -> t.CVoid: pass

def simd_sqrt_array(a: t.CPtr, out: t.CPtr, n: t.CSizeT) -> t.CVoid: pass

def simd_abs_array(a: t.CPtr, out: t.CPtr, n: t.CSizeT) -> t.CVoid: pass

def simd_neg_array(a: t.CPtr, out: t.CPtr, n: t.CSizeT) -> t.CVoid: pass

def simd_dot_array(a: t.CPtr, b: t.CPtr, n: t.CSizeT, out: t.CPtr) -> t.CVoid: pass

def simd_sqrt(x: t.CDouble) -> t.CDouble: pass

def simd_fabs(x: t.CDouble) -> t.CDouble: pass

def simd_floor(x: t.CDouble) -> t.CDouble: pass

def simd_ceil(x: t.CDouble) -> t.CDouble: pass

def simd_round(x: t.CDouble) -> t.CDouble: pass

def simd_trunc(x: t.CDouble) -> t.CDouble: pass

def simd_fma(a: t.CDouble, b: t.CDouble, c_val: t.CDouble) -> t.CDouble: pass

def simd_copysign(mag: t.CDouble, sign: t.CDouble) -> t.CDouble: pass

def simd_neg(x: t.CDouble) -> t.CDouble: pass

def simd_minnum(a: t.CDouble, b: t.CDouble) -> t.CDouble: pass

def simd_maxnum(a: t.CDouble, b: t.CDouble) -> t.CDouble: pass

def simd_exp(x: t.CDouble) -> t.CDouble: pass

def simd_log(x: t.CDouble) -> t.CDouble: pass

def simd_sin(x: t.CDouble) -> t.CDouble: pass

def simd_cos(x: t.CDouble) -> t.CDouble: pass

def simd_pow(x: t.CDouble, y: t.CDouble) -> t.CDouble: pass
