From 06374cda42750edbb43a22bc5799ceb17f4afa3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ciro=20Santilli=20=E5=85=AD=E5=9B=9B=E4=BA=8B=E4=BB=B6=20?= =?UTF-8?q?=E6=B3=95=E8=BD=AE=E5=8A=9F?= Date: Sun, 25 Aug 2019 00:00:00 +0000 Subject: [PATCH] aarch64 sve: formatting and make .L symbols where possible --- userland/arch/aarch64/sve.S | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/userland/arch/aarch64/sve.S b/userland/arch/aarch64/sve.S index 52c77ab..44a1ec3 100644 --- a/userland/arch/aarch64/sve.S +++ b/userland/arch/aarch64/sve.S @@ -3,11 +3,12 @@ #include .data - x: .double 1.5, 2.5, 3.5, 4.5 - y: .double 5.0, 6.0, 7.0, 8.0 + .align 16 + x: .double 1.5, 2.5, 3.5, 4.5 + y: .double 5.0, 6.0, 7.0, 8.0 y_expect: .double 8.0, 11.0, 14.0, 17.0 - a: .double 2.0 - n: .word 4 + a: .double 2.0 + n: .word 4 LKMC_PROLOGUE adr x0, x @@ -22,11 +23,15 @@ LKMC_EPILOGUE * * Operation: * - * Y += a * X + * .... + * Y += a * X + Y + * .... * * C signature: * - * void daxpy(double *x, double *y, double *a, int *n) + * .... + * void daxpy(double *x, double *y, double a, int n) + * .... * * The name "daxpy" comes from LAPACK: * http://www.netlib.org/lapack/explore-html/de/da4/group__double__blas__level1_ga8f99d6a644d3396aa32db472e0cfc91c.html @@ -38,12 +43,12 @@ daxpy: mov x4, 0 whilelt p0.d, x4, x3 ld1rd z0.d, p0/z, [x2] -.loop: +.Lloop: ld1d z1.d, p0/z, [x0, x4, lsl 3] ld1d z2.d, p0/z, [x1, x4, lsl 3] fmla z2.d, p0/m, z1.d, z0.d st1d z2.d, p0, [x1, x4, lsl 3] incd x4 whilelt p0.d, x4, x3 - b.first .loop + b.first .Lloop ret