| # sh testcase for swap.b $rm, $rn -*- Asm -*- |
| # mach: all |
| # as: -isa=shcompact |
| # ld: -m shelf32 |
| |
| .include "compact/testutils.inc" |
| |
| start |
| |
| init: |
| # Build up a distinctive bit pattern. |
| mov #1, r0 |
| shll8 r0 |
| add #12, r0 |
| shll8 r0 |
| add #85, r0 |
| shll8 r0 |
| add #70, r0 |
| |
| test: |
| # Swap the lower two bytes into a different register. |
| swap.b r0, r1 |
| mov #1, r7 |
| shll8 r7 |
| add #12, r7 |
| shll8 r7 |
| add #70, r7 |
| shll8 r7 |
| add #85, r7 |
| cmp/eq r1, r7 |
| bf wrong |
| |
| swapback: |
| # Swap the lower two bytes into the same registers. |
| # R0 should now equal R1. |
| swap.b r1, r2 |
| cmp/eq r0, r2 |
| bf wrong |
| |
| okay: |
| pass |
| |
| wrong: |
| fail |