(no commit message)
authorlkcl <lkcl@web>
Fri, 21 Apr 2023 14:09:06 +0000 (15:09 +0100)
committerIkiWiki <ikiwiki.info>
Fri, 21 Apr 2023 14:09:06 +0000 (15:09 +0100)
openpower/sv/rfc/ls011.mdwn

index 5dc568f3ac52ce54185f2bdbad53c69cd0d0803c..516b012d4cb52c030533f4869f2423ca5cc43332 100644 (file)
@@ -83,6 +83,11 @@ stfsupsx,   ls011, med, 10, yes, EXT2xx, no, ls011, 3R1W
 
 # Example
 
+Here is an annotated example where the pseudo-code changes to
+just use `RA` as the address, otherwise remaining the same.
+No actual change to the Effective Address computation itself
+occurs, in any of the Post-Update instructions.
+
 ** Load Byte and Zero with Post-Update**
 
 D-Form
@@ -92,9 +97,9 @@ D-Form
 Pseudo-code:
 
 ```
-    EA <- (RA)
-    RT <- ([0] * (XLEN-8)) || MEM(EA, 1)
-    RA <- (RA) + EXTS(D)
+    EA <- (RA)                           # EA just RA
+    RT <- ([0] * (XLEN-8)) || MEM(EA, 1) # then load
+    RA <- (RA) + EXTS(D)                 # then update RA after
 ```
 
 Special Registers Altered:
@@ -106,9 +111,9 @@ Special Registers Altered:
 where the same pseudocode for `lbzu` is:
 
 ```
-    EA <- (RA) + EXTS(D)
-    RT <- ([0] * (XLEN-8)) || MEM(EA, 1)
-    RA <- EA
+    EA <- (RA) + EXTS(D)                  # EA includes D
+    RT <- ([0] * (XLEN-8)) || MEM(EA, 1)  # load from RA+D
+    RA <- EA                              # and update RA 
 ```
 
 [[!tag opf_rfc]]