# do signed comparison of the original inputs
a[0] <- ¬a[0]
b[0] <- ¬b[0]
+ # if Rc = 1 then store the result of comparing a and b to CR0
+ if Rc = 1 then
+ if a <u b then
+ CR0 <- 0b100 || XER.SO
+ if a = b then
+ CR0 <- 0b001 || XER.SO
+ if a >u b then
+ CR0 <- 0b010 || XER.SO
if MMM[2] then # max mode
# swap a and b to make the less than comparison do
# greater than comparison of the original inputs
b <- t
# store the entire selected source (even in word mode)
# if Rc = 1 then store the result of comparing a and b to CR0
- if a <u b then
- RT <- (RA|0)
- if Rc = 1 then CR0 <- 0b100 || XER.SO
- if a = b then
- RT <- (RB)
- if Rc = 1 then CR0 <- 0b001 || XER.SO
- if a >u b then
- RT <- (RB)
- if Rc = 1 then CR0 <- 0b010 || XER.SO
+ if a <u b then RT <- (RA|0)
+ else RT <- (RB)
```
Compute the integer minimum/maximum according to `MMM` of `(RA|0)` and `(RB)`