OpenBLAS/kernel/zarch
Marius Hillenbrand 2840432e49 s390x: improvise vector alignment hints for older compilers
Introduce inline assembly so that we can employ vector loads with
alignment hints on older compilers (pre gcc-9), since these are still
used in distributions such as RHEL 8 and Ubuntu 18.04 LTS.

Informing the hardware about alignment can speed up vector loads. For
that purpose, we can encode hints about 8-byte or 16-byte alignment of
the memory operand into the opcodes. gcc-9 and newer automatically emit
such hints, where applicable. Add a bit of inline assembly that achieves
the same for older compilers. Since an older binutils may not know about
the additional operand for the hints, we explicitly encode the opcode in
hex.

Signed-off-by: Marius Hillenbrand <mhillen@linux.ibm.com>
2020-05-14 15:36:03 +02:00
..
KERNEL Init IBM z system (s390x) porting. 2016-04-15 18:02:24 -04:00
KERNEL.Z13 add in runtime cpu detection for zarch (#2349) 2019-12-31 18:03:27 +01:00
KERNEL.Z14 s390x/Z14: Change register blocking for SGEMM to 16x4 2020-05-12 15:59:51 +02:00
KERNEL.ZARCH_GENERIC add in runtime cpu detection for zarch (#2349) 2019-12-31 18:03:27 +01:00
Makefile Init IBM z system (s390x) porting. 2016-04-15 18:02:24 -04:00
camax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
camin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
casum.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
caxpy.c [ZARCH] Fix caxpy 2019-02-13 12:54:35 +02:00
ccopy.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
cdot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
cgemv_n_4.c [ZARCH] Modify constraints 2019-02-13 21:06:25 +02:00
cgemv_t_4.c [ZARCH] Fix cgemv_t_4 2019-02-12 13:12:28 +02:00
ckernelMacrosV.S strmm and ctrmm 2017-03-13 01:23:16 +04:00
crot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
cscal.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
csum.c Change bad usage of "asum" to "sum" in ZARCH versions of ?sum 2019-11-21 13:49:13 +01:00
cswap.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
ctrmm4x4V.S strmm and ctrmm 2017-03-13 01:23:16 +04:00
damax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
damax_z13.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
damin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
damin_z13.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dasum.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
daxpy.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dcopy.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
ddot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dgemv_n_4.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dgemv_t_4.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dmax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dmax_z13.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dmin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dmin_z13.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
drot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dscal.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dsdot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
dsum.c Change bad usage of "asum" to "sum" in ZARCH versions of ?sum 2019-11-21 13:49:13 +01:00
dswap.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
gemm8x4V.S changed to conventional register save area 2017-03-01 03:13:21 +04:00
gemm_vec.c s390x: improvise vector alignment hints for older compilers 2020-05-14 15:36:03 +02:00
icamax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
icamin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
idamax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
idamin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
idmax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
idmin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
isamax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
isamin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
ismax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
ismin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
izamax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
izamin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
kernelMacros.S ztrmm kernel. 2017-02-26 06:14:12 +04:00
samax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
samin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
sasum.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
saxpy.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
scopy.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
sdot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
sgemv_n_4.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
sgemv_t_4.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
skernelMacros.S strmm and ctrmm 2017-03-13 01:23:16 +04:00
smax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
smin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
srot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
sscal.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
ssum.c Change bad usage of "asum" to "sum" in ZARCH versions of ?sum 2019-11-21 13:49:13 +01:00
sswap.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
strmm8x4V.S strmm and ctrmm 2017-03-13 01:23:16 +04:00
trmm8x4V.S changed to conventional register save area 2017-03-01 03:13:21 +04:00
zamax.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zamax_z13.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zamin.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zamin_z13.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zasum.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zaxpy.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zcopy.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zdot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zgemv_n_4.c [ZARCH] Modify constraints 2019-02-13 21:06:25 +02:00
zgemv_t_4.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zkernelMacrosV.S ztrmm kernel. 2017-02-26 06:14:12 +04:00
zrot.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zscal.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
zsum.c Change bad usage of "asum" to "sum" in ZARCH versions of ?sum 2019-11-21 13:49:13 +01:00
zswap.c [ZARCH] Fix constraints and source code formatting 2019-02-11 16:01:13 +02:00
ztrmm4x4V.S changed to conventional register save area 2017-03-01 03:13:21 +04:00