pub type vUInt8 = [::core::ffi::c_uchar; 16usize];
pub type vSInt8 = [::core::ffi::c_schar; 16usize];
pub type vUInt16 = [::core::ffi::c_ushort; 8usize];
pub type vSInt16 = [::core::ffi::c_short; 8usize];
pub type vUInt32 = [::core::ffi::c_uint; 4usize];
pub type vSInt32 = [::core::ffi::c_int; 4usize];
pub type vFloat = [f32; 4usize];
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub union vU128 {
pub v: vUInt32,
pub vs: vU128__bindgen_ty_1,
pub s: vU128__bindgen_ty_2,
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct vU128__bindgen_ty_1 {
pub v1: vUInt32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vU128__bindgen_ty_2 {
pub LSW: u32,
pub d3: u32,
pub d2: u32,
pub MSW: u32,
}
impl Default for vU128 {
fn default() -> Self {
let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
unsafe {
::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub union vS128 {
pub v: vUInt32,
pub vs: vS128__bindgen_ty_1,
pub s: vS128__bindgen_ty_2,
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct vS128__bindgen_ty_1 {
pub v1: vUInt32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vS128__bindgen_ty_2 {
pub LSW: i32,
pub d3: u32,
pub d2: u32,
pub MSW: u32,
}
impl Default for vS128 {
fn default() -> Self {
let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
unsafe {
::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub union vU256 {
pub v: [vUInt32; 2usize],
pub vs: vU256__bindgen_ty_1,
pub s: vU256__bindgen_ty_2,
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct vU256__bindgen_ty_1 {
pub v2: vUInt32,
pub v1: vUInt32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vU256__bindgen_ty_2 {
pub LSW: u32,
pub d7: u32,
pub d6: u32,
pub d5: u32,
pub d4: u32,
pub d3: u32,
pub d2: u32,
pub MSW: u32,
}
impl Default for vU256 {
fn default() -> Self {
let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
unsafe {
::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub union vS256 {
pub v: [vUInt32; 2usize],
pub vs: vS256__bindgen_ty_1,
pub s: vS256__bindgen_ty_2,
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct vS256__bindgen_ty_1 {
pub v2: vUInt32,
pub v1: vUInt32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vS256__bindgen_ty_2 {
pub LSW: i32,
pub d7: u32,
pub d6: u32,
pub d5: u32,
pub d4: u32,
pub d3: u32,
pub d2: u32,
pub MSW: u32,
}
impl Default for vS256 {
fn default() -> Self {
let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
unsafe {
::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub union vU512 {
pub v: [vUInt32; 4usize],
pub vs: vU512__bindgen_ty_1,
pub s: vU512__bindgen_ty_2,
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct vU512__bindgen_ty_1 {
pub v4: vUInt32,
pub v3: vUInt32,
pub v2: vUInt32,
pub v1: vUInt32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vU512__bindgen_ty_2 {
pub LSW: u32,
pub d15: u32,
pub d14: u32,
pub d13: u32,
pub d12: u32,
pub d11: u32,
pub d10: u32,
pub d9: u32,
pub d8: u32,
pub d7: u32,
pub d6: u32,
pub d5: u32,
pub d4: u32,
pub d3: u32,
pub d2: u32,
pub MSW: u32,
}
impl Default for vU512 {
fn default() -> Self {
let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
unsafe {
::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub union vS512 {
pub v: [vUInt32; 4usize],
pub vs: vS512__bindgen_ty_1,
pub s: vS512__bindgen_ty_2,
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct vS512__bindgen_ty_1 {
pub v4: vUInt32,
pub v3: vUInt32,
pub v2: vUInt32,
pub v1: vUInt32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vS512__bindgen_ty_2 {
pub LSW: i32,
pub d15: u32,
pub d14: u32,
pub d13: u32,
pub d12: u32,
pub d11: u32,
pub d10: u32,
pub d9: u32,
pub d8: u32,
pub d7: u32,
pub d6: u32,
pub d5: u32,
pub d4: u32,
pub d3: u32,
pub d2: u32,
pub MSW: u32,
}
impl Default for vS512 {
fn default() -> Self {
let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
unsafe {
::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub union vU1024 {
pub v: [vUInt32; 8usize],
pub vs: vU1024__bindgen_ty_1,
pub s: vU1024__bindgen_ty_2,
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct vU1024__bindgen_ty_1 {
pub v8: vUInt32,
pub v7: vUInt32,
pub v6: vUInt32,
pub v5: vUInt32,
pub v4: vUInt32,
pub v3: vUInt32,
pub v2: vUInt32,
pub v1: vUInt32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vU1024__bindgen_ty_2 {
pub LSW: u32,
pub d31: u32,
pub d30: u32,
pub d29: u32,
pub d28: u32,
pub d27: u32,
pub d26: u32,
pub d25: u32,
pub d24: u32,
pub d23: u32,
pub d22: u32,
pub d21: u32,
pub d20: u32,
pub d19: u32,
pub d18: u32,
pub d17: u32,
pub d16: u32,
pub d15: u32,
pub d14: u32,
pub d13: u32,
pub d12: u32,
pub d11: u32,
pub d10: u32,
pub d9: u32,
pub d8: u32,
pub d7: u32,
pub d6: u32,
pub d5: u32,
pub d4: u32,
pub d3: u32,
pub d2: u32,
pub MSW: u32,
}
impl Default for vU1024 {
fn default() -> Self {
let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
unsafe {
::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[repr(C)]
#[repr(align(16))]
#[derive(Copy, Clone)]
pub union vS1024 {
pub v: [vUInt32; 8usize],
pub vs: vS1024__bindgen_ty_1,
pub s: vS1024__bindgen_ty_2,
}
#[repr(C)]
#[repr(align(16))]
#[derive(Debug, Default, Copy, Clone)]
pub struct vS1024__bindgen_ty_1 {
pub v8: vUInt32,
pub v7: vUInt32,
pub v6: vUInt32,
pub v5: vUInt32,
pub v4: vUInt32,
pub v3: vUInt32,
pub v2: vUInt32,
pub v1: vUInt32,
}
#[repr(C)]
#[derive(Debug, Default, Copy, Clone)]
pub struct vS1024__bindgen_ty_2 {
pub LSW: i32,
pub d31: u32,
pub d30: u32,
pub d29: u32,
pub d28: u32,
pub d27: u32,
pub d26: u32,
pub d25: u32,
pub d24: u32,
pub d23: u32,
pub d22: u32,
pub d21: u32,
pub d20: u32,
pub d19: u32,
pub d18: u32,
pub d17: u32,
pub d16: u32,
pub d15: u32,
pub d14: u32,
pub d13: u32,
pub d12: u32,
pub d11: u32,
pub d10: u32,
pub d9: u32,
pub d8: u32,
pub d7: u32,
pub d6: u32,
pub d5: u32,
pub d4: u32,
pub d3: u32,
pub d2: u32,
pub MSW: u32,
}
impl Default for vS1024 {
fn default() -> Self {
let mut s = ::core::mem::MaybeUninit::<Self>::uninit();
unsafe {
::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
s.assume_init()
}
}
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256Divide(
numerator: *const vU256,
divisor: *const vU256,
result: *mut vU256,
remainder: *mut vU256,
);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256Divide(
numerator: *const vS256,
divisor: *const vS256,
result: *mut vS256,
remainder: *mut vS256,
);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512Divide(
numerator: *const vU512,
divisor: *const vU512,
result: *mut vU512,
remainder: *mut vU512,
);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512Divide(
numerator: *const vS512,
divisor: *const vS512,
result: *mut vS512,
remainder: *mut vS512,
);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU1024Divide(
numerator: *const vU1024,
divisor: *const vU1024,
result: *mut vU1024,
remainder: *mut vU1024,
);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS1024Divide(
numerator: *const vS1024,
divisor: *const vS1024,
result: *mut vS1024,
remainder: *mut vS1024,
);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU128FullMultiply(a: *const vU128, b: *const vU128, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS128FullMultiply(a: *const vS128, b: *const vS128, result: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256FullMultiply(a: *const vU256, b: *const vU256, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256FullMultiply(a: *const vS256, b: *const vS256, result: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512FullMultiply(a: *const vU512, b: *const vU512, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512FullMultiply(a: *const vS512, b: *const vS512, result: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256HalfMultiply(a: *const vU256, b: *const vU256, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256HalfMultiply(a: *const vS256, b: *const vS256, result: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512HalfMultiply(a: *const vU512, b: *const vU512, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512HalfMultiply(a: *const vS512, b: *const vS512, result: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU1024HalfMultiply(a: *const vU1024, b: *const vU1024, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS1024HalfMultiply(a: *const vS1024, b: *const vS1024, result: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256Sub(a: *const vU256, b: *const vU256, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256Sub(a: *const vS256, b: *const vS256, result: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256SubS(a: *const vU256, b: *const vU256, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256SubS(a: *const vS256, b: *const vS256, result: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512Sub(a: *const vU512, b: *const vU512, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512Sub(a: *const vS512, b: *const vS512, result: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512SubS(a: *const vU512, b: *const vU512, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512SubS(a: *const vS512, b: *const vS512, result: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU1024Sub(a: *const vU1024, b: *const vU1024, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS1024Sub(a: *const vS1024, b: *const vS1024, result: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU1024SubS(a: *const vU1024, b: *const vU1024, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS1024SubS(a: *const vS1024, b: *const vS1024, result: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256Neg(a: *const vU256, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256Neg(a: *const vS256, result: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512Neg(a: *const vU512, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512Neg(a: *const vS512, result: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU1024Neg(a: *const vU1024, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS1024Neg(a: *const vS1024, result: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256Add(a: *const vU256, b: *const vU256, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256Add(a: *const vS256, b: *const vS256, result: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256AddS(a: *const vU256, b: *const vU256, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256AddS(a: *const vS256, b: *const vS256, result: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512Add(a: *const vU512, b: *const vU512, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512Add(a: *const vS512, b: *const vS512, result: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512AddS(a: *const vU512, b: *const vU512, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512AddS(a: *const vS512, b: *const vS512, result: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU1024Add(a: *const vU1024, b: *const vU1024, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS1024Add(a: *const vS1024, b: *const vS1024, result: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU1024AddS(a: *const vU1024, b: *const vU1024, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS1024AddS(a: *const vS1024, b: *const vS1024, result: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU256Mod(numerator: *const vU256, divisor: *const vU256, remainder: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS256Mod(numerator: *const vS256, divisor: *const vS256, remainder: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU512Mod(numerator: *const vU512, divisor: *const vU512, remainder: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS512Mod(numerator: *const vS512, divisor: *const vS512, remainder: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU1024Mod(numerator: *const vU1024, divisor: *const vU1024, remainder: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS1024Mod(numerator: *const vS1024, divisor: *const vS1024, remainder: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLL256Shift(a: *const vU256, shiftAmount: u32, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLL512Shift(a: *const vU512, shiftAmount: u32, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLL1024Shift(a: *const vU1024, shiftAmount: u32, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLR256Shift(a: *const vU256, shiftAmount: u32, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLR512Shift(a: *const vU512, shiftAmount: u32, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLR1024Shift(a: *const vU1024, shiftAmount: u32, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vA256Shift(a: *const vS256, shiftAmount: u32, result: *mut vS256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vA512Shift(a: *const vS512, shiftAmount: u32, result: *mut vS512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vA1024Shift(a: *const vS1024, shiftAmount: u32, result: *mut vS1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vL256Rotate(a: *const vU256, rotateAmount: u32, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vL512Rotate(a: *const vU512, rotateAmount: u32, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vL1024Rotate(a: *const vU1024, rotateAmount: u32, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vR256Rotate(a: *const vU256, rotateAmount: u32, result: *mut vU256);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vR512Rotate(a: *const vU512, rotateAmount: u32, result: *mut vU512);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vR1024Rotate(a: *const vU1024, rotateAmount: u32, result: *mut vU1024);
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU8Divide(vN: vUInt8, vD: vUInt8, vRemainder: *mut vUInt8) -> vUInt8;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS8Divide(vN: vSInt8, vD: vSInt8, vRemainder: *mut vSInt8) -> vSInt8;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU16Divide(vN: vUInt16, vD: vUInt16, vRemainder: *mut vUInt16) -> vUInt16;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS16Divide(vN: vSInt16, vD: vSInt16, vRemainder: *mut vSInt16) -> vSInt16;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU32Divide(vN: vUInt32, vD: vUInt32, vRemainder: *mut vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS32Divide(vN: vSInt32, vD: vSInt32, vRemainder: *mut vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64Divide(vN: vUInt32, vD: vUInt32, vRemainder: *mut vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64Divide(vN: vSInt32, vD: vSInt32, vRemainder: *mut vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU128Divide(vN: vUInt32, vD: vUInt32, vRemainder: *mut vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS128Divide(vN: vSInt32, vD: vSInt32, vRemainder: *mut vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU8HalfMultiply(vA: vUInt8, vB: vUInt8) -> vUInt8;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS8HalfMultiply(vA: vSInt8, vB: vSInt8) -> vSInt8;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU16HalfMultiply(vA: vUInt16, vB: vUInt16) -> vUInt16;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS16HalfMultiply(vA: vSInt16, vB: vSInt16) -> vSInt16;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU32HalfMultiply(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS32HalfMultiply(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU32FullMulEven(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU32FullMulOdd(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS32FullMulEven(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS32FullMulOdd(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64FullMulEven(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64FullMulOdd(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64HalfMultiply(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64HalfMultiply(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64FullMulEven(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64FullMulOdd(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU128HalfMultiply(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS128HalfMultiply(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64Sub(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64SubS(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU128Sub(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU128SubS(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64Sub(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS128Sub(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64SubS(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS128SubS(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64Add(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64AddS(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU128Add(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU128AddS(vA: vUInt32, vB: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64Add(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64AddS(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS128Add(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS128AddS(vA: vSInt32, vB: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU64Neg(vA: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS64Neg(vA: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vU128Neg(vA: vUInt32) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vS128Neg(vA: vSInt32) -> vSInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLL64Shift(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vA64Shift(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLR64Shift(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLL64Shift2(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vA64Shift2(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLR64Shift2(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLL128Shift(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vLR128Shift(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vA128Shift(vA: vUInt32, vShiftFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vL64Rotate(vA: vUInt32, vRotateFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vR64Rotate(vA: vUInt32, vRotateFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vL64Rotate2(vA: vUInt32, vRotateFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vR64Rotate2(vA: vUInt32, vRotateFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vL128Rotate(vA: vUInt32, vRotateFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vR128Rotate(vA: vUInt32, vRotateFactor: vUInt8) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vceilf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vfloorf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vtruncf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vnintf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vexpf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vexp2f(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vexpm1f(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vlogf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vlog2f(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vlog10f(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vlog1pf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vlogbf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vscalbf(arg1: vFloat, arg2: vSInt32) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vpowf(arg1: vFloat, arg2: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vipowf(arg1: vFloat, arg2: vSInt32) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vsinf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vcosf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vsincosf(arg1: vFloat, arg2: *mut vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vtanf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vsinpif(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vcospif(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vtanpif(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vasinf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vacosf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vatanf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vatan2f(arg1: vFloat, arg2: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vsinhf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vcoshf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vtanhf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vasinhf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vacoshf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vatanhf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vrecf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vsqrtf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vrsqrtf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vdivf(arg1: vFloat, arg2: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vfmodf(arg1: vFloat, arg2: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vremainderf(arg1: vFloat, arg2: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vremquof(arg1: vFloat, arg2: vFloat, arg3: *mut vUInt32) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vfabsf(arg1: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vcopysignf(arg1: vFloat, arg2: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vsignbitf(arg1: vFloat) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vnextafterf(arg1: vFloat, arg2: vFloat) -> vFloat;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vclassifyf(arg1: vFloat) -> vUInt32;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn vtablelookup(arg1: vSInt32, arg2: *mut u32) -> vUInt32;
}
pub const BLAS_THREADING_BLAS_THREADING_MULTI_THREADED: BLAS_THREADING = 0;
pub const BLAS_THREADING_BLAS_THREADING_SINGLE_THREADED: BLAS_THREADING = 1;
pub const BLAS_THREADING_BLAS_THREADING_MAX_OPTIONS: BLAS_THREADING = 2;
pub type BLAS_THREADING = ::core::ffi::c_uint;
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn BLASSetThreading(threading: BLAS_THREADING) -> ::core::ffi::c_int;
}
#[link(name = "Accelerate", kind = "framework")]
unsafe extern "C" {
pub fn BLASGetThreading() -> BLAS_THREADING;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct la_s {
_unused: [u8; 0],
}
pub type la_object_t = *mut la_s;