From 1c4270c05098dad0616044b278bda62d053ff718 Mon Sep 17 00:00:00 2001 From: Michael Rogenmoser Date: Fri, 17 Feb 2023 13:42:34 +0100 Subject: [PATCH] Fix TMR rapid entry assembly --- kernel/hmr_synch.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/kernel/hmr_synch.c b/kernel/hmr_synch.c index c865f91..b3ed242 100644 --- a/kernel/hmr_synch.c +++ b/kernel/hmr_synch.c @@ -267,15 +267,15 @@ void __attribute__((naked)) pos_hmr_synch() { // Set up ra as barrier id #if HMR_IN_INTERLEAVED // ra is barrier id - "li t1, " QU(NUM_TMR_GROUPS) " \n\t" - "remu t1, t0, t1 \n\t" - "addi ra, t1, 1 \n\t" + "li ra, " QU(NUM_TMR_GROUPS) " \n\t" + "remu ra, t0, ra \n\t" + "addi ra, ra, 1 \n\t" #else - "li t1, 3 \n\t" - "divu t1, t0, t1 \n\t" - "srli t2, t1, 1 \n\t" - "addi t1, t1, 1 \n\t" - "add ra, t1, t2 \n\t" + "li ra, 3 \n\t" + "divu ra, t0, ra \n\t" + "srli t2, ra, 1 \n\t" + "addi ra, ra, 1 \n\t" + "add ra, ra, t2 \n\t" #endif // ra is barrier id // if not main core, pos_hmr_synch_sw()