1 //Original:/testcases/core/c_alu2op_conv_neg/c_alu2op_conv_neg.dsp 2 // Spec Reference: alu2op (-) negative 3 # mach: bfin 4 5 .include "testutils.inc" 6 start 7 8 9 10 imm32 r0, 0x00789abc; 11 imm32 r1, 0x12345678; 12 imm32 r2, 0x23456789; 13 imm32 r3, 0x3456789a; 14 imm32 r4, 0x856789ab; 15 imm32 r5, 0x96789abc; 16 imm32 r6, 0xa789abcd; 17 imm32 r7, 0xb89abcde; 18 R0 = - R0; 19 R1 = - R0; 20 R2 = - R0; 21 R3 = - R0; 22 R4 = - R0; 23 R5 = - R0; 24 R6 = - R0; 25 R7 = - R0; 26 CHECKREG r0, 0xFF876544; 27 CHECKREG r1, 0x00789ABC; 28 CHECKREG r2, 0x00789ABC; 29 CHECKREG r3, 0x00789ABC; 30 CHECKREG r4, 0x00789ABC; 31 CHECKREG r5, 0x00789ABC; 32 CHECKREG r6, 0x00789ABC; 33 CHECKREG r7, 0x00789ABC; 34 35 imm32 r0, 0x01230002; 36 imm32 r1, 0x00374659; 37 imm32 r2, 0x93456789; 38 imm32 r3, 0xa456789a; 39 imm32 r4, 0xb56789ab; 40 imm32 r5, 0xc6789abc; 41 imm32 r6, 0xd789abcd; 42 imm32 r7, 0xe89abcde; 43 R0 = - R1; 44 R1 = - R1; 45 R2 = - R1; 46 R3 = - R1; 47 R4 = - R1; 48 R5 = - R1; 49 R6 = - R1; 50 R7 = - R1; 51 CHECKREG r0, 0xFFC8B9A7; 52 CHECKREG r1, 0xFFC8B9A7; 53 CHECKREG r2, 0x00374659; 54 CHECKREG r3, 0x00374659; 55 CHECKREG r4, 0x00374659; 56 CHECKREG r5, 0x00374659; 57 CHECKREG r6, 0x00374659; 58 CHECKREG r7, 0x00374659; 59 60 imm32 r0, 0x10789abc; 61 imm32 r1, 0x11345678; 62 imm32 r2, 0x93156789; 63 imm32 r3, 0xd451789a; 64 imm32 r4, 0x856719ab; 65 imm32 r5, 0x267891bc; 66 imm32 r6, 0xa789ab1d; 67 imm32 r7, 0x989ab1de; 68 R0 = - R2; 69 R1 = - R2; 70 R2 = - R2; 71 R3 = - R2; 72 R4 = - R2; 73 R5 = - R2; 74 R6 = - R2; 75 R7 = - R2; 76 CHECKREG r0, 0x6CEA9877; 77 CHECKREG r1, 0x6CEA9877; 78 CHECKREG r2, 0x6CEA9877; 79 CHECKREG r3, 0x93156789; 80 CHECKREG r4, 0x93156789; 81 CHECKREG r5, 0x93156789; 82 CHECKREG r6, 0x93156789; 83 CHECKREG r7, 0x93156789; 84 85 imm32 r0, 0x21230002; 86 imm32 r1, 0x02374659; 87 imm32 r2, 0x93256789; 88 imm32 r3, 0xa952789a; 89 imm32 r4, 0xb59729ab; 90 imm32 r5, 0xc67992bc; 91 imm32 r6, 0xd7899b2d; 92 imm32 r7, 0xe89ab9d2; 93 R0 = - R3; 94 R1 = - R3; 95 R2 = - R3; 96 R3 = - R3; 97 R4 = - R3; 98 R5 = - R3; 99 R6 = - R3; 100 R7 = - R3; 101 CHECKREG r0, 0x56AD8766; 102 CHECKREG r1, 0x56AD8766; 103 CHECKREG r2, 0x56AD8766; 104 CHECKREG r3, 0x56AD8766; 105 CHECKREG r4, 0xA952789A; 106 CHECKREG r5, 0xA952789A; 107 CHECKREG r6, 0xA952789A; 108 CHECKREG r7, 0xA952789A; 109 110 imm32 r0, 0xa0789abc; 111 imm32 r1, 0x1a345678; 112 imm32 r2, 0x23a56789; 113 imm32 r3, 0x645a789a; 114 imm32 r4, 0x8667a9ab; 115 imm32 r5, 0x96689abc; 116 imm32 r6, 0xa787abad; 117 imm32 r7, 0xb89a7cda; 118 R0 = - R4; 119 R1 = - R4; 120 R2 = - R4; 121 R3 = - R4; 122 R4 = - R4; 123 R5 = - R4; 124 R6 = - R4; 125 R7 = - R4; 126 CHECKREG r0, 0x79985655; 127 CHECKREG r1, 0x79985655; 128 CHECKREG r2, 0x79985655; 129 CHECKREG r3, 0x79985655; 130 CHECKREG r4, 0x79985655; 131 CHECKREG r5, 0x8667A9AB; 132 CHECKREG r6, 0x8667A9AB; 133 CHECKREG r7, 0x8667A9AB; 134 135 imm32 r0, 0xf1230002; 136 imm32 r1, 0x0f374659; 137 imm32 r2, 0x93f56789; 138 imm32 r3, 0xa45f789a; 139 imm32 r4, 0xb567f9ab; 140 imm32 r5, 0xc6789fbc; 141 imm32 r6, 0xd789abfd; 142 imm32 r7, 0xe89abcdf; 143 R0 = - R5; 144 R1 = - R5; 145 R2 = - R5; 146 R3 = - R5; 147 R4 = - R5; 148 R5 = - R5; 149 R6 = - R5; 150 R7 = - R5; 151 CHECKREG r0, 0x39876044; 152 CHECKREG r1, 0x39876044; 153 CHECKREG r2, 0x39876044; 154 CHECKREG r3, 0x39876044; 155 CHECKREG r4, 0x39876044; 156 CHECKREG r5, 0x39876044; 157 CHECKREG r6, 0xC6789FBC; 158 CHECKREG r7, 0xC6789FBC; 159 160 imm32 r0, 0xe0789abc; 161 imm32 r1, 0xe2345678; 162 imm32 r2, 0x2e456789; 163 imm32 r3, 0x34e6789a; 164 imm32 r4, 0x856e89ab; 165 imm32 r5, 0x9678eabc; 166 imm32 r6, 0xa789aecd; 167 imm32 r7, 0xb89abcee; 168 R0 = - R6; 169 R1 = - R6; 170 R2 = - R6; 171 R3 = - R6; 172 R4 = - R6; 173 R5 = - R6; 174 R6 = - R6; 175 R7 = - R6; 176 CHECKREG r0, 0x58765133; 177 CHECKREG r1, 0x58765133; 178 CHECKREG r2, 0x58765133; 179 CHECKREG r3, 0x58765133; 180 CHECKREG r4, 0x58765133; 181 CHECKREG r5, 0x58765133; 182 CHECKREG r6, 0x58765133; 183 CHECKREG r7, 0xA789AECD; 184 185 imm32 r0, 0x012300f5; 186 imm32 r1, 0x80374659; 187 imm32 r2, 0x98456589; 188 imm32 r3, 0xa486589a; 189 imm32 r4, 0xb56589ab; 190 imm32 r5, 0xc6588abc; 191 imm32 r6, 0xd589a8cd; 192 imm32 r7, 0x589abc88; 193 R0 = - R7; 194 R1 = - R7; 195 R2 = - R7; 196 R3 = - R7; 197 R4 = - R7; 198 R5 = - R7; 199 R7 = - R7; 200 R6 = - R7; 201 CHECKREG r0, 0xA7654378; 202 CHECKREG r1, 0xA7654378; 203 CHECKREG r2, 0xA7654378; 204 CHECKREG r3, 0xA7654378; 205 CHECKREG r4, 0xA7654378; 206 CHECKREG r5, 0xA7654378; 207 CHECKREG r6, 0x589ABC88; 208 CHECKREG r7, 0xA7654378; 209 210 211 pass 212