epc = RS1;
break;
case 3:
- ebase = RS1 & ~0xFFF;
+ evec = RS1;
break;
case 4:
count = RS1;
break;
case 5:
- interrupts_pending &= ~(1 << TIMER_IRQ);
+ cause &= ~(1 << (TIMER_IRQ+CAUSE_IP_SHIFT));
compare = RS1;
break;
+ case 7:
+ sim->send_ipi(RS1);
+ break;
+
+ case 9:
+ mmu.set_ptbr(RS1);
+ break;
+
+ case 11:
+ vecbanks = RS1 & 0xff;
+ vecbanks_count = __builtin_popcountll(vecbanks);
+ break;
+
case 16:
tohost = RS1;
sim->set_tohost(RS1);