diff options
author | Nick Clifton <nickc@redhat.com> | 2013-01-16 10:45:22 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2013-01-16 10:45:22 +0000 |
commit | 04e65a62c6136e9907d4db6d9cf0216832bdafa3 (patch) | |
tree | 9ef160d3fd06ad19a6597f6302fdc57365860502 /sim/rx | |
parent | 1178606e2bb9fc3a936318765bf195c93efdd73f (diff) | |
download | fsf-binutils-gdb-04e65a62c6136e9907d4db6d9cf0216832bdafa3.zip fsf-binutils-gdb-04e65a62c6136e9907d4db6d9cf0216832bdafa3.tar.gz fsf-binutils-gdb-04e65a62c6136e9907d4db6d9cf0216832bdafa3.tar.bz2 |
* rx.c (decode_opcode): Handle RXO_satr.
Diffstat (limited to 'sim/rx')
-rw-r--r-- | sim/rx/ChangeLog | 4 | ||||
-rw-r--r-- | sim/rx/rx.c | 16 |
2 files changed, 20 insertions, 0 deletions
diff --git a/sim/rx/ChangeLog b/sim/rx/ChangeLog index e5cb451..00f4bdc 100644 --- a/sim/rx/ChangeLog +++ b/sim/rx/ChangeLog @@ -1,3 +1,7 @@ +2013-01-16 Nick Clifton <nickc@redhat.com> + + * rx.c (decode_opcode): Handle RXO_satr. + 2012-06-15 Joel Brobecker <brobecker@adacore.com> * config.in, configure: Regenerate. diff --git a/sim/rx/rx.c b/sim/rx/rx.c index 661bded..e12aa85 100644 --- a/sim/rx/rx.c +++ b/sim/rx/rx.c @@ -1802,6 +1802,22 @@ decode_opcode () E1; break; + case RXO_satr: + if (FLAG_O && ! FLAG_S) + { + put_reg (6, 0x0); + put_reg (5, 0x7fffffff); + put_reg (4, 0xffffffff); + } + else if (FLAG_O && FLAG_S) + { + put_reg (6, 0xffffffff); + put_reg (5, 0x80000000); + put_reg (4, 0x0); + } + E1; + break; + case RXO_sbb: MATH_OP (-, ! carry); break; |