> >* [NEW] If register 15 or below is used, it should be cleared out, > >ZEROED, after it's last use and before the next sub call. This is for > >security reasons. Obviously, these registers will not be the first > >choice to use. > > Nope -- this isn't the job of the register allocator. We aren't > leaving security issues up to bytecode except in a very few, limited > cases. (All involving subroutines with elevated security credentials > which the sub needs to drop after using things they allow)
Okay, looks like I misread an earlier message of Dan's. The reason that we cannot use R0-R15 through a sub, is that they are shredded. The values are not preserved through the sub call. Since I understand the item about allocating registers between sub calls, I can probably implement that change, as I work through the control flow/data flow analysis. Sounds like everything else is okay. We're just missing a few CFG arcs from the continuations stuff, which I'll let you all worry about. :) Bill ps: I'm making progress on grokking the cfg and register renaming stuff. Will let you know.