Skip to content

Commit 7961404

Browse files
committed
Merge pull request #411 from wernsaar/develop
Lapack-test on x86 32bit now runs without errors.
2 parents 2e2473f + cedc1f4 commit 7961404

File tree

3 files changed

+58
-297
lines changed

3 files changed

+58
-297
lines changed

interface/Makefile

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -356,54 +356,55 @@ ZBLASOBJS = $(ZBLAS1OBJS) $(ZBLAS2OBJS) $(ZBLAS3OBJS)
356356
XBLASOBJS = $(XBLAS1OBJS) $(XBLAS2OBJS) $(XBLAS3OBJS)
357357

358358
#SLAPACKOBJS = \
359-
# sgetf2.$(SUFFIX) sgetrf.$(SUFFIX) slauu2.$(SUFFIX) slauum.$(SUFFIX) \
360-
# spotf2.$(SUFFIX) spotrf.$(SUFFIX) strti2.$(SUFFIX) strtri.$(SUFFIX) \
361-
# slaswp.$(SUFFIX) sgetrs.$(SUFFIX) sgesv.$(SUFFIX) spotri.$(SUFFIX) \
359+
# sgetrf.$(SUFFIX) sgetrs.$(SUFFIX) spotrf.$(SUFFIX) sgetf2.$(SUFFIX) \
360+
# spotf2.$(SUFFIX) slaswp.$(SUFFIX) sgesv.$(SUFFIX) slauu2.$(SUFFIX) \
361+
# slauum.$(SUFFIX) strti2.$(SUFFIX) strtri.$(SUFFIX) spotri.$(SUFFIX)
362362

363363
SLAPACKOBJS = \
364364
sgetrf.$(SUFFIX) sgetrs.$(SUFFIX) spotrf.$(SUFFIX) sgetf2.$(SUFFIX) \
365365
spotf2.$(SUFFIX) slaswp.$(SUFFIX) sgesv.$(SUFFIX) slauu2.$(SUFFIX) \
366-
slauum.$(SUFFIX) strti2.$(SUFFIX) strtri.$(SUFFIX) spotri.$(SUFFIX)
366+
slauum.$(SUFFIX) strti2.$(SUFFIX) strtri.$(SUFFIX)
367367

368368

369369
#DLAPACKOBJS = \
370-
# dgetf2.$(SUFFIX) dgetrf.$(SUFFIX) dlauu2.$(SUFFIX) dlauum.$(SUFFIX) \
371-
# dpotf2.$(SUFFIX) dpotrf.$(SUFFIX) dtrti2.$(SUFFIX) dtrtri.$(SUFFIX) \
372-
# dlaswp.$(SUFFIX) dgetrs.$(SUFFIX) dgesv.$(SUFFIX) dpotri.$(SUFFIX) \
370+
# dgetrf.$(SUFFIX) dgetrs.$(SUFFIX) dpotrf.$(SUFFIX) dgetf2.$(SUFFIX) \
371+
# dpotf2.$(SUFFIX) dlaswp.$(SUFFIX) dgesv.$(SUFFIX) dlauu2.$(SUFFIX) \
372+
# dlauum.$(SUFFIX) dtrti2.$(SUFFIX) dtrtri.$(SUFFIX) dpotri.$(SUFFIX)
373373

374374
DLAPACKOBJS = \
375375
dgetrf.$(SUFFIX) dgetrs.$(SUFFIX) dpotrf.$(SUFFIX) dgetf2.$(SUFFIX) \
376376
dpotf2.$(SUFFIX) dlaswp.$(SUFFIX) dgesv.$(SUFFIX) dlauu2.$(SUFFIX) \
377-
dlauum.$(SUFFIX) dtrti2.$(SUFFIX) dtrtri.$(SUFFIX) dpotri.$(SUFFIX)
377+
dlauum.$(SUFFIX) dtrti2.$(SUFFIX) dtrtri.$(SUFFIX)
378378

