package nuod:cblas

⌘K
Ctrl+K
or
/

    Overview

    This file has been provided by kalsprite from the OpenBLAS bindings:

    https://github.com/kalsprite/odin-command
    

    Index

    Variables (0)

    This section is empty.

    Procedures (220)
    Procedure Groups (0)

    This section is empty.

    Types

    CBLAS_SIDE ¶

    CBLAS_SIDE :: enum u32 {
    	Left  = 141, 
    	Right = 142, 
    }
    Related Procedures With Parameters

    bfloat16 ¶

    bfloat16 :: u16
    Related Procedures With Parameters

    openblas_dojob_callback ¶

    openblas_dojob_callback :: proc "c" (job_id: i32, job_data: rawptr, thread_id: i32)
     

    Set the threading backend to a custom callback.

    openblas_threads_callback ¶

    openblas_threads_callback :: proc "c" (num_threads: i32, dojob: openblas_dojob_callback, jobdata_elsize: i32, jobdata_stride: uint, jobdata: rawptr, num_jobs: i32)
    Related Procedures With Parameters

    Constants

    OPENBLAS_SUPPORTED ¶

    OPENBLAS_SUPPORTED: bool : true

    OPENMP ¶

    OPENMP :: 2
     

    OpenBLAS is compiled using OpenMP threading model

    SEQUENTIAL ¶

    SEQUENTIAL :: 0
     

    OpenBLAS is compiled for sequential use

    THREAD ¶

    THREAD :: 1
     

    OpenBLAS is compiled using normal threading model

    Variables

    This section is empty.

    Procedures

    caxpby ¶

    caxpby :: proc "c" (
    	n:     i64, 
    	alpha: ^complex64, 
    	x:     [^]complex64, 
    	incx:  i64, 
    	beta:  ^complex64, 
    	y:     [^]complex64, 
    	incy:  i64, 
    ) ---

    caxpy ¶

    caxpy :: proc "c" (
    	n:     i64, 
    	alpha: ^complex64, 
    	x:     [^]complex64, 
    	incx:  i64, 
    	y:     [^]complex64, 
    	incy:  i64, 
    ) ---

    caxpyc ¶

    caxpyc :: proc "c" (
    	n:     i64, 
    	alpha: ^complex64, 
    	x:     [^]complex64, 
    	incx:  i64, 
    	y:     [^]complex64, 
    	incy:  i64, 
    ) ---

    ccopy ¶

    ccopy :: proc "c" (n: i64, x: [^]complex64, incx: i64, y: [^]complex64, incy: i64) ---

    cdotc ¶

    cdotc :: proc "c" (n: i64, x: [^]complex64, incx: i64, y: [^]complex64, incy: i64) -> complex64 ---

    cdotc_sub ¶

    cdotc_sub :: proc "c" (
    	n:    i64, 
    	x:    [^]complex64, 
    	incx: i64, 
    	y:    [^]complex64, 
    	incy: i64, 
    	ret:  ^complex64, 
    ) ---

    cdotu ¶

    cdotu :: proc "c" (n: i64, x: [^]complex64, incx: i64, y: [^]complex64, incy: i64) -> complex64 ---

    cdotu_sub ¶

    cdotu_sub :: proc "c" (
    	n:    i64, 
    	x:    [^]complex64, 
    	incx: i64, 
    	y:    [^]complex64, 
    	incy: i64, 
    	ret:  ^complex64, 
    ) ---

    cgbmv ¶

    cgbmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	KL:     i64, 
    	KU:     i64, 
    	alpha:  ^complex64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	X:      [^]complex64, 
    	incX:   i64, 
    	beta:   ^complex64, 
    	Y:      [^]complex64, 
    	incY:   i64, 
    ) ---

    cgeadd ¶

    cgeadd :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: ^complex64, 
    	a:      [^]complex64, 
    	clda:   i64, 
    	cbeta:  ^complex64, 
    	_c:     [^]complex64, 
    	cldc:   i64, 
    ) ---

    cgemm ¶

    cgemm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	K:      i64, 
    	alpha:  ^complex64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	B:      [^]complex64, 
    	ldb:    i64, 
    	beta:   ^complex64, 
    	C:      [^]complex64, 
    	ldc:    i64, 
    ) ---

    cgemm3m ¶

    cgemm3m :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	K:      i64, 
    	alpha:  ^complex64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	B:      [^]complex64, 
    	ldb:    i64, 
    	beta:   ^complex64, 
    	C:      [^]complex64, 
    	ldc:    i64, 
    ) ---

    cgemm_batch ¶

    cgemm_batch :: proc "c" (
    	Order:        CBLAS_ORDER, 
    	TransA_array: [^]CBLAS_TRANSPOSE, 
    	TransB_array: [^]CBLAS_TRANSPOSE, 
    	M_array:      [^]i64, 
    	N_array:      [^]i64, 
    	K_array:      [^]i64, 
    	alpha_array:  [^]complex64, 
    	A_array:      [^][^]complex64, 
    	lda_array:    [^]i64, 
    	B_array:      [^][^]complex64, 
    	ldb_array:    [^]i64, 
    	beta_array:   [^]complex64, 
    	C_array:      [^][^]complex64, 
    	ldc_array:    [^]i64, 
    	group_count:  i64, 
    	group_size:   [^]i64, 
    ) ---

    cgemmt ¶

    cgemmt :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	K:      i64, 
    	alpha:  ^complex64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	B:      [^]complex64, 
    	ldb:    i64, 
    	beta:   ^complex64, 
    	C:      [^]complex64, 
    	ldc:    i64, 
    ) ---

    cgemv ¶

    cgemv :: proc "c" (
    	order: CBLAS_ORDER, 
    	trans: CBLAS_TRANSPOSE, 
    	m:     i64, 
    	n:     i64, 
    	alpha: ^complex64, 
    	a:     [^]complex64, 
    	lda:   i64, 
    	x:     [^]complex64, 
    	incx:  i64, 
    	beta:  ^complex64, 
    	y:     [^]complex64, 
    	incy:  i64, 
    ) ---

    cgerc ¶

    cgerc :: proc "c" (
    	order: CBLAS_ORDER, 
    	M:     i64, 
    	N:     i64, 
    	alpha: ^complex64, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	Y:     [^]complex64, 
    	incY:  i64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    ) ---

    cgeru ¶

    cgeru :: proc "c" (
    	order: CBLAS_ORDER, 
    	M:     i64, 
    	N:     i64, 
    	alpha: ^complex64, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	Y:     [^]complex64, 
    	incY:  i64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    ) ---

    chbmv ¶

    chbmv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	K:     i64, 
    	alpha: ^complex64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	beta:  ^complex64, 
    	Y:     [^]complex64, 
    	incY:  i64, 
    ) ---

    chemm ¶

    chemm :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Side:  CBLAS_SIDE, 
    	Uplo:  CBLAS_UPLO, 
    	M:     i64, 
    	N:     i64, 
    	alpha: ^complex64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    	B:     [^]complex64, 
    	ldb:   i64, 
    	beta:  ^complex64, 
    	C:     [^]complex64, 
    	ldc:   i64, 
    ) ---

    chemv ¶

    chemv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: ^complex64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	beta:  ^complex64, 
    	Y:     [^]complex64, 
    	incY:  i64, 
    ) ---

    cher ¶

    cher :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f32, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    ) ---

    cher2 ¶

    cher2 :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: ^complex64, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	Y:     [^]complex64, 
    	incY:  i64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    ) ---

    cher2k ¶

    cher2k :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: ^complex64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    	B:     [^]complex64, 
    	ldb:   i64, 
    	beta:  f32, 
    	C:     [^]complex64, 
    	ldc:   i64, 
    ) ---

    cherk ¶

    cherk :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: f32, 
    	A:     [^]complex64, 
    	lda:   i64, 
    	beta:  f32, 
    	C:     [^]complex64, 
    	ldc:   i64, 
    ) ---

    chpmv ¶

    chpmv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: ^complex64, 
    	Ap:    [^]complex64, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	beta:  ^complex64, 
    	Y:     [^]complex64, 
    	incY:  i64, 
    ) ---

    chpr ¶

    chpr :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f32, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	A:     [^]complex64, 
    ) ---

    chpr2 ¶

    chpr2 :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: ^complex64, 
    	X:     [^]complex64, 
    	incX:  i64, 
    	Y:     [^]complex64, 
    	incY:  i64, 
    	Ap:    [^]complex64, 
    ) ---

    cimatcopy ¶

    cimatcopy :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	CTRANS: CBLAS_TRANSPOSE, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: ^complex64, 
    	a:      [^]complex64, 
    	clda:   i64, 
    	cldb:   i64, 
    ) ---

    comatcopy ¶

    comatcopy :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	CTRANS: CBLAS_TRANSPOSE, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: ^complex64, 
    	a:      [^]complex64, 
    	clda:   i64, 
    	b:      [^]complex64, 
    	cldb:   i64, 
    ) ---

    crotg ¶

    crotg :: proc "c" (a: ^complex64, b: ^complex64, _c: ^f32, s: ^complex64) ---

    cscal ¶

    cscal :: proc "c" (N: i64, alpha: ^complex64, X: [^]complex64, incX: i64) ---

    csrot ¶

    csrot :: proc "c" (
    	n:    i64, 
    	x:    [^]complex64, 
    	incx: i64, 
    	y:    [^]complex64, 
    	incY: i64, 
    	_c:   f32, 
    	s:    f32, 
    ) ---

    csscal ¶

    csscal :: proc "c" (N: i64, alpha: f32, X: [^]complex64, incX: i64) ---

    cswap ¶

    cswap :: proc "c" (n: i64, x: [^]complex64, incx: i64, y: [^]complex64, incy: i64) ---

    csymm ¶

    csymm :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Side:  CBLAS_SIDE, 
    	Uplo:  CBLAS_UPLO, 
    	M:     i64, 
    	N:     i64, 
    	alpha: ^complex64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    	B:     [^]complex64, 
    	ldb:   i64, 
    	beta:  ^complex64, 
    	C:     [^]complex64, 
    	ldc:   i64, 
    ) ---

    csyr2k ¶

    csyr2k :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: ^complex64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    	B:     [^]complex64, 
    	ldb:   i64, 
    	beta:  ^complex64, 
    	C:     [^]complex64, 
    	ldc:   i64, 
    ) ---

    csyrk ¶

    csyrk :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: ^complex64, 
    	A:     [^]complex64, 
    	lda:   i64, 
    	beta:  ^complex64, 
    	C:     [^]complex64, 
    	ldc:   i64, 
    ) ---

    ctbmv ¶

    ctbmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	K:      i64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	X:      [^]complex64, 
    	incX:   i64, 
    ) ---

    ctbsv ¶

    ctbsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	K:      i64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	X:      [^]complex64, 
    	incX:   i64, 
    ) ---

    ctpmv ¶

    ctpmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	Ap:     [^]complex64, 
    	X:      [^]complex64, 
    	incX:   i64, 
    ) ---

    ctpsv ¶

    ctpsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	Ap:     [^]complex64, 
    	X:      [^]complex64, 
    	incX:   i64, 
    ) ---

    ctrmm ¶

    ctrmm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Side:   CBLAS_SIDE, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	M:      i64, 
    	N:      i64, 
    	alpha:  ^complex64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	B:      [^]complex64, 
    	ldb:    i64, 
    ) ---

    ctrmv ¶

    ctrmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	X:      [^]complex64, 
    	incX:   i64, 
    ) ---

    ctrsm ¶

    ctrsm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Side:   CBLAS_SIDE, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	M:      i64, 
    	N:      i64, 
    	alpha:  ^complex64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	B:      [^]complex64, 
    	ldb:    i64, 
    ) ---

    ctrsv ¶

    ctrsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	A:      [^]complex64, 
    	lda:    i64, 
    	X:      [^]complex64, 
    	incX:   i64, 
    ) ---

    damax ¶

    damax :: proc "c" (n: i64, x: [^]f64, incx: i64) -> f64 ---

    damin ¶

    damin :: proc "c" (n: i64, x: [^]f64, incx: i64) -> f64 ---

    dasum ¶

    dasum :: proc "c" (n: i64, x: [^]f64, incx: i64) -> f64 ---

    daxpby ¶

    daxpby :: proc "c" (
    	n:     i64, 
    	alpha: f64, 
    	x:     [^]f64, 
    	incx:  i64, 
    	beta:  f64, 
    	y:     [^]f64, 
    	incy:  i64, 
    ) ---

    daxpy ¶

    daxpy :: proc "c" (
    	n:     i64, 
    	alpha: f64, 
    	x:     [^]f64, 
    	incx:  i64, 
    	y:     [^]f64, 
    	incy:  i64, 
    ) ---

    dbf16tod ¶

    dbf16tod :: proc "c" (n: i64, _in: [^]u16, incin: i64, out: [^]f64, incout: i64) ---
     

    convert BFLOAT16 array to double array

    dcopy ¶

    dcopy :: proc "c" (n: i64, x: [^]f64, incx: i64, y: [^]f64, incy: i64) ---

    ddot ¶

    ddot :: proc "c" (n: i64, x: [^]f64, incx: i64, y: [^]f64, incy: i64) -> f64 ---

    dgbmv ¶

    dgbmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	KL:     i64, 
    	KU:     i64, 
    	alpha:  f64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	X:      [^]f64, 
    	incX:   i64, 
    	beta:   f64, 
    	Y:      [^]f64, 
    	incY:   i64, 
    ) ---

    dgeadd ¶

    dgeadd :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: f64, 
    	a:      [^]f64, 
    	clda:   i64, 
    	cbeta:  f64, 
    	_c:     [^]f64, 
    	cldc:   i64, 
    ) ---

    dgemm ¶

    dgemm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	K:      i64, 
    	alpha:  f64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	B:      [^]f64, 
    	ldb:    i64, 
    	beta:   f64, 
    	C:      [^]f64, 
    	ldc:    i64, 
    ) ---

    dgemm_batch ¶

    dgemm_batch :: proc "c" (
    	Order:        CBLAS_ORDER, 
    	TransA_array: [^]CBLAS_TRANSPOSE, 
    	TransB_array: [^]CBLAS_TRANSPOSE, 
    	M_array:      [^]i64, 
    	N_array:      [^]i64, 
    	K_array:      [^]i64, 
    	alpha_array:  [^]f64, 
    	A_array:      [^]^f64, 
    	lda_array:    [^]i64, 
    	B_array:      [^]^f64, 
    	ldb_array:    [^]i64, 
    	beta_array:   [^]f64, 
    	C_array:      [^]^f64, 
    	ldc_array:    [^]i64, 
    	group_count:  i64, 
    	group_size:   [^]i64, 
    ) ---

    dgemmt ¶

    dgemmt :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	K:      i64, 
    	alpha:  f64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	B:      [^]f64, 
    	ldb:    i64, 
    	beta:   f64, 
    	C:      [^]f64, 
    	ldc:    i64, 
    ) ---

    dgemv ¶

    dgemv :: proc "c" (
    	order: CBLAS_ORDER, 
    	trans: CBLAS_TRANSPOSE, 
    	m:     i64, 
    	n:     i64, 
    	alpha: f64, 
    	a:     [^]f64, 
    	lda:   i64, 
    	x:     [^]f64, 
    	incx:  i64, 
    	beta:  f64, 
    	y:     [^]f64, 
    	incy:  i64, 
    ) ---

    dger ¶

    dger :: proc "c" (
    	order: CBLAS_ORDER, 
    	M:     i64, 
    	N:     i64, 
    	alpha: f64, 
    	X:     [^]f64, 
    	incX:  i64, 
    	Y:     [^]f64, 
    	incY:  i64, 
    	A:     [^]f64, 
    	lda:   i64, 
    ) ---

    dimatcopy ¶

    dimatcopy :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	CTRANS: CBLAS_TRANSPOSE, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: f64, 
    	a:      [^]f64, 
    	clda:   i64, 
    	cldb:   i64, 
    ) ---

    dnrm2 ¶

    dnrm2 :: proc "c" (N: i64, X: [^]f64, incX: i64) -> f64 ---

    domatcopy ¶

    domatcopy :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	CTRANS: CBLAS_TRANSPOSE, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: f64, 
    	a:      [^]f64, 
    	clda:   i64, 
    	b:      [^]f64, 
    	cldb:   i64, 
    ) ---

    drot ¶

    drot :: proc "c" (
    	N:    i64, 
    	X:    [^]f64, 
    	incX: i64, 
    	Y:    [^]f64, 
    	incY: i64, 
    	_c:   f64, 
    	s:    f64, 
    ) ---

    drotg ¶

    drotg :: proc "c" (a: ^f64, b: ^f64, _c: ^f64, s: ^f64) ---

    drotm ¶

    drotm :: proc "c" (
    	N:    i64, 
    	X:    [^]f64, 
    	incX: i64, 
    	Y:    [^]f64, 
    	incY: i64, 
    	P:    [^]f64, 
    ) ---

    drotmg ¶

    drotmg :: proc "c" (d1: ^f64, d2: ^f64, b1: ^f64, b2: f64, P: [^]f64) ---

    dsbmv ¶

    dsbmv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	K:     i64, 
    	alpha: f64, 
    	A:     [^]f64, 
    	lda:   i64, 
    	X:     [^]f64, 
    	incX:  i64, 
    	beta:  f64, 
    	Y:     [^]f64, 
    	incY:  i64, 
    ) ---

    dscal ¶

    dscal :: proc "c" (N: i64, alpha: f64, X: [^]f64, incX: i64) ---

    dsdot ¶

    dsdot :: proc "c" (n: i64, x: [^]f32, incx: i64, y: [^]f32, incy: i64) -> f64 ---

    dspmv ¶

    dspmv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f64, 
    	Ap:    [^]f64, 
    	X:     [^]f64, 
    	incX:  i64, 
    	beta:  f64, 
    	Y:     [^]f64, 
    	incY:  i64, 
    ) ---

    dspr ¶

    dspr :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f64, 
    	X:     [^]f64, 
    	incX:  i64, 
    	Ap:    [^]f64, 
    ) ---

    dspr2 ¶

    dspr2 :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f64, 
    	X:     [^]f64, 
    	incX:  i64, 
    	Y:     [^]f64, 
    	incY:  i64, 
    	A:     [^]f64, 
    ) ---

    dsum ¶

    dsum :: proc "c" (n: i64, x: [^]f64, incx: i64) -> f64 ---

    dswap ¶

    dswap :: proc "c" (n: i64, x: [^]f64, incx: i64, y: [^]f64, incy: i64) ---

    dsymm ¶

    dsymm :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Side:  CBLAS_SIDE, 
    	Uplo:  CBLAS_UPLO, 
    	M:     i64, 
    	N:     i64, 
    	alpha: f64, 
    	A:     [^]f64, 
    	lda:   i64, 
    	B:     [^]f64, 
    	ldb:   i64, 
    	beta:  f64, 
    	C:     [^]f64, 
    	ldc:   i64, 
    ) ---

    dsymv ¶

    dsymv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f64, 
    	A:     [^]f64, 
    	lda:   i64, 
    	X:     [^]f64, 
    	incX:  i64, 
    	beta:  f64, 
    	Y:     [^]f64, 
    	incY:  i64, 
    ) ---

    dsyr ¶

    dsyr :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f64, 
    	X:     [^]f64, 
    	incX:  i64, 
    	A:     [^]f64, 
    	lda:   i64, 
    ) ---

    dsyr2 ¶

    dsyr2 :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f64, 
    	X:     [^]f64, 
    	incX:  i64, 
    	Y:     [^]f64, 
    	incY:  i64, 
    	A:     [^]f64, 
    	lda:   i64, 
    ) ---

    dsyr2k ¶

    dsyr2k :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: f64, 
    	A:     [^]f64, 
    	lda:   i64, 
    	B:     [^]f64, 
    	ldb:   i64, 
    	beta:  f64, 
    	C:     [^]f64, 
    	ldc:   i64, 
    ) ---

    dsyrk ¶

    dsyrk :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: f64, 
    	A:     [^]f64, 
    	lda:   i64, 
    	beta:  f64, 
    	C:     [^]f64, 
    	ldc:   i64, 
    ) ---

    dtbmv ¶

    dtbmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	K:      i64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	X:      [^]f64, 
    	incX:   i64, 
    ) ---

    dtbsv ¶

    dtbsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	K:      i64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	X:      [^]f64, 
    	incX:   i64, 
    ) ---

    dtpmv ¶

    dtpmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	Ap:     [^]f64, 
    	X:      [^]f64, 
    	incX:   i64, 
    ) ---

    dtpsv ¶

    dtpsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	Ap:     [^]f64, 
    	X:      [^]f64, 
    	incX:   i64, 
    ) ---

    dtrmm ¶

    dtrmm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Side:   CBLAS_SIDE, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	M:      i64, 
    	N:      i64, 
    	alpha:  f64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	B:      [^]f64, 
    	ldb:    i64, 
    ) ---

    dtrmv ¶

    dtrmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	X:      [^]f64, 
    	incX:   i64, 
    ) ---

    dtrsm ¶

    dtrsm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Side:   CBLAS_SIDE, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	M:      i64, 
    	N:      i64, 
    	alpha:  f64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	B:      [^]f64, 
    	ldb:    i64, 
    ) ---

    dtrsv ¶

    dtrsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	A:      [^]f64, 
    	lda:    i64, 
    	X:      [^]f64, 
    	incX:   i64, 
    ) ---

    dzamax ¶

    dzamax :: proc "c" (n: i64, x: [^]complex128, incx: i64) -> f64 ---

    dzamin ¶

    dzamin :: proc "c" (n: i64, x: [^]complex128, incx: i64) -> f64 ---

    dzasum ¶

    dzasum :: proc "c" (n: i64, x: [^]complex128, incx: i64) -> f64 ---

    dznrm2 ¶

    dznrm2 :: proc "c" (N: i64, X: [^]complex128, incX: i64) -> f64 ---

    dzsum ¶

    dzsum :: proc "c" (n: i64, x: [^]complex128, incx: i64) -> f64 ---

    goto_set_num_threads ¶

    goto_set_num_threads :: proc "c" (num_threads: i32) ---

    icamax ¶

    icamax :: proc "c" (n: i64, x: [^]complex64, incx: i64) -> uint ---

    icamin ¶

    icamin :: proc "c" (n: i64, x: [^]complex64, incx: i64) -> uint ---

    icmax ¶

    icmax :: proc "c" (n: i64, x: [^]complex64, incx: i64) -> uint ---

    icmin ¶

    icmin :: proc "c" (n: i64, x: [^]complex64, incx: i64) -> uint ---

    idamax ¶

    idamax :: proc "c" (n: i64, x: [^]f64, incx: i64) -> uint ---

    idamin ¶

    idamin :: proc "c" (n: i64, x: [^]f64, incx: i64) -> uint ---

    idmax ¶

    idmax :: proc "c" (n: i64, x: [^]f64, incx: i64) -> uint ---

    idmin ¶

    idmin :: proc "c" (n: i64, x: [^]f64, incx: i64) -> uint ---

    isamax ¶

    isamax :: proc "c" (n: i64, x: [^]f32, incx: i64) -> uint ---

    isamin ¶

    isamin :: proc "c" (n: i64, x: [^]f32, incx: i64) -> uint ---

    ismax ¶

    ismax :: proc "c" (n: i64, x: [^]f32, incx: i64) -> uint ---

    ismin ¶

    ismin :: proc "c" (n: i64, x: [^]f32, incx: i64) -> uint ---

    izamax ¶

    izamax :: proc "c" (n: i64, x: [^]complex128, incx: i64) -> uint ---

    izamin ¶

    izamin :: proc "c" (n: i64, x: [^]complex128, incx: i64) -> uint ---

    izmax ¶

    izmax :: proc "c" (n: i64, x: [^]complex128, incx: i64) -> uint ---

    izmin ¶

    izmin :: proc "c" (n: i64, x: [^]complex128, incx: i64) -> uint ---

    openblas_get_config ¶

    openblas_get_config :: proc "c" () -> cstring ---
     

    Get the build configure on runtime.

    openblas_get_corename ¶

    openblas_get_corename :: proc "c" () -> cstring ---
     

    Get the CPU corename on runtime.

    openblas_get_num_procs ¶

    openblas_get_num_procs :: proc "c" () -> i32 ---
     

    Get the number of physical processors (cores).

    openblas_get_num_threads ¶

    openblas_get_num_threads :: proc "c" () -> i32 ---
     

    Get the number of threads on runtime.

    openblas_get_parallel ¶

    openblas_get_parallel :: proc "c" () -> i32 ---
     

    Get the parallelization type which is used by OpenBLAS

    openblas_set_num_threads ¶

    openblas_set_num_threads :: proc "c" (num_threads: i32) ---
     

    Set the number of threads on runtime.

    openblas_set_num_threads_local ¶

    openblas_set_num_threads_local :: proc "c" (num_threads: i32) -> i32 ---

    openblas_set_threads_callback_function ¶

    openblas_set_threads_callback_function :: proc "c" (callback: openblas_threads_callback) ---

    samax ¶

    samax :: proc "c" (n: i64, x: [^]f32, incx: i64) -> f32 ---

    samin ¶

    samin :: proc "c" (n: i64, x: [^]f32, incx: i64) -> f32 ---

    sasum ¶

    sasum :: proc "c" (n: i64, x: [^]f32, incx: i64) -> f32 ---

    saxpby ¶

    saxpby :: proc "c" (
    	n:     i64, 
    	alpha: f32, 
    	x:     [^]f32, 
    	incx:  i64, 
    	beta:  f32, 
    	y:     [^]f32, 
    	incy:  i64, 
    ) ---
     

    BLAS extensions

    saxpy ¶

    saxpy :: proc "c" (
    	n:     i64, 
    	alpha: f32, 
    	x:     [^]f32, 
    	incx:  i64, 
    	y:     [^]f32, 
    	incy:  i64, 
    ) ---

    sbdot ¶

    sbdot :: proc "c" (n: i64, x: [^]u16, incx: i64, y: [^]u16, incy: i64) -> f32 ---
     

    dot production of BFLOAT16 input arrays, and output as float

    sbdtobf16 ¶

    sbdtobf16 :: proc "c" (n: i64, _in: [^]f64, incin: i64, out: [^]u16, incout: i64) ---
     

    convert double array to BFLOAT16 array by rounding

    sbf16tos ¶

    sbf16tos :: proc "c" (n: i64, _in: [^]u16, incin: i64, out: [^]f32, incout: i64) ---
     

    convert BFLOAT16 array to float array

    sbgemm ¶

    sbgemm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	K:      i64, 
    	alpha:  f32, 
    	A:      [^]u16, 
    	lda:    i64, 
    	B:      [^]u16, 
    	ldb:    i64, 
    	beta:   f32, 
    	C:      [^]f32, 
    	ldc:    i64, 
    ) ---

    sbgemm_batch ¶

    sbgemm_batch :: proc "c" (
    	Order:        CBLAS_ORDER, 
    	TransA_array: [^]CBLAS_TRANSPOSE, 
    	TransB_array: [^]CBLAS_TRANSPOSE, 
    	M_array:      [^]i64, 
    	N_array:      [^]i64, 
    	K_array:      [^]i64, 
    	alpha_array:  [^]f32, 
    	A_array:      [^]^u16, 
    	lda_array:    [^]i64, 
    	B_array:      [^]^u16, 
    	ldb_array:    [^]i64, 
    	beta_array:   [^]f32, 
    	C_array:      [^]^f32, 
    	ldc_array:    [^]i64, 
    	group_count:  i64, 
    	group_size:   [^]i64, 
    ) ---

    sbgemv ¶

    sbgemv :: proc "c" (
    	order: CBLAS_ORDER, 
    	trans: CBLAS_TRANSPOSE, 
    	m:     i64, 
    	n:     i64, 
    	alpha: f32, 
    	a:     [^]u16, 
    	lda:   i64, 
    	x:     [^]u16, 
    	incx:  i64, 
    	beta:  f32, 
    	y:     [^]f32, 
    	incy:  i64, 
    ) ---

    sbstobf16 ¶

    sbstobf16 :: proc "c" (n: i64, _in: [^]f32, incin: i64, out: [^]u16, incout: i64) ---
     

    BFLOAT16 and INT8 extensions convert float array to BFLOAT16 array by rounding

    scamax ¶

    scamax :: proc "c" (n: i64, x: [^]complex64, incx: i64) -> f32 ---

    scamin ¶

    scamin :: proc "c" (n: i64, x: [^]complex64, incx: i64) -> f32 ---

    scasum ¶

    scasum :: proc "c" (n: i64, x: [^]complex64, incx: i64) -> f32 ---

    scnrm2 ¶

    scnrm2 :: proc "c" (N: i64, X: [^]complex64, incX: i64) -> f32 ---

    scopy ¶

    scopy :: proc "c" (n: i64, x: [^]f32, incx: i64, y: [^]f32, incy: i64) ---

    scsum ¶

    scsum :: proc "c" (n: i64, x: [^]complex64, incx: i64) -> f32 ---

    sdot ¶

    sdot :: proc "c" (n: i64, x: [^]f32, incx: i64, y: [^]f32, incy: i64) -> f32 ---

    sdsdot ¶

    sdsdot :: proc "c" (
    	n:     i64, 
    	alpha: f32, 
    	x:     [^]f32, 
    	incx:  i64, 
    	y:     [^]f32, 
    	incy:  i64, 
    ) -> f32 ---

    sgbmv ¶

    sgbmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	KL:     i64, 
    	KU:     i64, 
    	alpha:  f32, 
    	A:      [^]f32, 
    	lda:    i64, 
    	X:      [^]f32, 
    	incX:   i64, 
    	beta:   f32, 
    	Y:      [^]f32, 
    	incY:   i64, 
    ) ---

    sgeadd ¶

    sgeadd :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: f32, 
    	a:      [^]f32, 
    	clda:   i64, 
    	cbeta:  f32, 
    	_c:     [^]f32, 
    	cldc:   i64, 
    ) ---

    sgemm ¶

    sgemm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	K:      i64, 
    	alpha:  f32, 
    	A:      [^]f32, 
    	lda:    i64, 
    	B:      [^]f32, 
    	ldb:    i64, 
    	beta:   f32, 
    	C:      [^]f32, 
    	ldc:    i64, 
    ) ---

    sgemm_batch ¶

    sgemm_batch :: proc "c" (
    	Order:        CBLAS_ORDER, 
    	TransA_array: [^]CBLAS_TRANSPOSE, 
    	TransB_array: [^]CBLAS_TRANSPOSE, 
    	M_array:      [^]i64, 
    	N_array:      [^]i64, 
    	K_array:      [^]i64, 
    	alpha_array:  [^]f32, 
    	A_array:      [^]^f32, 
    	lda_array:    [^]i64, 
    	B_array:      [^]^f32, 
    	ldb_array:    [^]i64, 
    	beta_array:   [^]f32, 
    	C_array:      [^]^f32, 
    	ldc_array:    [^]i64, 
    	group_count:  i64, 
    	group_size:   [^]i64, 
    ) ---
     

    EVERYTHING BELOW HERE IS NOT WRAPPED:

    sgemmt ¶

    sgemmt :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	K:      i64, 
    	alpha:  f32, 
    	A:      [^]f32, 
    	lda:    i64, 
    	B:      [^]f32, 
    	ldb:    i64, 
    	beta:   f32, 
    	C:      [^]f32, 
    	ldc:    i64, 
    ) ---

    sgemv ¶

    sgemv :: proc "c" (
    	order: CBLAS_ORDER, 
    	trans: CBLAS_TRANSPOSE, 
    	m:     i64, 
    	n:     i64, 
    	alpha: f32, 
    	a:     [^]f32, 
    	lda:   i64, 
    	x:     [^]f32, 
    	incx:  i64, 
    	beta:  f32, 
    	y:     [^]f32, 
    	incy:  i64, 
    ) ---

    sger ¶

    sger :: proc "c" (
    	order: CBLAS_ORDER, 
    	M:     i64, 
    	N:     i64, 
    	alpha: f32, 
    	X:     [^]f32, 
    	incX:  i64, 
    	Y:     [^]f32, 
    	incY:  i64, 
    	A:     [^]f32, 
    	lda:   i64, 
    ) ---

    simatcopy ¶

    simatcopy :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	CTRANS: CBLAS_TRANSPOSE, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: f32, 
    	a:      [^]f32, 
    	clda:   i64, 
    	cldb:   i64, 
    ) ---

    snrm2 ¶

    snrm2 :: proc "c" (N: i64, X: [^]f32, incX: i64) -> f32 ---

    somatcopy ¶

    somatcopy :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	CTRANS: CBLAS_TRANSPOSE, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: f32, 
    	a:      [^]f32, 
    	clda:   i64, 
    	b:      [^]f32, 
    	cldb:   i64, 
    ) ---

    srot ¶

    srot :: proc "c" (
    	N:    i64, 
    	X:    [^]f32, 
    	incX: i64, 
    	Y:    [^]f32, 
    	incY: i64, 
    	_c:   f32, 
    	s:    f32, 
    ) ---

    srotg ¶

    srotg :: proc "c" (a: ^f32, b: ^f32, _c: ^f32, s: ^f32) ---

    srotm ¶

    srotm :: proc "c" (
    	N:    i64, 
    	X:    [^]f32, 
    	incX: i64, 
    	Y:    [^]f32, 
    	incY: i64, 
    	P:    [^]f32, 
    ) ---

    srotmg ¶

    srotmg :: proc "c" (d1: ^f32, d2: ^f32, b1: ^f32, b2: f32, P: [^]f32) ---

    ssbmv ¶

    ssbmv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	K:     i64, 
    	alpha: f32, 
    	A:     [^]f32, 
    	lda:   i64, 
    	X:     [^]f32, 
    	incX:  i64, 
    	beta:  f32, 
    	Y:     [^]f32, 
    	incY:  i64, 
    ) ---

    sscal ¶

    sscal :: proc "c" (N: i64, alpha: f32, X: [^]f32, incX: i64) ---

    sspmv ¶

    sspmv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f32, 
    	Ap:    [^]f32, 
    	X:     [^]f32, 
    	incX:  i64, 
    	beta:  f32, 
    	Y:     [^]f32, 
    	incY:  i64, 
    ) ---

    sspr ¶

    sspr :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f32, 
    	X:     [^]f32, 
    	incX:  i64, 
    	Ap:    [^]f32, 
    ) ---

    sspr2 ¶

    sspr2 :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f32, 
    	X:     [^]f32, 
    	incX:  i64, 
    	Y:     [^]f32, 
    	incY:  i64, 
    	A:     [^]f32, 
    ) ---

    ssum ¶

    ssum :: proc "c" (n: i64, x: [^]f32, incx: i64) -> f32 ---

    sswap ¶

    sswap :: proc "c" (n: i64, x: [^]f32, incx: i64, y: [^]f32, incy: i64) ---

    ssymm ¶

    ssymm :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Side:  CBLAS_SIDE, 
    	Uplo:  CBLAS_UPLO, 
    	M:     i64, 
    	N:     i64, 
    	alpha: f32, 
    	A:     [^]f32, 
    	lda:   i64, 
    	B:     [^]f32, 
    	ldb:   i64, 
    	beta:  f32, 
    	C:     [^]f32, 
    	ldc:   i64, 
    ) ---

    ssymv ¶

    ssymv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f32, 
    	A:     [^]f32, 
    	lda:   i64, 
    	X:     [^]f32, 
    	incX:  i64, 
    	beta:  f32, 
    	Y:     [^]f32, 
    	incY:  i64, 
    ) ---

    ssyr ¶

    ssyr :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f32, 
    	X:     [^]f32, 
    	incX:  i64, 
    	A:     [^]f32, 
    	lda:   i64, 
    ) ---

    ssyr2 ¶

    ssyr2 :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f32, 
    	X:     [^]f32, 
    	incX:  i64, 
    	Y:     [^]f32, 
    	incY:  i64, 
    	A:     [^]f32, 
    	lda:   i64, 
    ) ---

    ssyr2k ¶

    ssyr2k :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: f32, 
    	A:     [^]f32, 
    	lda:   i64, 
    	B:     [^]f32, 
    	ldb:   i64, 
    	beta:  f32, 
    	C:     [^]f32, 
    	ldc:   i64, 
    ) ---

    ssyrk ¶

    ssyrk :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: f32, 
    	A:     [^]f32, 
    	lda:   i64, 
    	beta:  f32, 
    	C:     [^]f32, 
    	ldc:   i64, 
    ) ---

    stbmv ¶

    stbmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	K:      i64, 
    	A:      [^]f32, 
    	lda:    i64, 
    	X:      [^]f32, 
    	incX:   i64, 
    ) ---

    stbsv ¶

    stbsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	K:      i64, 
    	A:      [^]f32, 
    	lda:    i64, 
    	X:      [^]f32, 
    	incX:   i64, 
    ) ---

    stpmv ¶

    stpmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	Ap:     [^]f32, 
    	X:      [^]f32, 
    	incX:   i64, 
    ) ---

    stpsv ¶

    stpsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	Ap:     [^]f32, 
    	X:      [^]f32, 
    	incX:   i64, 
    ) ---

    strmm ¶

    strmm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Side:   CBLAS_SIDE, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	M:      i64, 
    	N:      i64, 
    	alpha:  f32, 
    	A:      [^]f32, 
    	lda:    i64, 
    	B:      [^]f32, 
    	ldb:    i64, 
    ) ---

    strmv ¶

    strmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	A:      [^]f32, 
    	lda:    i64, 
    	X:      [^]f32, 
    	incX:   i64, 
    ) ---

    strsm ¶

    strsm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Side:   CBLAS_SIDE, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	M:      i64, 
    	N:      i64, 
    	alpha:  f32, 
    	A:      [^]f32, 
    	lda:    i64, 
    	B:      [^]f32, 
    	ldb:    i64, 
    ) ---

    strsv ¶

    strsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	A:      [^]f32, 
    	lda:    i64, 
    	X:      [^]f32, 
    	incX:   i64, 
    ) ---

    xerbla ¶

    xerbla :: proc "c" (p: i64, rout: cstring, form: cstring, .. _: ..any) ---

    zaxpby ¶

    zaxpby :: proc "c" (
    	n:     i64, 
    	alpha: ^complex128, 
    	x:     [^]complex128, 
    	incx:  i64, 
    	beta:  ^complex128, 
    	y:     [^]complex128, 
    	incy:  i64, 
    ) ---

    zaxpy ¶

    zaxpy :: proc "c" (
    	n:     i64, 
    	alpha: ^complex128, 
    	x:     [^]complex128, 
    	incx:  i64, 
    	y:     [^]complex128, 
    	incy:  i64, 
    ) ---

    zaxpyc ¶

    zaxpyc :: proc "c" (
    	n:     i64, 
    	alpha: ^complex128, 
    	x:     [^]complex128, 
    	incx:  i64, 
    	y:     [^]complex128, 
    	incy:  i64, 
    ) ---

    zcopy ¶

    zcopy :: proc "c" (n: i64, x: [^]complex128, incx: i64, y: [^]complex128, incy: i64) ---

    zdotc ¶

    zdotc :: proc "c" (n: i64, x: [^]complex128, incx: i64, y: [^]complex128, incy: i64) -> complex128 ---

    zdotc_sub ¶

    zdotc_sub :: proc "c" (
    	n:    i64, 
    	x:    [^]complex128, 
    	incx: i64, 
    	y:    [^]complex128, 
    	incy: i64, 
    	ret:  ^complex128, 
    ) ---

    zdotu ¶

    zdotu :: proc "c" (n: i64, x: [^]complex128, incx: i64, y: [^]complex128, incy: i64) -> complex128 ---

    zdotu_sub ¶

    zdotu_sub :: proc "c" (
    	n:    i64, 
    	x:    [^]complex128, 
    	incx: i64, 
    	y:    [^]complex128, 
    	incy: i64, 
    	ret:  ^complex128, 
    ) ---

    zdrot ¶

    zdrot :: proc "c" (
    	n:    i64, 
    	x:    [^]complex128, 
    	incx: i64, 
    	y:    [^]complex128, 
    	incY: i64, 
    	_c:   f64, 
    	s:    f64, 
    ) ---

    zdscal ¶

    zdscal :: proc "c" (N: i64, alpha: f64, X: [^]complex128, incX: i64) ---

    zgbmv ¶

    zgbmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	KL:     i64, 
    	KU:     i64, 
    	alpha:  ^complex128, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	X:      [^]complex128, 
    	incX:   i64, 
    	beta:   ^complex128, 
    	Y:      [^]complex128, 
    	incY:   i64, 
    ) ---

    zgeadd ¶

    zgeadd :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: ^complex128, 
    	a:      [^]complex128, 
    	clda:   i64, 
    	cbeta:  ^complex128, 
    	_c:     [^]complex128, 
    	cldc:   i64, 
    ) ---

    zgemm ¶

    zgemm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	K:      i64, 
    	alpha:  ^complex128, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	B:      [^]complex128, 
    	ldb:    i64, 
    	beta:   ^complex128, 
    	C:      [^]complex128, 
    	ldc:    i64, 
    ) ---

    zgemm3m ¶

    zgemm3m :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	N:      i64, 
    	K:      i64, 
    	alpha:  ^complex128, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	B:      [^]complex128, 
    	ldb:    i64, 
    	beta:   ^complex128, 
    	C:      [^]complex128, 
    	ldc:    i64, 
    ) ---

    zgemm_batch ¶

    zgemm_batch :: proc "c" (
    	Order:        CBLAS_ORDER, 
    	TransA_array: [^]CBLAS_TRANSPOSE, 
    	TransB_array: [^]CBLAS_TRANSPOSE, 
    	M_array:      [^]i64, 
    	N_array:      [^]i64, 
    	K_array:      [^]i64, 
    	alpha_array:  [^]complex128, 
    	A_array:      [^][^]complex128, 
    	lda_array:    [^]i64, 
    	B_array:      [^][^]complex128, 
    	ldb_array:    [^]i64, 
    	beta_array:   [^]complex128, 
    	C_array:      [^][^]complex128, 
    	ldc_array:    [^]i64, 
    	group_count:  i64, 
    	group_size:   [^]i64, 
    ) ---

    zgemmt ¶

    zgemmt :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	TransB: CBLAS_TRANSPOSE, 
    	M:      i64, 
    	K:      i64, 
    	alpha:  ^complex128, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	B:      [^]complex128, 
    	ldb:    i64, 
    	beta:   ^complex128, 
    	C:      [^]complex128, 
    	ldc:    i64, 
    ) ---

    zgemv ¶

    zgemv :: proc "c" (
    	order: CBLAS_ORDER, 
    	trans: CBLAS_TRANSPOSE, 
    	m:     i64, 
    	n:     i64, 
    	alpha: ^complex128, 
    	a:     [^]complex128, 
    	lda:   i64, 
    	x:     [^]complex128, 
    	incx:  i64, 
    	beta:  ^complex128, 
    	y:     [^]complex128, 
    	incy:  i64, 
    ) ---

    zgerc ¶

    zgerc :: proc "c" (
    	order: CBLAS_ORDER, 
    	M:     i64, 
    	N:     i64, 
    	alpha: ^complex128, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	Y:     [^]complex128, 
    	incY:  i64, 
    	A:     [^]complex128, 
    	lda:   i64, 
    ) ---

    zgeru ¶

    zgeru :: proc "c" (
    	order: CBLAS_ORDER, 
    	M:     i64, 
    	N:     i64, 
    	alpha: ^complex128, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	Y:     [^]complex128, 
    	incY:  i64, 
    	A:     [^]complex128, 
    	lda:   i64, 
    ) ---

    zhbmv ¶

    zhbmv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	K:     i64, 
    	alpha: ^complex128, 
    	A:     [^]complex128, 
    	lda:   i64, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	beta:  ^complex128, 
    	Y:     [^]complex128, 
    	incY:  i64, 
    ) ---

    zhemm ¶

    zhemm :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Side:  CBLAS_SIDE, 
    	Uplo:  CBLAS_UPLO, 
    	M:     i64, 
    	N:     i64, 
    	alpha: ^complex128, 
    	A:     [^]complex128, 
    	lda:   i64, 
    	B:     [^]complex128, 
    	ldb:   i64, 
    	beta:  ^complex128, 
    	C:     [^]complex128, 
    	ldc:   i64, 
    ) ---

    zhemv ¶

    zhemv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: ^complex128, 
    	A:     [^]complex128, 
    	lda:   i64, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	beta:  ^complex128, 
    	Y:     [^]complex128, 
    	incY:  i64, 
    ) ---

    zher ¶

    zher :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f64, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	A:     [^]complex128, 
    	lda:   i64, 
    ) ---

    zher2 ¶

    zher2 :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: ^complex128, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	Y:     [^]complex128, 
    	incY:  i64, 
    	A:     [^]complex128, 
    	lda:   i64, 
    ) ---

    zher2k ¶

    zher2k :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: ^complex128, 
    	A:     [^]complex128, 
    	lda:   i64, 
    	B:     [^]complex128, 
    	ldb:   i64, 
    	beta:  f64, 
    	C:     [^]complex128, 
    	ldc:   i64, 
    ) ---

    zherk ¶

    zherk :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: f64, 
    	A:     [^]complex128, 
    	lda:   i64, 
    	beta:  f64, 
    	C:     [^]complex128, 
    	ldc:   i64, 
    ) ---

    zhpmv ¶

    zhpmv :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: ^complex128, 
    	Ap:    [^]complex128, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	beta:  ^complex128, 
    	Y:     [^]complex128, 
    	incY:  i64, 
    ) ---

    zhpr ¶

    zhpr :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: f64, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	A:     [^]complex128, 
    ) ---

    zhpr2 ¶

    zhpr2 :: proc "c" (
    	order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	N:     i64, 
    	alpha: ^complex128, 
    	X:     [^]complex128, 
    	incX:  i64, 
    	Y:     [^]complex128, 
    	incY:  i64, 
    	Ap:    [^]complex128, 
    ) ---

    zimatcopy ¶

    zimatcopy :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	CTRANS: CBLAS_TRANSPOSE, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: ^complex128, 
    	a:      [^]complex128, 
    	clda:   i64, 
    	cldb:   i64, 
    ) ---

    zomatcopy ¶

    zomatcopy :: proc "c" (
    	CORDER: CBLAS_ORDER, 
    	CTRANS: CBLAS_TRANSPOSE, 
    	crows:  i64, 
    	ccols:  i64, 
    	calpha: ^complex128, 
    	a:      [^]complex128, 
    	clda:   i64, 
    	b:      [^]complex128, 
    	cldb:   i64, 
    ) ---

    zrotg ¶

    zrotg :: proc "c" (a: ^complex128, b: ^complex128, _c: ^f64, s: ^complex128) ---

    zscal ¶

    zscal :: proc "c" (N: i64, alpha: ^complex128, X: [^]complex128, incX: i64) ---

    zswap ¶

    zswap :: proc "c" (n: i64, x: [^]complex128, incx: i64, y: [^]complex128, incy: i64) ---

    zsymm ¶

    zsymm :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Side:  CBLAS_SIDE, 
    	Uplo:  CBLAS_UPLO, 
    	M:     i64, 
    	N:     i64, 
    	alpha: ^complex128, 
    	A:     [^]complex128, 
    	lda:   i64, 
    	B:     [^]complex128, 
    	ldb:   i64, 
    	beta:  ^complex128, 
    	C:     [^]complex128, 
    	ldc:   i64, 
    ) ---

    zsyr2k ¶

    zsyr2k :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: ^complex128, 
    	A:     [^]complex128, 
    	lda:   i64, 
    	B:     [^]complex128, 
    	ldb:   i64, 
    	beta:  ^complex128, 
    	C:     [^]complex128, 
    	ldc:   i64, 
    ) ---

    zsyrk ¶

    zsyrk :: proc "c" (
    	Order: CBLAS_ORDER, 
    	Uplo:  CBLAS_UPLO, 
    	Trans: CBLAS_TRANSPOSE, 
    	N:     i64, 
    	K:     i64, 
    	alpha: ^complex128, 
    	A:     [^]complex128, 
    	lda:   i64, 
    	beta:  ^complex128, 
    	C:     [^]complex128, 
    	ldc:   i64, 
    ) ---

    ztbmv ¶

    ztbmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	K:      i64, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	X:      [^]complex128, 
    	incX:   i64, 
    ) ---

    ztbsv ¶

    ztbsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	K:      i64, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	X:      [^]complex128, 
    	incX:   i64, 
    ) ---

    ztpmv ¶

    ztpmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	Ap:     [^]complex128, 
    	X:      [^]complex128, 
    	incX:   i64, 
    ) ---

    ztpsv ¶

    ztpsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	Ap:     [^]complex128, 
    	X:      [^]complex128, 
    	incX:   i64, 
    ) ---

    ztrmm ¶

    ztrmm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Side:   CBLAS_SIDE, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	M:      i64, 
    	N:      i64, 
    	alpha:  ^complex128, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	B:      [^]complex128, 
    	ldb:    i64, 
    ) ---

    ztrmv ¶

    ztrmv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	X:      [^]complex128, 
    	incX:   i64, 
    ) ---

    ztrsm ¶

    ztrsm :: proc "c" (
    	Order:  CBLAS_ORDER, 
    	Side:   CBLAS_SIDE, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	M:      i64, 
    	N:      i64, 
    	alpha:  ^complex128, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	B:      [^]complex128, 
    	ldb:    i64, 
    ) ---

    ztrsv ¶

    ztrsv :: proc "c" (
    	order:  CBLAS_ORDER, 
    	Uplo:   CBLAS_UPLO, 
    	TransA: CBLAS_TRANSPOSE, 
    	Diag:   CBLAS_DIAG, 
    	N:      i64, 
    	A:      [^]complex128, 
    	lda:    i64, 
    	X:      [^]complex128, 
    	incX:   i64, 
    ) ---

    Procedure Groups

    This section is empty.

    Source Files

    Generation Information

    Generated with odin version dev-2025-11 (vendor "odin") Linux_amd64 @ 2025-11-15 02:28:15.803652413 +0000 UTC