You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

KERNEL 7.3 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508
  1. ifndef SAMAXKERNEL
  2. SAMAXKERNEL = amax_sse.S
  3. endif
  4. ifndef DAMAXKERNEL
  5. DAMAXKERNEL = amax_sse2.S
  6. endif
  7. ifndef QAMAXKERNEL
  8. QAMAXKERNEL = amax.S
  9. endif
  10. ifndef CAMAXKERNEL
  11. CAMAXKERNEL = zamax_sse.S
  12. endif
  13. ifndef ZAMAXKERNEL
  14. ZAMAXKERNEL = zamax_sse2.S
  15. endif
  16. ifndef XAMAXKERNEL
  17. XAMAXKERNEL = zamax.S
  18. endif
  19. ifndef SASUMKERNEL
  20. SASUMKERNEL = asum_sse.S
  21. endif
  22. ifndef DASUMKERNEL
  23. DASUMKERNEL = asum_sse2.S
  24. endif
  25. ifndef CASUMKERNEL
  26. CASUMKERNEL = zasum_sse.S
  27. endif
  28. ifndef ZASUMKERNEL
  29. ZASUMKERNEL = zasum_sse2.S
  30. endif
  31. ifndef QASUMKERNEL
  32. QASUMKERNEL = asum.S
  33. endif
  34. ifndef XASUMKERNEL
  35. XASUMKERNEL = zasum.S
  36. endif
  37. ifndef SAMINKERNEL
  38. SAMINKERNEL = amax_sse.S
  39. endif
  40. ifndef DAMINKERNEL
  41. DAMINKERNEL = amax_sse2.S
  42. endif
  43. ifndef QAMINKERNEL
  44. QAMINKERNEL = amax.S
  45. endif
  46. ifndef CAMINKERNEL
  47. CAMINKERNEL = zamax_sse.S
  48. endif
  49. ifndef ZAMINKERNEL
  50. ZAMINKERNEL = zamax_sse2.S
  51. endif
  52. ifndef XAMINKERNEL
  53. XAMINKERNEL = zamax.S
  54. endif
  55. ifndef SAXPYKERNEL
  56. SAXPYKERNEL = axpy_sse.S
  57. endif
  58. ifndef DAXPYKERNEL
  59. DAXPYKERNEL = axpy_sse2.S
  60. endif
  61. ifndef CAXPYKERNEL
  62. CAXPYKERNEL = zaxpy_sse.S
  63. endif
  64. ifndef ZAXPYKERNEL
  65. ZAXPYKERNEL = zaxpy_sse2.S
  66. endif
  67. ifndef QAXPYKERNEL
  68. QAXPYKERNEL = axpy.S
  69. endif
  70. ifndef XAXPYKERNEL
  71. XAXPYKERNEL = zaxpy.S
  72. endif
  73. ifndef SCOPYKERNEL
  74. SCOPYKERNEL = copy_sse.S
  75. endif
  76. ifndef DCOPYKERNEL
  77. DCOPYKERNEL = copy_sse2.S
  78. endif
  79. ifndef CCOPYKERNEL
  80. CCOPYKERNEL = zcopy_sse.S
  81. endif
  82. ifndef ZCOPYKERNEL
  83. ZCOPYKERNEL = zcopy_sse2.S
  84. endif
  85. ifndef QCOPYKERNEL
  86. QCOPYKERNEL = copy.S
  87. endif
  88. ifndef XCOPYKERNEL
  89. XCOPYKERNEL = zcopy.S
  90. endif
  91. ifndef SDOTKERNEL
  92. SDOTKERNEL = ../generic/dot.c
  93. endif
  94. ifndef DSDOTKERNEL
  95. DSDOTKERNEL = ../generic/dot.c
  96. endif
  97. ifndef DDOTKERNEL
  98. DDOTKERNEL = dot_sse2.S
  99. endif
  100. ifndef CDOTKERNEL
  101. CDOTKERNEL = zdot_sse.S
  102. endif
  103. ifndef ZDOTKERNEL
  104. ZDOTKERNEL = zdot_sse2.S
  105. endif
  106. ifndef QDOTKERNEL
  107. QDOTKERNEL = dot.S
  108. endif
  109. ifndef XDOTKERNEL
  110. XDOTKERNEL = zdot.S
  111. endif
  112. ifndef SBDOTKERNEL
  113. SBDOTKERNEL = sbdot.c
  114. endif
  115. ifndef TOBF16KERNEL
  116. TOBF16KERNEL = tobf16.c
  117. endif
  118. ifndef BF16TOKERNEL
  119. BF16TOKERNEL = bf16to.c
  120. endif
  121. ifndef ISAMAXKERNEL
  122. ISAMAXKERNEL = iamax_sse.S
  123. endif
  124. ifndef IDAMAXKERNEL
  125. IDAMAXKERNEL = iamax_sse2.S
  126. endif
  127. ifndef IQAMAXKERNEL
  128. IQAMAXKERNEL = iamax.S
  129. endif
  130. ifndef ICAMAXKERNEL
  131. ICAMAXKERNEL = izamax_sse.S
  132. endif
  133. ifndef IZAMAXKERNEL
  134. IZAMAXKERNEL = izamax_sse2.S
  135. endif
  136. ifndef IXAMAXKERNEL
  137. IXAMAXKERNEL = izamax.S
  138. endif
  139. ifndef ISAMINKERNEL
  140. ISAMINKERNEL = iamax_sse.S
  141. endif
  142. ifndef IDAMINKERNEL
  143. IDAMINKERNEL = iamax_sse2.S
  144. endif
  145. ifndef IQAMINKERNEL
  146. IQAMINKERNEL = iamax.S
  147. endif
  148. ifndef ICAMINKERNEL
  149. ICAMINKERNEL = izamax_sse.S
  150. endif
  151. ifndef IZAMINKERNEL
  152. IZAMINKERNEL = izamax_sse2.S
  153. endif
  154. ifndef IXAMINKERNEL
  155. IXAMINKERNEL = izamax.S
  156. endif
  157. ifndef ISMAXKERNEL
  158. ISMAXKERNEL = iamax_sse.S
  159. endif
  160. ifndef IDMAXKERNEL
  161. IDMAXKERNEL = iamax_sse2.S
  162. endif
  163. ifndef IQMAXKERNEL
  164. IQMAXKERNEL = iamax.S
  165. endif
  166. ifndef ISMINKERNEL
  167. ISMINKERNEL = iamax_sse.S
  168. endif
  169. ifndef IDMINKERNEL
  170. IDMINKERNEL = iamax_sse2.S
  171. endif
  172. ifndef IQMINKERNEL
  173. IQMINKERNEL = iamax.S
  174. endif
  175. ifndef SMAXKERNEL
  176. SMAXKERNEL = amax_sse.S
  177. endif
  178. ifndef DMAXKERNEL
  179. DMAXKERNEL = amax_sse2.S
  180. endif
  181. ifndef QMAXKERNEL
  182. QMAXKERNEL = amax.S
  183. endif
  184. ifndef SMINKERNEL
  185. SMINKERNEL = amax_sse.S
  186. endif
  187. ifndef DMINKERNEL
  188. DMINKERNEL = amax_sse2.S
  189. endif
  190. ifndef QMINKERNEL
  191. QMINKERNEL = amax.S
  192. endif
  193. ifndef SNRM2KERNEL
  194. SNRM2KERNEL = nrm2_sse.S
  195. endif
  196. ifndef DNRM2KERNEL
  197. DNRM2KERNEL = nrm2.S
  198. endif
  199. ifndef QNRM2KERNEL
  200. QNRM2KERNEL = nrm2.S
  201. endif
  202. ifndef CNRM2KERNEL
  203. CNRM2KERNEL = znrm2_sse.S
  204. endif
  205. ifndef ZNRM2KERNEL
  206. ZNRM2KERNEL = znrm2.S
  207. endif
  208. ifndef XNRM2KERNEL
  209. XNRM2KERNEL = znrm2.S
  210. endif
  211. ifndef SROTKERNEL
  212. SROTKERNEL = rot_sse.S
  213. endif
  214. ifndef DROTKERNEL
  215. DROTKERNEL = rot_sse2.S
  216. endif
  217. ifndef QROTKERNEL
  218. QROTKERNEL = rot.S
  219. endif
  220. ifndef SROTMKERNEL
  221. SROTMKERNEL = ../generic/rotm.c
  222. endif
  223. ifndef DROTMKERNEL
  224. DROTMKERNEL = ../generic/rotm.c
  225. endif
  226. ifndef QROTMKERNEL
  227. QROTMKERNEL = ../generic/rotm.c
  228. endif
  229. ifndef CROTKERNEL
  230. CROTKERNEL = zrot_sse.S
  231. endif
  232. ifndef ZROTKERNEL
  233. ZROTKERNEL = zrot_sse2.S
  234. endif
  235. ifndef XROTKERNEL
  236. XROTKERNEL = zrot.S
  237. endif
  238. ifndef SSCALKERNEL
  239. SSCALKERNEL = scal_sse.S
  240. endif
  241. ifndef DSCALKERNEL
  242. DSCALKERNEL = scal_sse2.S
  243. endif
  244. ifndef CSCALKERNEL
  245. CSCALKERNEL = zscal_sse.S
  246. endif
  247. ifndef ZSCALKERNEL
  248. ZSCALKERNEL = zscal_sse2.S
  249. endif
  250. ifndef ASCALKERNEL
  251. QSCALKERNEL = scal.S
  252. endif
  253. ifndef XSCALKERNEL
  254. XSCALKERNEL = zscal.S
  255. endif
  256. ifndef SSWAPKERNEL
  257. SSWAPKERNEL = swap_sse.S
  258. endif
  259. ifndef DSWAPKERNEL
  260. DSWAPKERNEL = swap_sse2.S
  261. endif
  262. ifndef CSWAPKERNEL
  263. CSWAPKERNEL = zswap_sse.S
  264. endif
  265. ifndef ZSWAPKERNEL
  266. ZSWAPKERNEL = zswap_sse2.S
  267. endif
  268. ifndef QSWAPKERNEL
  269. QSWAPKERNEL = swap.S
  270. endif
  271. ifndef XSWAPKERNEL
  272. XSWAPKERNEL = zswap.S
  273. endif
  274. ifndef SSYMV_U_KERNEL
  275. SSYMV_U_KERNEL = symv_U_sse.S
  276. endif
  277. ifndef SSYMV_L_KERNEL
  278. SSYMV_L_KERNEL = symv_L_sse.S
  279. endif
  280. ifndef DSYMV_U_KERNEL
  281. DSYMV_U_KERNEL = symv_U_sse2.S
  282. endif
  283. ifndef DSYMV_L_KERNEL
  284. DSYMV_L_KERNEL = symv_L_sse2.S
  285. endif
  286. ifndef ZSYMV_U_KERNEL
  287. ZSYMV_U_KERNEL = zsymv_U_sse2.S
  288. endif
  289. ifndef ZSYMV_L_KERNEL
  290. ZSYMV_L_KERNEL = zsymv_L_sse2.S
  291. endif
  292. ifndef ZHEMV_U_KERNEL
  293. ZHEMV_U_KERNEL = zsymv_U_sse2.S
  294. endif
  295. ifndef ZHEMV_L_KERNEL
  296. ZHEMV_L_KERNEL = zsymv_L_sse2.S
  297. endif
  298. GEMVDEP = ../l2param.h
  299. ifndef SBGEMVNKERNEL
  300. SBGEMVNKERNEL = sbgemv_n.c
  301. endif
  302. ifndef SBGEMVTKERNEL
  303. SBGEMVTKERNEL = sbgemv_t.c
  304. endif
  305. ifndef SGEMVNKERNEL
  306. SGEMVNKERNEL = sgemv_n.c
  307. endif
  308. ifndef SGEMVTKERNEL
  309. SGEMVTKERNEL = sgemv_t.c
  310. endif
  311. ifndef DGEMVNKERNEL
  312. DGEMVNKERNEL = dgemv_n.S
  313. endif
  314. ifndef DGEMVTKERNEL
  315. DGEMVTKERNEL = dgemv_t_4.c
  316. endif
  317. ifndef CGEMVNKERNEL
  318. CGEMVNKERNEL = cgemv_n_4.c
  319. endif
  320. ifndef CGEMVTKERNEL
  321. CGEMVTKERNEL = cgemv_t_4.c
  322. endif
  323. ifndef ZGEMVNKERNEL
  324. ZGEMVNKERNEL = zgemv_n_4.c
  325. endif
  326. ifndef ZGEMVTKERNEL
  327. ZGEMVTKERNEL = zgemv_t_4.c
  328. endif
  329. ifndef QGEMVNKERNEL
  330. QGEMVNKERNEL = qgemv_n.S
  331. endif
  332. ifndef QGEMVTKERNEL
  333. QGEMVTKERNEL = qgemv_t.S
  334. endif
  335. ifndef XGEMVNKERNEL
  336. XGEMVNKERNEL = xgemv_n.S
  337. endif
  338. ifndef XGEMVTKERNEL
  339. XGEMVTKERNEL = xgemv_t.S
  340. endif
  341. QGEMMKERNEL = qgemm_kernel_2x2.S
  342. QGEMMINCOPY =
  343. QGEMMITCOPY =
  344. QGEMMONCOPY = ../generic/gemm_ncopy_2.c
  345. QGEMMOTCOPY = ../generic/gemm_tcopy_2.c
  346. QGEMMINCOPYOBJ =
  347. QGEMMITCOPYOBJ =
  348. QGEMMONCOPYOBJ = qgemm_oncopy$(TSUFFIX).$(SUFFIX)
  349. QGEMMOTCOPYOBJ = qgemm_otcopy$(TSUFFIX).$(SUFFIX)
  350. XGEMMKERNEL = xgemm_kernel_1x1.S
  351. XGEMMINCOPY =
  352. XGEMMITCOPY =
  353. XGEMMONCOPY = ../generic/zgemm_ncopy_1.c
  354. XGEMMOTCOPY = ../generic/zgemm_tcopy_1.c
  355. XGEMMINCOPYOBJ =
  356. XGEMMITCOPYOBJ =
  357. XGEMMONCOPYOBJ = xgemm_oncopy$(TSUFFIX).$(SUFFIX)
  358. XGEMMOTCOPYOBJ = xgemm_otcopy$(TSUFFIX).$(SUFFIX)
  359. ifndef SGEMM_BETA
  360. SGEMM_BETA = gemm_beta.S
  361. endif
  362. ifndef DGEMM_BETA
  363. DGEMM_BETA = gemm_beta.S
  364. endif
  365. ifndef CGEMM_BETA
  366. CGEMM_BETA = zgemm_beta.S
  367. endif
  368. ifndef ZGEMM_BETA
  369. ZGEMM_BETA = zgemm_beta.S
  370. endif
  371. QGEMM_BETA = ../generic/gemm_beta.c
  372. XGEMM_BETA = ../generic/zgemm_beta.c
  373. QTRSMKERNEL_LN = qtrsm_kernel_LN_2x2.S
  374. QTRSMKERNEL_LT = qtrsm_kernel_LT_2x2.S
  375. QTRSMKERNEL_RN = qtrsm_kernel_LT_2x2.S
  376. QTRSMKERNEL_RT = qtrsm_kernel_RT_2x2.S
  377. XTRSMKERNEL_LN = xtrsm_kernel_LT_1x1.S
  378. XTRSMKERNEL_LT = xtrsm_kernel_LT_1x1.S
  379. XTRSMKERNEL_RN = xtrsm_kernel_LT_1x1.S
  380. XTRSMKERNEL_RT = xtrsm_kernel_LT_1x1.S
  381. XGEMM3MKERNEL = xgemm3m_kernel_2x2.S
  382. SSUMKERNEL = ../arm/sum.c
  383. DSUMKERNEL = ../arm/sum.c
  384. CSUMKERNEL = zsum_sse.S
  385. ZSUMKERNEL = zsum_sse2.S
  386. SOMATCOPY_RT = omatcopy_rt.c
  387. SOMATCOPY_CT = omatcopy_ct.c