| # mach: all |
| # output: |
| # sim: --environment operating |
| |
| .include "t-macros.i" |
| |
| start |
| |
| PSW_BITS = PSW_FX|PSW_ST|PSW_SM |
| loadpsw2 PSW_BITS |
| |
| ;; Test normal sadd |
| |
| loadacc2 a0 0x00 0x7fff 0xffff |
| loadacc2 a1 0xff 0x8000 0x0000 |
| sadd a1, a0 |
| checkacc2 1 a0 0x00 0x7fff 0xffff |
| checkacc2 2 a1 0xff 0x8000 0x7fff |
| |
| ;; Test overflow |
| |
| loadacc2 a0 0x00 0x0000 0x0000 |
| loadacc2 a1 0x01 0x8000 0x0000 |
| sadd a1, a0 |
| checkacc2 3 a0 0x00 0x0000 0x0000 |
| checkacc2 4 a1 0x00 0x7fff 0xffff |
| |
| loadacc2 a0 0x00 0xffff 0xffff |
| loadacc2 a1 0x00 0xffff 0xffff |
| sadd a1, a0 |
| checkacc2 5 a1 0x00 0x7fff 0xffff |
| checkacc2 6 a0 0x00 0xffff 0xffff |
| |
| ;; Test underflow |
| |
| loadacc2 a0 0x00 0x0000 0x0000 |
| loadacc2 a1 0x80 0x8000 0x0000 |
| sadd a1, a0 |
| checkacc2 7 a0 0x00 0x0000 0x0000 |
| checkacc2 8 a1 0xff 0x8000 0x0000 |
| |
| exit0 |