binutils-gdb/sim/testsuite/v850/satadd.cgs
Mike Frysinger 1368b914e9 sim: testsuite: flatten tree
Now that all port tests live under testsuite/sim/*/, and none live
in testsuite/ directly, flatten the structure by moving all of the
dirs under testsuite/sim/ to testsuite/ directly.

We need to stop passing --tool to dejagnu so that it searches all
dirs and not just ones that start with "sim".  Since we have no
other dirs in this tree, and no plans to add any, should be fine.
2021-01-15 19:18:34 -05:00

80 lines
1.2 KiB
Plaintext

# v850 satadd
# mach: all
.include "testutils.inc"
# If the result of the add is "negative", that means we went too
# positive. The result should be the most positive number.
noflags
seti 0x70000000, r1
seti 0x70000000, r2
satadd r1, r2
flags sat + nc + v + ns + nz
reg r2, 0x7fffffff
noflags
seti 0x7ffffffe, r1
satadd 10, r1
flags sat + nc + v + ns + nz
reg r1, 0x7fffffff
# Similarly, if the result of the add is "positive", that means we
# went too negative. The result should be the most negative number.
noflags
seti 0x90000000, r1
seti 0x90000000, r2
satadd r1, r2
flags sat + c + v + s + nz
reg r2, 0x80000000
noflags
seti 0x80000001, r1
satadd -10, r1
flags sat + c + v + s + nz
reg r1, 0x80000000
# Check that the SAT flag remains set until reset
seti 1, r1
seti 2, r2
satadd r1,r2
flags sat + nc + nv + ns + nz
reg r2, 3
noflags
seti 1, r1
seti 2, r2
satadd r1,r2
flags nsat + nc + nv + ns + nz
reg r2, 3
# Check that results exactly equal to min/max don't saturate
noflags
seti 0x70000000, r1
seti 0x0fffffff, r2
satadd r1,r2
flags nsat + nc + nv + ns + nz
reg r2, 0x7fffffff
noflags
seti 0x90000000, r1
seti 0xf0000000, r2
satadd r1,r2
flags nsat + c + nv + s + nz
reg r2, 0x80000000
pass