(no commit message)
authorlkcl <lkcl@web>
Fri, 14 Jun 2019 11:42:57 +0000 (12:42 +0100)
committerIkiWiki <ikiwiki.info>
Fri, 14 Jun 2019 11:42:57 +0000 (12:42 +0100)
isa_conflict_resolution/isamux_isans.mdwn

index 8d2018854d50d852fe34584da8f0034e1791d65a..74c8b7628c4eeb0b688e65a71e58434310e3a664 100644 (file)
@@ -77,7 +77,11 @@ This to occur immediately and atomically at the point at which the change in ISA
 
 The most obvious application of this is for Foreign Archs, which may have their own completely separate PC. Thus, foreign assembly code and RISCV assembly code need not be mixed in the same binary.
 
-Further use-cases may be envisaged however great care needs to be taken to not cause massive complications for JIT emulation, as the RV ISANS is unary encoded (2^31 permutations). Switching CSR and PC in the RISCV unary NS therefore needs to be done wisely and responsibly, i.e. minimised!
+Further use-cases may be envisaged however great care needs to be taken to not cause massive complications for JIT emulation, as the RV ISANS is unary encoded (2^31 permutations).
+
+In addition, the state information of *all* namespaces has to be saved and restored on a context-switch (unless the SP is also switched as part of the state!) which is quite severely burdensome and getting exceptionally complex.
+
+Switching CSR, PC (and potentially SP) and other state on a NS change in the RISCV unary NS therefore needs to be done wisely and responsibly, i.e. minimised!
 
 To be discussed. Context <https://groups.google.com/a/groups.riscv.org/d/msg/isa-dev/x-uFZDXiOxY/27QDW5KvBQAJ>