See: https://bugs.libre-soc.org/show_bug.cgi?id=915
a <- b
b <- t
# store the entire selected source (even in word mode)
- if a <u b then RT <- (RA|0)
- else RT <- (RB)
+ # 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
```
Compute the integer minimum/maximum according to `MMM` of `(RA|0)` and `(RB)`