(no commit message)
authorlkcl <lkcl@web>
Sat, 2 Apr 2022 11:59:33 +0000 (12:59 +0100)
committerIkiWiki <ikiwiki.info>
Sat, 2 Apr 2022 11:59:33 +0000 (12:59 +0100)
openpower/sv/branches.mdwn

index b5411a95b84d64d4149ff2185588453b10ec385d..aa8d7934314a3cd70e71dff4c33dd7175254677c 100644 (file)
@@ -514,7 +514,7 @@ for srcstep in range(VL):
     else if not SVRMmode.sz:
       # inverted CTR test skip mode
       if ¬BO[2] & CTRtest & ¬CTI then
-         CTR = CTR - 1
+        CTR = CTR - 1
         continue
     else
         testbit = SVRMmode.SNZ
@@ -541,6 +541,14 @@ for srcstep in range(VL):
             break
     if SVCRf.scalar:
        break
+# loop finally done, now test if branch (and update LR)
+lr_ok <- SVRMmode.LRu
+if cond_ok then
+    if AA then NIA <-iea EXTS(BD || 0b00)
+    else       NIA <-iea CIA + EXTS(BD || 0b00)
+    lr_ok <- 0b1
+if LK & lr_ok then LR <-iea CIA + 4
+
 ```
 
 Pseudocode for Vertical-First Mode: