1// simple test to ensure that we can load data from memory. 2# mach: bfin 3 4.include "testutils.inc" 5 start 6 7 loadsym P0, tab; 8 R0 = [ P0 ++ ]; 9 R1 = [ P0 ++ ]; 10 R2 = [ P0 ++ ]; 11 R3 = [ P0 ++ ]; 12 R4 = [ P0 ++ ]; 13 R5 = [ P0 ++ ]; 14 R6 = [ P0 ++ ]; 15 R7 = [ P0 ++ ]; 16 17 DBGA ( R0.H , 0x1111 ); 18 DBGA ( R1.H , 0x2222 ); 19 DBGA ( R2.H , 0x3333 ); 20 DBGA ( R3.H , 0x4444 ); 21 DBGA ( R4.H , 0x5555 ); 22 DBGA ( R5.H , 0x6666 ); 23 DBGA ( R6.H , 0x7777 ); 24 DBGA ( R7.H , 0x8888 ); 25 26 loadsym P0, tab2; 27 28 R0 = W [ P0 ++ ] (Z); 29 DBGA ( R0.L , 0x1111 ); 30 31 R1 = W [ P0 ++ ] (Z); 32 DBGA ( R1.L , 0x8888 ); 33 34 R2 = W [ P0 ++ ] (Z); 35 DBGA ( R2.L , 0x2222 ); 36 37 R3 = W [ P0 ++ ] (Z); 38 DBGA ( R3.L , 0x7777 ); 39 40 R4 = W [ P0 ++ ] (Z); 41 DBGA ( R4.L , 0x3333 ); 42 43 R5 = W [ P0 ++ ] (Z); 44 DBGA ( R5.L , 0x6666 ); 45 46 R0 = B [ P0 ++ ] (Z); 47 DBGA ( R0.L , 0x44 ); 48 R1 = B [ P0 ++ ] (Z); 49 DBGA ( R1.L , 0x44 ); 50 R2 = B [ P0 ++ ] (Z); 51 DBGA ( R2.L , 0x55 ); 52 R3 = B [ P0 ++ ] (Z); 53 DBGA ( R3.L , 0x55 ); 54 55 R0 = B [ P0 ++ ] (X); 56 DBGA ( R0.L , 0x55 ); 57 58 R1 = B [ P0 ++ ] (X); 59 DBGA ( R1.L , 0x55 ); 60 61 R0 = W [ P0 ++ ] (X); 62 DBGA ( R0.L , 0x4444 ); 63 64 R1 = [ P0 ++ ]; 65 DBGA ( R1.L , 0x6666 ); 66 DBGA ( R1.H , 0x3333 ); 67 68 P1 = [ P0 ++ ]; 69 R0 = P1; 70 DBGA ( R0.L , 0x7777 ); 71 DBGA ( R0.H , 0x2222 ); 72 73 P1 = [ P0 ++ ]; 74 R0 = P1; 75 DBGA ( R0.L , 0x8888 ); 76 DBGA ( R0.H , 0x1111 ); 77 78 loadsym P5, tab3; 79 80 R0 = B [ P5 ++ ] (X); 81 DBGA ( R0.H , 0 ); 82 DBGA ( R0.L , 0 ); 83 84 R0 = B [ P5 ++ ] (X); 85 DBGA ( R0.H , 0xffff ); 86 DBGA ( R0.L , 0xffff ); 87 88 R1 = W [ P5 ++ ] (X); 89 DBGA ( R1.H , 0xffff ); 90 DBGA ( R1.L , 0xffff ); 91 92 pass 93 94 .data 95tab: 96 .dw 0 97 .dw 0x1111 98 .dw 0 99 .dw 0x2222 100 .dw 0 101 .dw 0x3333 102 .dw 0 103 .dw 0x4444 104 .dw 0 105 .dw 0x5555 106 .dw 0 107 .dw 0x6666 108 .dw 0 109 .dw 0x7777 110 .dw 0 111 .dw 0x8888 112 .dw 0 113 .dw 0 114 .dw 0 115 .dw 0 116 117tab2: 118 .dw 0x1111 119 .dw 0x8888 120 .dw 0x2222 121 .dw 0x7777 122 .dw 0x3333 123 .dw 0x6666 124 .dw 0x4444 125 .dw 0x5555 126 .dw 0x5555 127 .dw 0x4444 128 .dw 0x6666 129 .dw 0x3333 130 .dw 0x7777 131 .dw 0x2222 132 .dw 0x8888 133 .dw 0x1111 134 135tab3: 136 .dw 0xff00 137 .dw 0xffff 138