add comment-stripping to get_csv()
[openpower-isa.git] / openpower / isa / fixedshift.mdwn
index 514c3b4e7bf7815f8986c1ef7249bb5143c13ba2..02f1a71a85f2e747e55325fcc78838d1cdf2777a 100644 (file)
@@ -20,7 +20,7 @@ M-Form
 Pseudo-code:
 
     n <- SH
-    r <- ROTL32((RS)[32:63], n)
+    r <- ROTL32((RS)[XLEN/2:XLEN-1], n)
     m <- MASK32(MB, ME)
     RA <- r & m
 
@@ -37,7 +37,7 @@ M-Form
 
 Pseudo-code:
 
-    n <- (RB)[59:63]
+    n <- (RB)[XLEN-5:XLEN-1]
     r <- ROTL32((RS)[32:63], n)
     m <- MASK32(MB, ME)
     RA <- r & m
@@ -56,7 +56,7 @@ M-Form
 Pseudo-code:
 
     n <- SH
-    r <- ROTL32((RS)[32:63], n)
+    r <- ROTL32((RS)[XLEN/2:XLEN-1], n)
     m <- MASK32(MB, ME)
     RA <- r&m | (RA) & ¬m
 
@@ -76,7 +76,7 @@ Pseudo-code:
     n <- sh
     r <- ROTL64((RS), n)
     b <- mb[5] || mb[0:4]
-    m <- MASK(b, 63)
+    m <- MASK(b, (XLEN-1))
     RA <- r & m
 
 Special Registers Altered:
@@ -130,10 +130,10 @@ MDS-Form
 
 Pseudo-code:
 
-    n <- (RB)[58:63]
+    n <- (RB)[XLEN-5:XLEN-1]
     r <- ROTL64((RS), n)
     b <- mb[5] || mb[0:4]
-    m <- MASK(b, 63)
+    m <- MASK(b, (XLEN-1))
     RA <- r & m
 
 Special Registers Altered:
@@ -149,7 +149,7 @@ MDS-Form
 
 Pseudo-code:
 
-    n <- (RB)[58:63]
+    n <- (RB)[XLEN-5:XLEN-1]
     r <- ROTL64((RS), n)
     e <- me[5] || me[0:4]
     m <- MASK(0, e)
@@ -190,11 +190,11 @@ X-Form
 
 Pseudo-code:
 
-    n <- (RB)[59:63]
-    r <- ROTL32((RS)[32:63], n)
-    if (RB)[58] = 0 then
-         m <- MASK32(0, 31-n)
-    else m <- [0]*64
+    n <- (RB)[XLEN-5:XLEN-1]
+    r <- ROTL32((RS)[XLEN/2:XLEN-1], n)
+    if (RB)[XLEN-6] = 0 then
+         m <- MASK32(0, ((XLEN/2)-1-n))
+    else m <- [0]*XLEN
     RA <- r & m
 
 Special Registers Altered:
@@ -210,11 +210,11 @@ X-Form
 
 Pseudo-code:
 
-    n <- (RB)[59:63]
-    r <- ROTL32((RS)[32:63], 64-n)
-    if (RB)[58] = 0 then
-        m <- MASK32(n, 31)
-    else m <- [0]*64
+    n <- (RB)[XLEN-5:XLEN-1]
+    r <- ROTL32((RS)[XLEN/2:XLEN-1], XLEN-n)
+    if (RB)[XLEN-6] = 0 then
+        m <- MASK32(n, ((XLEN/2)-1))
+    else m <- [0]*XLEN
     RA <- r & m
 
 Special Registers Altered:
@@ -231,11 +231,11 @@ X-Form
 Pseudo-code:
 
     n <- SH
-    r <- ROTL32((RS)[32:63], 64-n)
-    m <- MASK32(n, 31)
-    s <- (RS)[32]
-    RA <- r&m | ([s]*64)& ¬m
-    carry <- s & ((r&¬m)[32:63] != 0)
+    r <- ROTL32((RS)[XLEN/2:XLEN-1], 64-n)
+    m <- MASK32(n, ((XLEN/2)-1))
+    s <- (RS)[XLEN/2]
+    RA <- r&m | ([s]*XLEN)& ¬m
+    carry <- s & ((r&¬m)[XLEN/2:XLEN-1] != 0)
     CA    <- carry
     CA32  <- carry
 
