D-Form
-cmpi BF,L,RA,SI
+* cmpi BF,L,RA,SI
if L = 0 then a <- EXTS((RA)[32:63])
else a <- (RA)
X-Form
-cmp BF,L,RA,RB
+* cmp BF,L,RA,RB
if L = 0 then a <- EXTS((RA)[32:63] )
b <- EXTS((RB)[32:63])
D-Form
-cmpli BF,L,RA,UI
+* cmpli BF,L,RA,UI
if L = 0 then a <- [0]*32 || (RA)[32:63]
else a <- (RA)
X-form
-cmprb BF,L,RA,RB
+* cmprb BF,L,RA,RB
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])
-
if L=0 then
in_range <- (src22lo <= src1) & (src1 <= src22hi)
else
in_range <- ((src21lo <= src1) & (src1 <= src21hi)) |
in_range <- ((src22lo <= src1) & (src1 <= src22hi))
-
CR[4×BF+32] <- 0b0
CR[4×BF+33] <- in_range
CR[4×BF+34] <- 0b0
X-form
-cmpeqb BF,RA,RB
+* cmpeqb BF,RA,RB
src1 <- GPR[RA].bit[56:63]
-
match <- (src1 = (RB)[00:07]) |
match <- (src1 = (RB)[08:15]) |
match <- (src1 = (RB)[16:23]) |
match <- (src1 = (RB)[40:47]) |
match <- (src1 = (RB)[48:55]) |
match <- (src1 = (RB)[56:63])
-
CR[4×BF+32] <- 0b0
CR[4×BF+33] <- match
CR[4×BF+34] <- 0b0