clarify vxcptsave/vxctkill semantics
authorYunsup Lee <yunsup@cs.berkeley.edu>
Tue, 22 Oct 2013 01:53:02 +0000 (18:53 -0700)
committerYunsup Lee <yunsup@cs.berkeley.edu>
Tue, 22 Oct 2013 01:53:02 +0000 (18:53 -0700)
hwacha/hwacha.h
hwacha/insns/vxcptkill.h
hwacha/insns/vxcptsave.h

index 100477cdfd2d1ae7b1b7d74b1325e511d8955492..df0add3bc03d6c766a7323bc73ba18255f0f990a 100644 (file)
@@ -46,8 +46,9 @@ public:
   bool get_debug() { return debug; }
   disassembler_t* get_ut_disassembler() { return &ut_disassembler; }
 
-private:
   static const int max_uts = 2048;
+
+private:
   ct_state_t ct_state;
   ut_state_t ut_state[max_uts];
   reg_t cause;
index 684a816cea109fa18241c222dac007043e5482b8..08efc129e11ab626512e5781f9b2933c8ae67be3 100644 (file)
@@ -1,3 +1,4 @@
 require_supervisor_hwacha;
-for (uint32_t i=0; i<VL; i++)
-  h->get_ut_state(i)->run = false;
+h->get_ct_state()->reset();
+for (uint32_t i=0; i<h->max_uts; i++)
+  h->get_ut_state(i)->reset();
index 2ff776129b19903428e363c4d7b337accabce8ea..cc663ed196d16805abd48494d32ff93b5f6a2ce4 100644 (file)
@@ -40,3 +40,5 @@ for (uint32_t i=0; i<VL; i++) {
 #undef STORE_B
 #undef STORE_W
 #undef STORE_D
+
+#include "insns/vxcptkill.h"