Regcache changes broke MIPS

Andrew Cagney ac131313@cygnus.com
Sun Dec 9 19:09:00 GMT 2001


> Hmm, doctor the patient is worse than we thought (and how ironic, this 
>> one is my target).
>> 
>> Briefly, the MIPS still defines certain methods (REGISTER_RAW_SIZE() at 
>> least) as macro's mapped onto functions instead of true multi-arch 
>> methods.  That is why they are being called when they shouldn't.
>> 
>> I came up with a patch that fixed just REGISTER_RAW_SIZE() but that 
>> didn't fix it - suspect I need to find more.
> 
> 
> I think I follow.  Do you actually currently build the register cache
> with dummy values (on a multiarch target) and then rebuild it after
> gdbarch is initialized?


I fixed REGISTER_RAW_SIZE() and it died in what appeared to be 
REGISTER_BYTE() .....

At present the architecture gets built three times (!!!):

	o	dummy architecture

	o	default architecture

	o	executables architecture

The first one goes, once the non multi-arch targets are removed.


> It seems like there should be a way to register a post-gdbarch,
> non-multi-arch-target init function to avoid this.


That is hopefully unnecessary.  Just need to convert a few more MIPS macros.

	Andrew





More information about the Gdb mailing list