convert test_caller_svp64.py to new vector numbering convention
[openpower-isa.git] / openpower / isa / comparefixed.mdwn
index 34fb62b7d29c33ba6f2abd03c6df40912307a073..af92870a9ff500e968286dd6615d5b5868c6203f 100644 (file)
@@ -99,11 +99,11 @@ X-Form
 
 Pseudo-code:
 
-    src1    <- EXTZ((RA)[56:63])
-    src21hi <- EXTZ((RB)[32:39])
-    src21lo <- EXTZ((RB)[40:47])
-    src22hi <- EXTZ((RB)[48:55])
-    src22lo <- EXTZ((RB)[56:63])
+    src1    <- EXTZ((RA)[XLEN-8:XLEN-1])
+    src21hi <- EXTZ((RB)[XLEN-32:XLEN-23])
+    src21lo <- EXTZ((RB)[XLEN-24:XLEN-17])
+    src22hi <- EXTZ((RB)[XLEN-16:XLEN-9])
+    src22lo <- EXTZ((RB)[XLEN-8:XLEN-1])
     if L=0 then
        in_range <-  (src22lo  <= src1) & (src1 <=  src22hi)
     else
@@ -127,15 +127,10 @@ X-Form
 Pseudo-code:
 
     src1 <- GPR[RA]
-    src1 <- src1[56:63]
-    match <- ((src1 = (RB)[00:07]) |
-              (src1 = (RB)[08:15]) |
-              (src1 = (RB)[16:23]) |
-              (src1 = (RB)[24:31]) |
-              (src1 = (RB)[32:39]) |
-              (src1 = (RB)[40:47]) |
-              (src1 = (RB)[48:55]) |
-              (src1 = (RB)[56:63]))
+    src1 <- src1[XLEN-8:XLEN-1]
+    match <- 0b0
+    for i = 0 to ((XLEN/8)-1)
+        match <- (match | (src1 = (RB)[8*i:8*i+7]))
     CR[4*BF+32] <- 0b0
     CR[4*BF+33] <- match
     CR[4*BF+34] <- 0b0