bloodline wrote:
Hmmmm, you would probably just have a 64K register file...
Well, you could still have L2 cache, but you'd have less need of L1 cache :lol:
I dread to think how difficult to code such a system would be implement, let alone code for. It would be difficult to manage such a huge register file effectively in a multitasking OS.
Still, whilst we're being silly :-D...
Mind you, if you had a default 'offset' register that allows your definition of 'register 0' to be offset to any register in the file, you could implement a sort of "fixed register size per task" kernel, where each task would have it' own block of X registers. Once the register file fills, youd page out the ones for those tasks that arent doing anything.
Other than that, each task would just see eg 32 registers belonging to it that the OS almost never has to save/restore as part of task switching.
I wonder what the upper limit is for a sensible 'directly accessible' (that is not including shadowning and forwarding) register count?
I think PPC's 32 is more than enough, really...