Just to prove its possible :-) The attached adds reggroups.[hc] (is reggroup.[ch] a better name?) and then uses it in the i386. It certainly helps. The new output looks like: (gdb) info registers eax 0xbffff824 -1073743836 ecx 0x0 0 edx 0xbffff82c -1073743828 ebx 0x401d16b4 1075648180 esp 0xbffff7b0 0xbffff7b0 ebp 0xbffff7b8 0xbffff7b8 esi 0x40016b4c 1073834828 edi 0xbffff824 -1073743836 eip 0x8074b09 0x8074b09 eflags 0x282 642 cs 0x23 35 ss 0x2b 43 ds 0x2b 43 es 0x2b 43 fs 0x0 0 gs 0x0 0 orig_eax 0xffffffff -1 (ignoring orig_eax :-) while the [very] old output looks like: eax 0xbffff824 -1073743836 ecx 0x0 0 edx 0xbffff82c -1073743828 ebx 0x401d16b4 1075648180 esp 0xbffff7b0 0xbffff7b0 ebp 0xbffff7b8 0xbffff7b8 esi 0x40016b4c 1073834828 edi 0xbffff824 -1073743836 eip 0x8074b09 0x8074b09 eflags 0x282 642 cs 0x23 35 ss 0x2b 43 ds 0x2b 43 es 0x2b 43 fs 0x0 0 gs 0x0 0 fctrl 0x37f 895 fstat 0x0 0 ftag 0xffff 65535 fiseg 0x23 35 fioff 0x4028f195 1076425109 foseg 0x2b 43 fooff 0x402a1758 1076500312 fop 0x1c9 457 So I think its an improvement. I'll park this on my sysregs branch until after 5.3-branch is cut. enjoy, Andrew