(no commit message)
authorlkcl <lkcl@web>
Thu, 2 Sep 2021 19:56:20 +0000 (20:56 +0100)
committerIkiWiki <ikiwiki.info>
Thu, 2 Sep 2021 19:56:20 +0000 (20:56 +0100)
openpower/sv/ldst.mdwn

index cc2161fc8a008223bb4f4429e3dc2d4f903c5537..ff6159487a2e525a9b8b21f370212045f21b23fb 100644 (file)
@@ -231,7 +231,10 @@ cache-inhibited LD should be performed, followed by a VSPLAT-augmented mv.
 
 ## LD/ST ffirst
 
-ffirst LD/ST to multiple pages via a Vectorised base is considered a security risk due to the abuse of probing multiple pages in rapid succession and getting feedback on which pages would fail.  Therefore in these special circumstances requesting ffirst with a vector base is instead interpreted as element-strided LD/ST.  See <https://bugs.libre-soc.org/show_bug.cgi?id=561>
+ffirst LD/ST to multiple pages via a Vectorised Index base is considered a security risk due to the abuse of probing multiple pages in rapid succession and getting feedback on which pages would fail.  Therefore in these special circumstances requesting ffirst on Indexed LD/ST is instead interpreted as element-strided LD/ST.  See <https://bugs.libre-soc.org/show_bug.cgi?id=561>
+
+    for(i = 0; i < VL; i++)
+        reg[rt + i] = mem[reg[ra] + i * reg[rb]];
 
 High security implementations where any kind of speculative probing
 of memory pages is considered a risk should take advantage of the fact that