379379

380380
QLAPACKOBJS = \
381381
qgetf2.$(SUFFIX) qgetrf.$(SUFFIX) qlauu2.$(SUFFIX) qlauum.$(SUFFIX) \
382382
qpotf2.$(SUFFIX) qpotrf.$(SUFFIX) qtrti2.$(SUFFIX) qtrtri.$(SUFFIX) \
383383
qlaswp.$(SUFFIX) qgetrs.$(SUFFIX) qgesv.$(SUFFIX) qpotri.$(SUFFIX) \
384384

385+
385386
#CLAPACKOBJS = \
386-
# cgetf2.$(SUFFIX) cgetrf.$(SUFFIX) clauu2.$(SUFFIX) clauum.$(SUFFIX) \
387-
# cpotf2.$(SUFFIX) cpotrf.$(SUFFIX) ctrti2.$(SUFFIX) ctrtri.$(SUFFIX) \
388-
# claswp.$(SUFFIX) cgetrs.$(SUFFIX) cgesv.$(SUFFIX) cpotri.$(SUFFIX) \
387+
# cgetrf.$(SUFFIX) cgetrs.$(SUFFIX) cpotrf.$(SUFFIX) cgetf2.$(SUFFIX) \
388+
# cpotf2.$(SUFFIX) claswp.$(SUFFIX) cgesv.$(SUFFIX) clauu2.$(SUFFIX) \
389+
# clauum.$(SUFFIX) ctrti2.$(SUFFIX) ctrtri.$(SUFFIX) cpotri.$(SUFFIX)
390+
389391

390392
CLAPACKOBJS = \
391393
cgetrf.$(SUFFIX) cgetrs.$(SUFFIX) cpotrf.$(SUFFIX) cgetf2.$(SUFFIX) \
392394
cpotf2.$(SUFFIX) claswp.$(SUFFIX) cgesv.$(SUFFIX) clauu2.$(SUFFIX) \
393-
clauum.$(SUFFIX) ctrti2.$(SUFFIX) ctrtri.$(SUFFIX) cpotri.$(SUFFIX)
395+
clauum.$(SUFFIX) ctrti2.$(SUFFIX) ctrtri.$(SUFFIX)
394396

395397

396398
#ZLAPACKOBJS = \
397-
# zgetf2.$(SUFFIX) zgetrf.$(SUFFIX) zlauu2.$(SUFFIX) zlauum.$(SUFFIX) \
398-
# zpotf2.$(SUFFIX) zpotrf.$(SUFFIX) ztrti2.$(SUFFIX) ztrtri.$(SUFFIX) \
399-
# zlaswp.$(SUFFIX) zgetrs.$(SUFFIX) zgesv.$(SUFFIX) zpotri.$(SUFFIX) \
399+
# zgetrf.$(SUFFIX) zgetrs.$(SUFFIX) zpotrf.$(SUFFIX) zgetf2.$(SUFFIX) \
400+
# zpotf2.$(SUFFIX) zlaswp.$(SUFFIX) zgesv.$(SUFFIX) zlauu2.$(SUFFIX) \
401+
# zlauum.$(SUFFIX) ztrti2.$(SUFFIX) ztrtri.$(SUFFIX) zpotri.$(SUFFIX)
402+
400403

401404
ZLAPACKOBJS = \
402405
zgetrf.$(SUFFIX) zgetrs.$(SUFFIX) zpotrf.$(SUFFIX) zgetf2.$(SUFFIX) \
403406
zpotf2.$(SUFFIX) zlaswp.$(SUFFIX) zgesv.$(SUFFIX) zlauu2.$(SUFFIX) \
404-
zlauum.$(SUFFIX) ztrti2.$(SUFFIX) ztrtri.$(SUFFIX) zpotri.$(SUFFIX)
405-
406-
407+
zlauum.$(SUFFIX) ztrti2.$(SUFFIX) ztrtri.$(SUFFIX)
407408

408409

