/* DAG test program. * Test circular buffers */ # mach: bfin .include "testutils.inc" start loadsym I0, foo; loadsym B0, foo; loadsym R2, foo; L0 = 0x10 (X); M1 = 8 (X); R0 = [ I0 ++ M1 ]; R7 = I0; R1 = R7 - R2 DBGA ( R1.L , 0x0008 ); R0 = [ I0 ++ M1 ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0000 ); R0 = [ I0 ++ M1 ]; R7 = I0; R1 = R7 - R2 DBGA ( R1.L , 0x0008 ); loadsym I0, foo; loadsym B0, foo; loadsym R2, foo; L0 = 0x10 (X); M1 = -4 (X); R0 = [ I0 ++ M1 ]; R7 = I0; R1 = R7 - R2 DBGA ( R1.L , 0x000c ); R0 = [ I0 ++ M1 ]; R7 = I0; R1 = R7 - R2 DBGA ( R1.L , 0x0008 ); R0 = [ I0 ++ M1 ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0004 ); R0 = [ I0 ++ M1 ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0000 ); R0 = [ I0 ++ M1 ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x000c ); loadsym I0, foo; loadsym B0, foo; loadsym R2, foo; L0 = 0x8 (X); R0 = [ I0 ++ ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0004 ); R0 = [ I0 ++ ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0000 ); R0 = [ I0 ++ ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0004 ); loadsym I0, foo; loadsym B0, foo; loadsym R2, foo; L0 = 0x8 (X); R0.L = W [ I0 ++ ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0002 ); R0.L = W [ I0 ++ ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0004 ); R0.L = W [ I0 ++ ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0006 ); R0.L = W [ I0 ++ ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0000 ); R0.L = W [ I0 ++ ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0002 ); loadsym I0, foo; loadsym B0, foo; loadsym R2, foo; L0 = 0x8 (X); R0 = [ I0 -- ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0004 ); R0 = [ I0 -- ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0000 ); R0 = [ I0 -- ]; R7 = I0; R1 = R7 - R2; DBGA ( R1.L , 0x0004 ); pass .data foo: .space (0x10);