Re: assertion failure in regcache.c

Andrew Cagney
2003-05-22T19:22:42Z

> Looks like you're right. If I update to 2003-05-04 it's fine, but after
> that it blows up. Seems to only be a problem for sh4 though. Any
> suggestions as to what might be breaking this? Here's the output of maint
> print registers.

> r0b1 51 51 204 4 int
> r1b1 52 52 208 4 int
> r2b1 53 53 212 4 int
> r3b1 54 54 216 4 int
> r4b1 55 55 220 4 int
> r5b1 56 56 224 4 int
> r6b1 57 57 228 4 int
> r7b1 58 58 232 4 int
> dr0 59 0 236*1 8 double
> dr2 60 1 244*1 8 double
> dr4 61 2 252*1 8 double
> dr6 62 3 260*1 8 double
> dr8 63 4 268*1 8 double
> dr10 64 5 276*1 8 double
> dr12 65 6 284*1 8 double
> dr14 66 7 292*1 8 double
> fv0 67 8 300*1 16 *2
> fv4 68 9 316*1 16 *2
> fv8 69 10 332*1 16 *2
> fv12 70 11 348*1 16 *2
> *1: Inconsistent register offsets.
> *2: Register type's name NULL.

I'd start with the obvious thing - a simple tipo in the SH4 register
byte function. The code was written long before these sanity checks
were added and ``the old way'' makes it very hard to notice that the
values are skewed.

Andrew