409410
XLAPACKOBJS = \

kernel/x86/KERNEL

Lines changed: 35 additions & 275 deletions
Original file line numberDiff line numberDiff line change
@@ -1,263 +1,3 @@
1-
GEMVDEP = ../l2param.h
2-
3-
ifdef HAVE_SSE
4-
5-
ifndef SAMAXKERNEL
6-
SAMAXKERNEL = amax_sse.S
7-
endif
8-
9-
ifndef CAMAXKERNEL
10-
CAMAXKERNEL = zamax_sse.S
11-
endif
12-
13-
ifndef SAMINKERNEL
14-
SAMINKERNEL = amax_sse.S
15-
endif
16-
17-
ifndef CAMINKERNEL
18-
CAMINKERNEL = zamax_sse.S
19-
endif
20-
21-
ifndef ISAMAXKERNEL
22-
ISAMAXKERNEL = iamax_sse.S
23-
endif
24-
25-
ifndef ICAMAXKERNEL
26-
ICAMAXKERNEL = izamax_sse.S
27-
endif
28-
29-
ifndef ISAMINKERNEL
30-
ISAMINKERNEL = iamax_sse.S
31-
endif
32-
33-
ifndef ICAMINKERNEL
34-
ICAMINKERNEL = izamax_sse.S
35-
endif
36-
37-
ifndef ISMAXKERNEL
38-
ISMAXKERNEL = iamax_sse.S
39-
endif
40-
41-
ifndef ISMINKERNEL
42-
ISMINKERNEL = iamax_sse.S
43-
endif
44-
45-
ifndef SMAXKERNEL
46-
SMAXKERNEL = amax_sse.S
47-
endif
48-
49-
ifndef SMINKERNEL
50-
SMINKERNEL = amax_sse.S
51-
endif
52-
53-
ifndef SASUMKERNEL
54-
SASUMKERNEL = asum_sse.S
55-
endif
56-
57-
ifndef CASUMKERNEL
58-
CASUMKERNEL = zasum_sse.S
59-
endif
60-
61-
ifndef SDOTKERNEL
62-
SDOTKERNEL = ../arm/dot.c
63-
endif
64-
65-
ifndef CDOTKERNEL
66-
CDOTKERNEL = zdot_sse.S
67-
endif
68-
69-
ifndef SCOPYKERNEL
70-
SCOPYKERNEL = copy_sse.S
71-
endif
72-
73-
ifndef CCOPYKERNEL
74-
CCOPYKERNEL = zcopy_sse.S
75-
endif
76-
77-
ifndef SSACALKERNEL
78-
SSCALKERNEL = scal_sse.S
79-
endif
80-
81-
ifndef CSACALKERNEL
82-
CSCALKERNEL = zscal_sse.S
83-
endif
84-
85-
ifndef SAXPYKERNEL
86-
SAXPYKERNEL = axpy_sse.S
87-
endif
88-
89-
ifndef CAXPYKERNEL
90-
CAXPYKERNEL = zaxpy_sse.S
91-
endif
92-
93-
ifndef SROTKERNEL
94-
SROTKERNEL = rot_sse.S
95-
endif
96-
97-
ifndef CROTKERNEL
98-
CROTKERNEL = zrot_sse.S
99-
endif
100-
101-
ifndef SSWAPKERNEL
102-
SSWAPKERNEL = swap_sse.S
103-
endif
104-
105-
ifndef CSWAPKERNEL
106-
CSWAPKERNEL = zswap_sse.S
107-
endif
108-
109-
ifndef SGEMVNKERNEL
110-
SGEMVNKERNEL = ../arm/gemv_n.c
111-
endif
112-
113-
ifndef SGEMVTKERNEL
114-
SGEMVTKERNEL = ../arm/gemv_t.c
115-
endif
116-
117-
ifndef CGEMVNKERNEL
118-
CGEMVNKERNEL = zgemv_n_sse.S
119-
endif
120-
121-
ifndef CGEMVTKERNEL
122-
CGEMVTKERNEL = zgemv_t_sse.S
123-
endif
124-
125-
endif
126-
127-
128-
ifdef HAVE_SSE2
129-
130-
ifndef DAMAXKERNEL
131-
DAMAXKERNEL = amax_sse2.S
132-
endif
133-
134-
ifndef ZAMAXKERNEL
135-
ZAMAXKERNEL = zamax_sse2.S
136-
endif
137-
138-
ifndef DAMINKERNEL
139-
DAMINKERNEL = amax_sse2.S
140-
endif
141-
142-
ifndef ZAMINKERNEL
143-
ZAMINKERNEL = zamax_sse2.S
144-
endif
145-
146-
ifndef IDAMAXKERNEL
147-
IDAMAXKERNEL = iamax_sse2.S
148-
endif
149-
150-
ifndef IZAMAXKERNEL
151-
IZAMAXKERNEL = izamax_sse2.S
152-
endif
153-
154-
ifndef IDAMINKERNEL
155-
IDAMINKERNEL = iamax_sse2.S
156-
endif
157-
158-
ifndef IZAMINKERNEL
159-
IZAMINKERNEL = izamax_sse2.S
160-
endif
161-
162-
ifndef IDMAXKERNEL
163-
IDMAXKERNEL = iamax_sse2.S
164-
endif
165-
166-
ifndef IDMINKERNEL
167-
IDMINKERNEL = iamax_sse2.S
168-
endif
169-
170-
ifndef DMAXKERNEL
171-
DMAXKERNEL = amax_sse2.S
172-
endif
173-
174-
ifndef DMINKERNEL
175-
DMINKERNEL = amax_sse2.S
176-
endif
177-
178-
ifndef DDOTKERNEL
179-
DDOTKERNEL = dot_sse2.S
180-
endif
181-
182-
ifndef ZDOTKERNEL
183-
ZDOTKERNEL = zdot_sse2.S
184-
endif
185-
186-
ifndef DCOPYKERNEL
187-
# DCOPYKERNEL = copy_sse2.S
188-
endif
189-
190-
ifndef ZCOPYKERNEL
191-
ZCOPYKERNEL = zcopy_sse2.S
192-
endif
193-
194-
ifndef DSACALKERNEL
195-
DSCALKERNEL = scal_sse2.S
196-
endif
197-
198-
ifndef ZSACALKERNEL
199-
ZSCALKERNEL = zscal_sse2.S
200-
endif
201-
202-
ifndef DASUMKERNEL
203-
DASUMKERNEL = asum_sse2.S
204-
endif
205-
206-
ifndef ZASUMKERNEL
207-
ZASUMKERNEL = zasum_sse2.S
208-
endif
209-
210-
ifndef DAXPYKERNEL
211-
DAXPYKERNEL = axpy_sse2.S
212-
endif
213-
214-
ifndef ZAXPYKERNEL
215-
ZAXPYKERNEL = zaxpy_sse2.S
216-
endif
217-
218-
ifndef SNRM2KERNEL
219-
SNRM2KERNEL = nrm2_sse.S
220-
endif
221-
222-
ifndef CNRM2KERNEL
223-
CNRM2KERNEL = znrm2_sse.S
224-
endif
225-
226-
ifndef DROTKERNEL
227-
DROTKERNEL = rot_sse2.S
228-
endif
229-
230-
ifndef ZROTKERNEL
231-
ZROTKERNEL = zrot_sse2.S
232-
endif
233-
234-
ifndef DSWAPKERNEL
235-
DSWAPKERNEL = swap_sse2.S
236-
endif
237-
238-
ifndef ZSWAPKERNEL
239-
ZSWAPKERNEL = zswap_sse2.S
240-
endif
241-
242-
ifndef DGEMVNKERNEL
243-
DGEMVNKERNEL = gemv_n_sse2.S
244-
endif
245-
246-
ifndef DGEMVTKERNEL
247-
DGEMVTKERNEL = gemv_t_sse2.S
248-
endif
249-
250-
ifndef ZGEMVNKERNEL
251-
ZGEMVNKERNEL = zgemv_n_sse2.S
252-
endif
253-
254-
ifndef ZGEMVTKERNEL
255-
ZGEMVTKERNEL = zgemv_t_sse2.S
256-
endif
257-
258-
endif
259-
260-
2611
ifndef SAMINKERNEL
2622
SAMINKERNEL = amax.S
2633
endif
@@ -394,21 +134,41 @@ XGEMMITCOPYOBJ =
394134
XGEMMONCOPYOBJ = xgemm_oncopy$(TSUFFIX).$(SUFFIX)
395135
XGEMMOTCOPYOBJ = xgemm_otcopy$(TSUFFIX).$(SUFFIX)
396136

