1 package org.ibex.nestedvm;
5 public final static int ZERO = 0; // Immutable, hardwired to 0
6 public final static int AT = 1; // Reserved for assembler
7 public final static int K0 = 26; // Reserved for kernel
8 public final static int K1 = 27; // Reserved for kernel
9 public final static int GP = 28; // Global pointer (the middle of .sdata/.sbss)
10 public final static int SP = 29; // Stack pointer
11 public final static int FP = 30; // Frame Pointer
12 public final static int RA = 31; // Return Address
14 // Return values (caller saved)
15 public final static int V0 = 2;
16 public final static int V1 = 3;
17 // Argument Registers (caller saved)
18 public final static int A0 = 4;
19 public final static int A1 = 5;
20 public final static int A2 = 6;
21 public final static int A3 = 7;
22 // Temporaries (caller saved)
23 public final static int T0 = 8;
24 public final static int T1 = 9;
25 public final static int T2 = 10;
26 public final static int T3 = 11;
27 public final static int T4 = 12;
28 public final static int T5 = 13;
29 public final static int T6 = 14;
30 public final static int T7 = 15;
31 public final static int T8 = 24;
32 public final static int T9 = 25;
33 // Saved (callee saved)
34 public final static int S0 = 16;
35 public final static int S1 = 17;
36 public final static int S2 = 18;
37 public final static int S3 = 19;
38 public final static int S4 = 20;
39 public final static int S5 = 21;
40 public final static int S6 = 22;
41 public final static int S7 = 23;