> On registerizing globals, it seems to be that it's > entirely safe to registerize as long as control flow > doesn't leave your function. I.e., don't expect > registerized globals not to mutate across function > calls. Threaded programmers know what they're getting > themselves into, and ought to be using locks or > condition variables. Locks and condition variables aren't good enough, unless there is a mechanism in the optimizing compiler to link locks to registerized globals (flush before unlock, reread after lock), or a mechanism to tell the compiler to flush before a context switch and reload after one.