@@ -84,10 +84,25 @@ def SAR : SRReg<3, "sar", ["SAR","3"]>;
8484// Boolean Register
8585def BREG : SRReg<4, "br", ["BR","4"]>;
8686
87+ // Literal base
88+ def LITBASE : SRReg<5, "litbase", ["LITBASE", "5"]>;
89+
8790// Windowed Register Option registers
8891def WINDOWBASE : SRReg<72, "windowbase", ["WINDOWBASE", "72"]>;
8992def WINDOWSTART : SRReg<73, "windowstart", ["WINDOWSTART", "73"]>;
9093
94+ // Memory Control Register
95+ def MEMCTL : SRReg<97, "memctl", ["MEMCTL", "97"]>;
96+
97+ // Vector base register
98+ def VECBASE : SRReg<231, "vecbase", ["VECBASE", "231"]>;
99+
100+ // Xtensa Miscellaneous SR
101+ def MISC0 : SRReg<244, "misc0", ["MISC0", "244"]>;
102+ def MISC1 : SRReg<245, "misc1", ["MISC1", "245"]>;
103+ def MISC2 : SRReg<246, "misc2", ["MISC2", "246"]>;
104+ def MISC3 : SRReg<247, "misc3", ["MISC3", "247"]>;
105+
91106// MAC16 Option registers
92107def ACCLO : SRReg<16, "acclo", ["ACCLO", "16"]>;
93108def ACCHI : SRReg<17, "acchi", ["ACCHI", "17"]>;
@@ -101,7 +116,8 @@ def MR23 : RegisterClass<"Xtensa", [i32], 32, (add M2, M3)>;
101116def MR : RegisterClass<"Xtensa", [i32], 32, (add MR01, MR23)>;
102117
103118def SR : RegisterClass<"Xtensa", [i32], 32, (add
104- LBEG, LEND, LCOUNT, SAR, BREG, MR, WINDOWBASE, WINDOWSTART)>;
119+ LBEG, LEND, LCOUNT, SAR, BREG, LITBASE, MR, WINDOWBASE, WINDOWSTART,
120+ MEMCTL, VECBASE, MISC0, MISC1, MISC2, MISC3)>;
105121
106122//===----------------------------------------------------------------------===//
107123// Boolean registers
0 commit comments