From 6a790fc1e4b45dac7669dd9e013b6c3f528e6a98 Mon Sep 17 00:00:00 2001 From: Ry Date: Tue, 7 Feb 2023 18:13:39 -0800 Subject: [PATCH] gcc: Use register r31 to call routines instead of r10 --- gcc/call.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gcc/call.h b/gcc/call.h index 9a2862d..1af0809 100644 --- a/gcc/call.h +++ b/gcc/call.h @@ -4,13 +4,13 @@ #define STR(x) STR2(x) #define _call2(c, jt_addr) \ - asm("li a0,ret_" #c "\n" \ + asm("li t6,ret_" #c "\n" \ "addi sp,sp,-4\n" \ - "sw a0,0(sp)\n" \ - "li a0,[" STR(jt_addr) "]\n" \ - "jr a0\n" \ + "sw t6,0(sp)\n" \ + "li t6,[" STR(jt_addr) "]\n" \ + "jr t6\n" \ "ret_" #c ":" \ - ::: "a0" \ + ::: "t6" \ ); #define _call(c, jt_addr) _call2(c, jt_addr) #define call(jt_addr) _call(__COUNTER__, jt_addr)