Re: Bizarre internal errors in regcache

Daniel Jacobowitz
2002-08-26T20:54:09Z

On Mon, Aug 26, 2002 at 10:28:08PM +0200, Mark Kettenis wrote:
> Date: Mon, 26 Aug 2002 15:52:47 -0400
> From: Daniel Jacobowitz <drow@mvista.com>
>
> On Mon, Aug 26, 2002 at 02:56:39PM -0400, Daniel Jacobowitz wrote:
> > I see this error on my laptop but not on my desktop; both current trees,
> > both rebuilt from scratch, both i386-linux. Any ideas?
>
> [ snip ]
>
> My desktop has SSE, my laptop doesn't, it seems. We can't call
> supply_register on an MMX register if we don't have any.
> dummy_sse_registers seems to be the culprit.
>
> Hmm, and my desktop sort of pretends it has the SSE registers.
>
> Anyway, I'm pretty certain that the problem is caused by the fact that
> the binary produced by the gdb.asm test isn't branded. Therefore GDB
> doesn't select the Linux OS/ABI but the generic OS/ABI which doesn't
> include the SSE regs. Since you're running on Linux, the native code
> tries to supply these registers anyway. i387_supply_fxsave() does
> deal with this gracefully, but dummy_sse_regs() doesn't.
>
> Can you try the attached patch?

That patch does it for me. This also shows up on core dumps, if you
don't include a binary, which is where I first noticed it.