Path: utzoo!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!apple!agate!dog.ee.lbl.gov!elf.ee.lbl.gov!torek From: torek@elf.ee.lbl.gov (Chris Torek) Newsgroups: comp.arch Subject: Re: register save Message-ID: <10945@dog.ee.lbl.gov> Date: 14 Mar 91 22:18:58 GMT References: <1991Mar11.192116.1974@dgbt.doc.ca> <912@spim.mips.COM> <3255@crdos1.crd.ge.COM> <10896@dog.ee.lbl.gov> <1991Mar13.200326.29116@zoo.toronto.edu> Reply-To: torek@elf.ee.lbl.gov (Chris Torek) Organization: Lawrence Berkeley Laboratory, Berkeley Lines: 30 X-Local-Date: Thu, 14 Mar 91 14:18:58 PST In article <1991Mar13.200326.29116@zoo.toronto.edu> henry@zoo.toronto.edu (Henry Spencer) writes: >AHEM. Chris, the Am29k has *both*. You can use 128 of those registers >as a register-window bank if you want, with the added bonus that the >size of the windows is completely up to you and can be different for >each function. True. I was originally going to use SPARC and MIPS in my examples, but I figured people would object to comparing a 127-register machine (Sun's SPARC chips, 8 windows of which 1 is reserved for traps, 16 registers per window, plus 8 more overlapping into the trap window [this makes the trap handlers somewhat painful], plus 8 `global' registers of which one is wired zero) to a 31-register machine (MIPS R[23]000, 32 registers, one wired zero). So when I said: >>... and which thus fit perfectly in the windows, >>will get either large gains, or (if your register allocation is good >>enough) none at all, on machines with register windows (SPARC) vs >>machines with `just a lot of registers' (AM29000). perhaps I should have made it `...with register windows (SPARC, AM29000) vs machines with ``just a lot of registers'' (AM29000)'. (Acutally, the SPARC has 8 `user-usable' global registers, the last one being the %y register, but it is a special case. Still, it might make a good holding register for leaf functions. Now I am tempted to hack gcc to do this. :-) ) -- In-Real-Life: Chris Torek, Lawrence Berkeley Lab EE div (+1 415 486 5427) Berkeley, CA Domain: torek@ee.lbl.gov