397-
SGEMM_BETA = gemm_beta.S
398-
DGEMM_BETA = gemm_beta.S
399-
QGEMM_BETA = ../generic/gemm_beta.c
400-
CGEMM_BETA = zgemm_beta.S
401-
ZGEMM_BETA = zgemm_beta.S
402-
XGEMM_BETA = ../generic/zgemm_beta.c
403-
404-
QTRSMKERNEL_LN = qtrsm_kernel_LN_2x2.S
405-
QTRSMKERNEL_LT = qtrsm_kernel_LT_2x2.S
406-
QTRSMKERNEL_RN = qtrsm_kernel_LT_2x2.S
407-
QTRSMKERNEL_RT = qtrsm_kernel_RT_2x2.S
137+
QTRSMKERNEL_LN = qtrsm_kernel_LN_2x2.S
138+
QTRSMKERNEL_LT = qtrsm_kernel_LT_2x2.S
139+
QTRSMKERNEL_RN = qtrsm_kernel_LT_2x2.S
140+
QTRSMKERNEL_RT = qtrsm_kernel_RT_2x2.S
408141

409-
XTRSMKERNEL_LN = xtrsm_kernel_LT_1x1.S
410-
XTRSMKERNEL_LT = xtrsm_kernel_LT_1x1.S
411-
XTRSMKERNEL_RN = xtrsm_kernel_LT_1x1.S
412-
XTRSMKERNEL_RT = xtrsm_kernel_LT_1x1.S
142+
XTRSMKERNEL_LN = xtrsm_kernel_LT_1x1.S
143+
XTRSMKERNEL_LT = xtrsm_kernel_LT_1x1.S
144+
XTRSMKERNEL_RN = xtrsm_kernel_LT_1x1.S
145+
XTRSMKERNEL_RT = xtrsm_kernel_LT_1x1.S
413146

414147
XGEMM3MKERNEL = xgemm3m_kernel_2x2.S
148+
149+
150+
# bug in zdot assembler kernel
151+
ifndef ZDOTKERNEL
152+
ZDOTKERNEL = ../arm/zdot.c
153+
endif
154+
155+
DSDOTKERNEL = ../arm/dot.c
156+
157+
# Bug in znrm2 assembler kernel
158+
ifndef ZNRM2KERNEL
159+
ZNRM2KERNEL = ../arm/znrm2.c
160+
endif
161+
162+
# Bug in zgemv_t assembler kernel
163+
ifndef ZGEMVTKERNEL
164+
ZGEMVTKERNEL = ../arm/zgemv_t.c
165+
endif
166+
167+
SGEMM_BETA = ../generic/gemm_beta.c
168+
DGEMM_BETA = ../generic/gemm_beta.c
169+
CGEMM_BETA = ../generic/zgemm_beta.c
170+
ZGEMM_BETA = ../generic/zgemm_beta.c
171+
172+
QGEMM_BETA = ../generic/gemm_beta.c
173+
XGEMM_BETA = ../generic/zgemm_beta.c
174+

0 commit comments

Comments
 (0)