1 diff -ur gdb-6.3/sim/arm/iwmmxt.c gdb-6.3-owrt/sim/arm/iwmmxt.c
2 --- gdb-6.3/sim/arm/iwmmxt.c 2003-03-27 18:13:33.000000000 +0100
3 +++ gdb-6.3-owrt/sim/arm/iwmmxt.c 2006-04-12 15:06:03.000000000 +0200
6 s = (signed long) a * (signed long) b;
8 - (signed long long) t += s;
9 + t = t + (ARMdword) s;
14 wR [BITS (12, 15)] = 0;
16 if (BIT (21)) /* Signed. */
17 - (signed long long) wR[BITS (12, 15)] += (signed long long) t;
18 + wR[BITS (12, 15)] += t;
20 wR [BITS (12, 15)] += t;
23 b = wRHALF (BITS (0, 3), i * 2);
26 - (signed long) s1 = a * b;
27 + s1 = (ARMdword) (a * b);
29 a = wRHALF (BITS (16, 19), i * 2 + 1);
32 b = wRHALF (BITS (0, 3), i * 2 + 1);
35 - (signed long) s2 = a * b;
36 + s2 = (ARMdword) (a * b);
40 @@ -2183,12 +2183,12 @@
41 a = wRHALF (BITS (16, 19), i * 2);
42 b = wRHALF (BITS ( 0, 3), i * 2);
44 - (unsigned long) s1 = a * b;
45 + s1 = (ARMdword) (a * b);
47 a = wRHALF (BITS (16, 19), i * 2 + 1);
48 b = wRHALF (BITS ( 0, 3), i * 2 + 1);
50 - (signed long) s2 = a * b;
51 + s2 = (ARMdword) a * b;
54 r |= (ARMdword) ((s1 + s2) & 0xffffffff) << (i ? 32 : 0);
59 - r = (wR [BITS (16, 19)] & 0x8000000000000000) ? 0xffffffffffffffff : 0;
60 + r = (wR [BITS (16, 19)] & 0x8000000000000000ULL) ? 0xffffffffffffffffULL : 0;
62 - r = ((signed long long) (wR[BITS (16, 19)] & 0xffffffffffffffff) >> shift);
63 + r = ((signed long long) (wR[BITS (16, 19)] & 0xffffffffffffffffULL) >> shift);
64 SIMD64_SET (psr, NBIT64 (r), SIMD_NBIT);
65 SIMD64_SET (psr, ZBIT64 (r), SIMD_ZBIT);
71 - r = (wR [BITS (16, 19)] & 0xffffffffffffffff) >> shift;
72 + r = (wR [BITS (16, 19)] & 0xffffffffffffffffULL) >> shift;
74 SIMD64_SET (psr, NBIT64 (r), SIMD_NBIT);
75 SIMD64_SET (psr, ZBIT64 (r), SIMD_ZBIT);
77 r = wRWORD (BITS (16, 19), 1);
79 if (BIT (21) && NBIT32 (r))
80 - r |= 0xffffffff00000000;
81 + r |= 0xffffffff00000000ULL;
83 SIMD64_SET (psr, NBIT64 (r), SIMD_NBIT);
84 SIMD64_SET (psr, ZBIT64 (r), SIMD_ZBIT);
86 r = wRWORD (BITS (16, 19), 0);
88 if (BIT (21) && NBIT32 (r))
89 - r |= 0xffffffff00000000;
90 + r |= 0xffffffff00000000ULL;
92 SIMD64_SET (psr, NBIT64 (r), SIMD_NBIT);
93 SIMD64_SET (psr, ZBIT64 (r), SIMD_ZBIT);