> Even consider making everything a pseudo so that you know exactly what > you have at any stage. > Hmm, I think this is effectively what I have. See the code below (which is very much a work-in-progress..., so don't even expect it to compile ;-) > > I can make my arm_register_read function correctly remap the register > > numbers, but then I run into the problem that REGISTER_RAW_SIZE is used > > both above and below the regcache. > > I don't understand why this is a problem. I think a register (pseudo or > raw) should have only one size (c.f. my register_size() patch). However, in this situation, pseudo_rengo("r0") != regcache_regno("r0"), yet we effectively have REGSITER_RAW_SIZE (pseudo_regno ("r0")) and REGISTER_RAW_SIZE (regcache_regno ("r0")) R.