Merge pull request #3633 from martin-frbg/perl_fallback
[platform/upstream/openblas.git] / common_sb.h
1 #ifndef COMMON_SB_H
2 #define COMMON_SB_H
3
4 #ifndef DYNAMIC_ARCH
5
6 #define SBDOT_K             sbdot_k
7 #define SBSTOBF16_K         sbstobf16_k
8 #define SBDTOBF16_K         sbdtobf16_k
9 #define SBF16TOS_K          sbf16tos_k
10 #define DBF16TOD_K          dbf16tod_k
11 #define SBGEMV_N_K          sbgemv_n
12 #define SBGEMV_T_K          sbgemv_t
13
14 #define SBGEMM_ONCOPY           sbgemm_oncopy
15 #define SBGEMM_OTCOPY           sbgemm_otcopy
16
17 #if SBGEMM_DEFAULT_UNROLL_M == SBGEMM_DEFAULT_UNROLL_N
18 #define SBGEMM_INCOPY           sbgemm_oncopy
19 #define SBGEMM_ITCOPY           sbgemm_otcopy
20 #else
21 #define SBGEMM_INCOPY           sbgemm_incopy
22 #define SBGEMM_ITCOPY           sbgemm_itcopy
23 #endif
24 #define SBGEMM_BETA             sbgemm_beta
25 #define SBGEMM_KERNEL            sbgemm_kernel
26
27 #define SBGEMM_SMALL_MATRIX_PERMIT      sbgemm_small_matrix_permit
28 #else
29
30 #define SBDOT_K             gotoblas -> sbdot_k
31 #define SBSTOBF16_K         gotoblas -> sbstobf16_k
32 #define SBDTOBF16_K         gotoblas -> sbdtobf16_k
33 #define SBF16TOS_K          gotoblas -> sbf16tos_k
34 #define DBF16TOD_K          gotoblas -> dbf16tod_k
35 #define SBGEMV_N_K          gotoblas -> sbgemv_n
36 #define SBGEMV_T_K          gotoblas -> sbgemv_t
37
38 #define SBGEMM_ONCOPY           gotoblas -> sbgemm_oncopy
39 #define SBGEMM_OTCOPY           gotoblas -> sbgemm_otcopy
40 #define SBGEMM_INCOPY           gotoblas -> sbgemm_incopy
41 #define SBGEMM_ITCOPY           gotoblas -> sbgemm_itcopy
42 #define SBGEMM_BETA             gotoblas -> sbgemm_beta
43 #define SBGEMM_KERNEL           gotoblas -> sbgemm_kernel
44
45 #define SBGEMM_SMALL_MATRIX_PERMIT      gotoblas -> sbgemm_small_matrix_permit
46 #endif
47
48 #define SBGEMM_SMALL_KERNEL_NN          FUNC_OFFSET(sbgemm_small_kernel_nn)
49 #define SBGEMM_SMALL_KERNEL_NT          FUNC_OFFSET(sbgemm_small_kernel_nt)
50 #define SBGEMM_SMALL_KERNEL_TN          FUNC_OFFSET(sbgemm_small_kernel_tn)
51 #define SBGEMM_SMALL_KERNEL_TT          FUNC_OFFSET(sbgemm_small_kernel_tt)
52
53 #define SBGEMM_SMALL_KERNEL_B0_NN       FUNC_OFFSET(sbgemm_small_kernel_b0_nn)
54 #define SBGEMM_SMALL_KERNEL_B0_NT       FUNC_OFFSET(sbgemm_small_kernel_b0_nt)
55 #define SBGEMM_SMALL_KERNEL_B0_TN       FUNC_OFFSET(sbgemm_small_kernel_b0_tn)
56 #define SBGEMM_SMALL_KERNEL_B0_TT       FUNC_OFFSET(sbgemm_small_kernel_b0_tt)
57
58 #define SBGEMM_NN               sbgemm_nn
59 #define SBGEMM_CN               sbgemm_tn
60 #define SBGEMM_TN               sbgemm_tn
61 #define SBGEMM_NC               sbgemm_nt
62 #define SBGEMM_NT               sbgemm_nt
63 #define SBGEMM_CC               sbgemm_tt
64 #define SBGEMM_CT               sbgemm_tt
65 #define SBGEMM_TC               sbgemm_tt
66 #define SBGEMM_TT               sbgemm_tt
67 #define SBGEMM_NR               sbgemm_nn
68 #define SBGEMM_TR               sbgemm_tn
69 #define SBGEMM_CR               sbgemm_tn
70 #define SBGEMM_RN               sbgemm_nn
71 #define SBGEMM_RT               sbgemm_nt
72 #define SBGEMM_RC               sbgemm_nt
73 #define SBGEMM_RR               sbgemm_nn
74
75 #define SBGEMM_THREAD_NN                sbgemm_thread_nn
76 #define SBGEMM_THREAD_CN                sbgemm_thread_tn
77 #define SBGEMM_THREAD_TN                sbgemm_thread_tn
78 #define SBGEMM_THREAD_NC                sbgemm_thread_nt
79 #define SBGEMM_THREAD_NT                sbgemm_thread_nt
80 #define SBGEMM_THREAD_CC                sbgemm_thread_tt
81 #define SBGEMM_THREAD_CT                sbgemm_thread_tt
82 #define SBGEMM_THREAD_TC                sbgemm_thread_tt
83 #define SBGEMM_THREAD_TT                sbgemm_thread_tt
84 #define SBGEMM_THREAD_NR                sbgemm_thread_nn
85 #define SBGEMM_THREAD_TR                sbgemm_thread_tn
86 #define SBGEMM_THREAD_CR                sbgemm_thread_tn
87 #define SBGEMM_THREAD_RN                sbgemm_thread_nn
88 #define SBGEMM_THREAD_RT                sbgemm_thread_nt
89 #define SBGEMM_THREAD_RC                sbgemm_thread_nt
90 #define SBGEMM_THREAD_RR                sbgemm_thread_nn
91
92 #endif
93