avoid non-standard predefined macros
[riscv-tests.git] / debug / programs / regs.S
index 54b39616b9c542d2196516c1a38a99aa513591ef..5c4f4629a92ada233f79185b8d6851e181b432f0 100644 (file)
@@ -1,4 +1,4 @@
-#ifdef __riscv64
+#if __riscv_xlen == 64
 # define LREG ld
 # define SREG sd
 # define REGBYTES 8
@@ -8,46 +8,50 @@
 # define REGBYTES 4
 #endif
 
+#include "../../env/encoding.h"
+
         .global main
 main:
+        nop
         j       main
 
 write_regs:
-        SREG    x1, 0(a0)
-        SREG    x2, 8(a0)
-        SREG    x3, 16(a0)
-        SREG    x4, 24(a0)
-        SREG    x5, 32(a0)
-        SREG    x6, 40(a0)
-        SREG    x7, 48(a0)
-        SREG    x8, 56(a0)
-        SREG    x9, 64(a0)
-        SREG    x11, 72(a0)
-        SREG    x12, 80(a0)
-        SREG    x13, 88(a0)
-        SREG    x14, 96(a0)
-        SREG    x15, 104(a0)
-        SREG    x16, 112(a0)
-        SREG    x17, 120(a0)
-        SREG    x18, 128(a0)
-        SREG    x19, 136(a0)
-        SREG    x20, 144(a0)
-        SREG    x21, 152(a0)
-        SREG    x22, 160(a0)
-        SREG    x23, 168(a0)
-        SREG    x24, 176(a0)
-        SREG    x25, 184(a0)
-        SREG    x26, 192(a0)
-        SREG    x27, 200(a0)
-        SREG    x28, 208(a0)
-        SREG    x29, 216(a0)
-        SREG    x30, 224(a0)
-        SREG    x31, 232(a0)
+        SREG    x2, 0(x1)
+        SREG    x3, 8(x1)
+        SREG    x4, 16(x1)
+        SREG    x5, 24(x1)
+        SREG    x6, 32(x1)
+        SREG    x7, 40(x1)
+        SREG    x8, 48(x1)
+        SREG    x9, 56(x1)
+        SREG    x10, 64(x1)
+        SREG    x11, 72(x1)
+        SREG    x12, 80(x1)
+        SREG    x13, 88(x1)
+        SREG    x14, 96(x1)
+        SREG    x15, 104(x1)
+        SREG    x16, 112(x1)
+        SREG    x17, 120(x1)
+        SREG    x18, 128(x1)
+        SREG    x19, 136(x1)
+        SREG    x20, 144(x1)
+        SREG    x21, 152(x1)
+        SREG    x22, 160(x1)
+        SREG    x23, 168(x1)
+        SREG    x24, 176(x1)
+        SREG    x25, 184(x1)
+        SREG    x26, 192(x1)
+        SREG    x27, 200(x1)
+        SREG    x28, 208(x1)
+        SREG    x29, 216(x1)
+        SREG    x30, 224(x1)
+        SREG    x31, 232(x1)
 
-        csrr    x1, 1   # fflags
+        csrr    x1, CSR_MSCRATCH
 
 all_done:
         j       all_done
 
+        .balign  16
 data:
         .fill   64, 8, 0