@@ -253,14 +253,14 @@ X-Form
 
 Pseudo-code:
 
-    n <- (RB)[59:63]
-    r <- ROTL32((RS)[32:63], 64-n)
-    if (RB)[58] = 0 then
-        m <- MASK32(n, 31)
-    else m <- [0]*64
-    s <- (RS)[32]
-    RA <- r&m | ([s]*64)& ¬m
-    carry <-  s & ((r&¬m)[32:63] != 0)
+    n <- (RB)[XLEN-5:XLEN-1]
+    r <- ROTL32((RS)[XLEN/2:XLEN-1], XLEN-n)
+    if (RB)[XLEN-6] = 0 then
+        m <- MASK32(n, ((XLEN/2)-1))
+    else m <- [0]*XLEN
+    s <- (RS)[XLEN/2]
+    RA <- r&m | ([s]*XLEN)& ¬m
+    carry <-  s & ((r&¬m)[XLEN/2:XLEN-1] != 0)
     CA    <-  carry
     CA32  <-  carry
 
@@ -278,11 +278,11 @@ X-Form
 
 Pseudo-code:
 
-    n <- (RB)[58:63]
+    n <- (RB)[XLEN-6:XLEN-1]
     r <- ROTL64((RS), n)
-    if (RB)[57] = 0 then
-         m <- MASK(0, 63-n)
-    else m <- [0]*64
+    if (RB)[XLEN-7] = 0 then
+         m <- MASK(0, XLEN-1-n)
+    else m <- [0]*XLEN
     RA <- r & m
 
 Special Registers Altered:
@@ -298,11 +298,11 @@ X-Form
 
 Pseudo-code:
 
-    n <- (RB)[58:63]
-    r <- ROTL64((RS), 64-n)
-    if (RB)[57] = 0 then
-        m <-  MASK(n, 63)
-    else m <- [0]*64
+    n <- (RB)[XLEN-6:XLEN-1]
+    r <- ROTL64((RS), XLEN-n)
+    if (RB)[XLEN-7] = 0 then
+        m <-  MASK(n, (XLEN-1))
+    else m <- [0]*XLEN
     RA <- r & m
 
 Special Registers Altered:
@@ -319,10 +319,10 @@ XS-Form
 Pseudo-code:
 
     n <- sh
-    r <- ROTL64((RS), 64-n)
-    m <- MASK(n, 63)
+    r <- ROTL64((RS), XLEN-n)
+    m <- MASK(n, (XLEN-1))
     s <- (RS)[0]
-    RA <- r&m | ([s]*64)& ¬m
+    RA <- r&m | ([s]*XLEN)& ¬m
     carry <- s & ((r& ¬m) != 0)
     CA    <- carry
     CA32  <- carry
@@ -341,13 +341,13 @@ X-Form
 
 Pseudo-code:
 
-    n <- (RB)[58:63]
-    r <- ROTL64((RS), 64-n)
-    if (RB)[57] = 0 then
-        m <-  MASK(n, 63)
-    else m <- [0]*64
+    n <- (RB)[XLEN-6:XLEN-1]
+    r <- ROTL64((RS), XLEN-n)
+    if (RB)[XLEN-7] = 0 then
+        m <-  MASK(n, (XLEN-1))
+    else m <- [0]*XLEN
     s <- (RS)[0]
-    RA <- r&m | ([s]*64)& ¬m
+    RA <- r&m | ([s]*XLEN)& ¬m
     carry <-  s & ((r&¬m) != 0)
     CA    <-  carry
     CA32  <-  carry
@@ -367,8 +367,8 @@ XS-Form
 Pseudo-code:
 
     n  <- sh
-    r  <- ROTL64(EXTS64(RS[32:63]), n)
-    m  <- MASK(0, 63-n)
+    r  <- ROTL64(EXTS64(RS[XLEN/2:XLEN-1]), n)
+    m  <- MASK(0, XLEN-1-n)
     RA <- r & m
 
 Special Registers Altered: