use widths.get(dw/sw) and test empty/non-empty after.
[openpower-isa.git] / openpower / isa / av.mdwn
index 64bde71f7e12f9eae9dfddf2013814fe441a2b5f..ffbb7e7f51cf9d93ee8ebfd2d35ae0769e0d4e79 100644 (file)
@@ -164,16 +164,16 @@ Pseudo-code:
     P <- (RA)
     G <- (RB)
     temp <- (P|G)+G
-    RT <- temp^P 
+    RT <- temp^P
 
 Special Registers Altered:
 
     CR0                    (if Rc=1)
 
 # DRAFT Bitmanip Masked
+
 BM2-Form
+
 * bmask  RT,RA,RB,bm
 
 Pseudo-code:
@@ -206,15 +206,33 @@ Special Registers Altered:
 
     None
 
-# Load Floating-Point Immediate 
+# Load Floating-Point Immediate
 
-X-Form
+DX-Form
+
+* fmvis FRS,D
+
+Pseudo-code:
+
+    bf16 <- d0 || d1 || d2
+    fp32 <- bf16 || [0]*16
+    FRS  <- DOUBLE(fp32)
+
+Special Registers Altered:
+
+    None
+
+# Float Replace Lower-Half Single, Immediate
+
+DX-Form
 
-* fmvis FRS,FRS,SI
+* fishmv FRS,D
 
 Pseudo-code:
 
-    FRS <- EXTS(SI)
+    fp32 <- SINGLE((FRS))
+    fp32[16:31] <- d0 || d1 || d2
+    FRS <- DOUBLE(fp32)
 
 Special Registers Altered: