diff options
Diffstat (limited to 'sim/ppc/ppc-instructions')
-rw-r--r-- | sim/ppc/ppc-instructions | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sim/ppc/ppc-instructions b/sim/ppc/ppc-instructions index 1b8fd89..d76a765 100644 --- a/sim/ppc/ppc-instructions +++ b/sim/ppc/ppc-instructions @@ -3455,6 +3455,19 @@ void::function::invalid_zero_divide_operation:cpu *processor, unsigned_word cia, PPC_INSN_MFCR(RT_BITMASK); # +# I.3.3.15 Fixed-Point Select +# + +0.31,6.RT,11.RA,16.RB,21.BF,26.15,31./:A::isel:Integer Select + unsigned_word a; + if (RA_is_0) a = 0; + else a = *rA; + if (CR & (1 << (31 - BF))) + *rT = a; + else + *rT = *rB; + +# # I.4.6.2 Floating-Point Load Instructions # |