1/* DAG test program. 2 * Test circular buffers 3 */ 4# mach: bfin 5 6.include "testutils.inc" 7 start 8 9 loadsym I0, foo; 10 loadsym B0, foo; 11 loadsym R2, foo; 12 L0 = 0x10 (X); 13 M1 = 8 (X); 14 R0 = [ I0 ++ M1 ]; 15 R7 = I0; 16 R1 = R7 - R2 17 DBGA ( R1.L , 0x0008 ); 18 R0 = [ I0 ++ M1 ]; 19 R7 = I0; 20 21 R1 = R7 - R2; 22 DBGA ( R1.L , 0x0000 ); 23 R0 = [ I0 ++ M1 ]; 24 R7 = I0; 25 R1 = R7 - R2 26 DBGA ( R1.L , 0x0008 ); 27 28 loadsym I0, foo; 29 loadsym B0, foo; 30 loadsym R2, foo; 31 L0 = 0x10 (X); 32 M1 = -4 (X); 33 R0 = [ I0 ++ M1 ]; 34 R7 = I0; 35 R1 = R7 - R2 36 DBGA ( R1.L , 0x000c ); 37 R0 = [ I0 ++ M1 ]; 38 R7 = I0; 39 R1 = R7 - R2 40 DBGA ( R1.L , 0x0008 ); 41 R0 = [ I0 ++ M1 ]; 42 R7 = I0; 43 R1 = R7 - R2; 44 DBGA ( R1.L , 0x0004 ); 45 R0 = [ I0 ++ M1 ]; 46 R7 = I0; 47 R1 = R7 - R2; 48 DBGA ( R1.L , 0x0000 ); 49 R0 = [ I0 ++ M1 ]; 50 R7 = I0; 51 R1 = R7 - R2; 52 DBGA ( R1.L , 0x000c ); 53 54 loadsym I0, foo; 55 loadsym B0, foo; 56 loadsym R2, foo; 57 L0 = 0x8 (X); 58 R0 = [ I0 ++ ]; 59 R7 = I0; 60 R1 = R7 - R2; 61 DBGA ( R1.L , 0x0004 ); 62 R0 = [ I0 ++ ]; 63 R7 = I0; 64 R1 = R7 - R2; 65 DBGA ( R1.L , 0x0000 ); 66 R0 = [ I0 ++ ]; 67 R7 = I0; 68 R1 = R7 - R2; 69 DBGA ( R1.L , 0x0004 ); 70 71 loadsym I0, foo; 72 loadsym B0, foo; 73 loadsym R2, foo; 74 L0 = 0x8 (X); 75 R0.L = W [ I0 ++ ]; 76 R7 = I0; 77 R1 = R7 - R2; 78 DBGA ( R1.L , 0x0002 ); 79 R0.L = W [ I0 ++ ]; 80 R7 = I0; 81 R1 = R7 - R2; 82 DBGA ( R1.L , 0x0004 ); 83 R0.L = W [ I0 ++ ]; 84 R7 = I0; 85 R1 = R7 - R2; 86 DBGA ( R1.L , 0x0006 ); 87 R0.L = W [ I0 ++ ]; 88 R7 = I0; 89 R1 = R7 - R2; 90 DBGA ( R1.L , 0x0000 ); 91 R0.L = W [ I0 ++ ]; 92 R7 = I0; 93 R1 = R7 - R2; 94 DBGA ( R1.L , 0x0002 ); 95 96 loadsym I0, foo; 97 loadsym B0, foo; 98 loadsym R2, foo; 99 L0 = 0x8 (X); 100 R0 = [ I0 -- ]; 101 R7 = I0; 102 R1 = R7 - R2; 103 DBGA ( R1.L , 0x0004 ); 104 R0 = [ I0 -- ]; 105 R7 = I0; 106 R1 = R7 - R2; 107 DBGA ( R1.L , 0x0000 ); 108 R0 = [ I0 -- ]; 109 R7 = I0; 110 R1 = R7 - R2; 111 DBGA ( R1.L , 0x0004 ); 112 113 pass 114 115 .data 116foo: 117 .space (0x10); 118