From 7d4a2215799772a4d81a3d3e3b8d7faa515c68b1 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Fri, 17 Sep 2021 09:18:25 +0200 Subject: [PATCH 1/6] Remove unused TEMP2 and reshuffle to leave x18 unused (reserved on OSX) --- kernel/arm64/dgemm_tcopy_8.S | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/kernel/arm64/dgemm_tcopy_8.S b/kernel/arm64/dgemm_tcopy_8.S index 9ab51ff57..7e5bf6080 100644 --- a/kernel/arm64/dgemm_tcopy_8.S +++ b/kernel/arm64/dgemm_tcopy_8.S @@ -50,11 +50,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define B03 x16 #define B04 x17 -#define I x18 -#define J x19 +#define I x19 +#define J x20 -#define TEMP1 x20 -#define TEMP2 x21 +#define TEMP1 x21 #define A_PREFETCH 2560 #define B_PREFETCH 256 From 0a4ac4b5850b5dee9f285637f06a4594f2e10dc2 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Fri, 17 Sep 2021 09:19:51 +0200 Subject: [PATCH 2/6] Use x21 for I to leave x18 unused (reserved on OSX) --- kernel/arm64/sgemm_tcopy_16.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/arm64/sgemm_tcopy_16.S b/kernel/arm64/sgemm_tcopy_16.S index 46198b3a2..431f1ae2a 100644 --- a/kernel/arm64/sgemm_tcopy_16.S +++ b/kernel/arm64/sgemm_tcopy_16.S @@ -30,7 +30,7 @@ All rights reserved. #define B00 x22 -#define I x18 +#define I x21 #define J x19 #define TEMP1 x20 From 7d751774465637c25ef45d8c0f2a2361553e3df4 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Fri, 17 Sep 2021 09:24:11 +0200 Subject: [PATCH 3/6] Move temp to x21 to leave x18 unused (reserved on OSX) --- kernel/arm64/dtrmm_kernel_8x4.S | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/arm64/dtrmm_kernel_8x4.S b/kernel/arm64/dtrmm_kernel_8x4.S index 0ac5a5f24..3d953266c 100644 --- a/kernel/arm64/dtrmm_kernel_8x4.S +++ b/kernel/arm64/dtrmm_kernel_8x4.S @@ -49,9 +49,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define pCRow3 x15 #define pA x16 #define alpha x17 -#define temp x18 +//#define temp x18 #define tempOffset x19 #define tempK x20 +#define temp x21 #define alpha0 d10 #define alphaV0 v10.d[0] From 380940271b7647cc82000b4f34d681a3259d222f Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Fri, 17 Sep 2021 09:28:19 +0200 Subject: [PATCH 4/6] Move temp to x21 to leave x18 unused (reserved on OSX) --- kernel/arm64/strmm_kernel_16x4.S | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/arm64/strmm_kernel_16x4.S b/kernel/arm64/strmm_kernel_16x4.S index 985a0a9a6..a44326aeb 100644 --- a/kernel/arm64/strmm_kernel_16x4.S +++ b/kernel/arm64/strmm_kernel_16x4.S @@ -49,9 +49,10 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define pCRow3 x15 #define pA x16 #define alpha w17 -#define temp x18 +//#define temp x18 #define tempOffset x19 #define tempK x20 +#define temp x21 #define alpha0 s10 #define alphaV0 v10.s[0] From 590fbff06e818c3135a0b80cfae5a471da7f4e09 Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Fri, 17 Sep 2021 09:42:17 +0200 Subject: [PATCH 5/6] move alpha to x19/x20 to leave x18 unused for OSX --- kernel/arm64/zgemm_kernel_4x4.S | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/arm64/zgemm_kernel_4x4.S b/kernel/arm64/zgemm_kernel_4x4.S index f8e877f3c..a65c4f581 100644 --- a/kernel/arm64/zgemm_kernel_4x4.S +++ b/kernel/arm64/zgemm_kernel_4x4.S @@ -48,8 +48,8 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define pCRow2 x14 #define pCRow3 x15 #define pA x16 -#define alphaR x17 -#define alphaI x18 +#define alphaR x19 +#define alphaI x20 #define alpha0_R d10 #define alphaV0_R v10.d[0] From 90cc944625ce0405145bdde03af0bf4e19e3f1ce Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Fri, 17 Sep 2021 09:53:18 +0200 Subject: [PATCH 6/6] Move alphaI to x22 to leave x18 unused (reserved on OSX) --- kernel/arm64/ztrmm_kernel_4x4.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/arm64/ztrmm_kernel_4x4.S b/kernel/arm64/ztrmm_kernel_4x4.S index 462acfe2b..cd053b896 100644 --- a/kernel/arm64/ztrmm_kernel_4x4.S +++ b/kernel/arm64/ztrmm_kernel_4x4.S @@ -49,7 +49,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define pCRow3 x15 #define pA x16 #define alphaR x17 -#define alphaI x18 +#define alphaI x22 #define temp x19 #define tempOffset x20 #define tempK x21