binutils-gdb/sim/testsuite/bfin/cir1.s
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

85 lines
2.1 KiB
ArmAsm

# Blackfin testcase for circular buffers
# mach: bfin
.include "testutils.inc"
.macro daginit i:req, b:req, l:req, m:req
imm32 I0, \i
imm32 B0, \b
imm32 L0, \l
imm32 M0, \m
.endm
.macro dagcheck newi:req
DBGA ( I0.L, \newi & 0xFFFF );
DBGA ( I0.H, \newi >> 16 );
.endm
.macro dagadd i:req, b:req, l:req, m:req, newi:req
daginit \i, \b, \l, \m
I0 += M0;
dagcheck \newi
.endm
.macro dagsub i:req, b:req, l:req, m:req, newi:req
daginit \i, \b, \l, \m
I0 -= M0;
dagcheck \newi
.endm
.macro dag i:req, b:req, l:req, m:req, addi:req, subi:req
daginit \i, \b, \l, \m
I0 += M0;
dagcheck \addi
imm32 I0, \i
I0 -= M0;
dagcheck \subi
.endm
start
init_l_regs 0
init_i_regs 0
init_b_regs 0
init_m_regs 0
_zero_len:
dag 0, 0, 0, 0, 0, 0
dag 100, 0, 0, 0, 100, 100
dag 100, 0, 0, 11, 111, 89
dag 100, 0xaa00ff00, 0, 0, 100, 100
dag 100, 0xaa00ff00, 0, 11, 111, 89
_zero_base:
dag 0, 0, 100, 10, 10, 90
dag 50, 0, 100, 10, 60, 40
dag 99, 0, 100, 10, 9, 89
dag 50, 0, 100, 50, 0, 0
dag 50, 0, 100, 100, 50, 50
dag 50, 0, 100, 200, 150, -50
dag 50, 0, 100, 2100, 2050, -1950
dag 1000, 0, 100, 0, 900, 1000
dag 1000, 0, 1000, 0, 0, 1000
dag 0xffff1000, 0, 0x1000, 0, 0xffff0000, 0xffff1000
dag 0xaaaa1000, 0, 0xaaa1000, 0, 0xa0000000, 0xaaaa1000
dag 0xaaaa1000, 0, 0xaaa1000, 0x1000, 0xa0001000, 0xaaaa0000
dag 0xffff1000, 0, 0xffff0000, 0xffffff, 0x1000fff, 0xfeff1001
_positive_base:
dag 0, 100, 100, 10, 10, 90
dag 90, 100, 100, 10, 100, 180
dag 90, 100, 100, 2100, 2090, -1910
dag 100, 100, 100, 100, 100, 100
dag 0xfffff000, 0xffffff00, 0x10, 0xffff, 0xefef, 0xfffef011
_large_base_len:
dag 0, 0xffffff00, 0xffffff00, 0x00000100, 0x00000200, 0xfffffe00
dag 0, 0xaaaaaaaa, 0xbbbbbbbb, 0xcccccccc, 0x88888887, 0x77777779
dag 0, 0xaaaaaaaa, 0xbbbbbbbb, 0x4ccccccc, 0x91111111, 0x6eeeeeef
dag 0, 0xaaaaaaaa, 0xbbbbbbbb, 0x00000000, 0x44444445, 0xbbbbbbbb
dag 0, 0xdddddddd, 0x7bbbbbbb, 0xcccccccc, 0xcccccccc, 0xb7777779
dag 0, 0xbbbbbbbb, 0x7bbbbbbb, 0x4ccccccc, 0x4ccccccc, 0xb3333334
dag 0, 0xbbbbbbbb, 0x7bbbbbbb, 0x00000000, 0x84444445, 0x7bbbbbbb
pass