Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!rutgers!cmcl2!yale!mfci!colwell From: colwell@mfci.UUCP (Robert Colwell) Newsgroups: comp.arch Subject: multiple register windows Message-ID: <536@m3.mfci.UUCP> Date: 28 Oct 88 12:41:56 GMT References: <156@gloom.UUCP> <310@lynx.zyx.SE> <332@pvab.UUCP> <15964@agate.BERKELEY.EDU> <23367@amdcad.AMD.COM> <16003@agate.BERKELEY.EDU> <469@oracle.UUCP> <16054@agate.BERKELEY.EDU> Sender: colwell@mfci.UUCP Reply-To: colwell@mfci.UUCP (Robert Colwell) Organization: Multiflow Computer Inc., Branford Ct. 06405 Lines: 27 In article <16054@agate.BERKELEY.EDU> matloff@iris.ucdavis.edu (Norm Matloff) writes: >*If I remember the arguments from MIPS correctly (want to help me out >*John?), there's a stronger objection to multiple-window-register-files. >*I think it's something to the effect that register-windows cause the >*load/store access time to be slower. I think there also may be some >*argument that a good compiler makes multiple-windows relatively >*unnecessary. > >A compiler which automatically inlines procedure calls might be able >to do what you are saying. However, there may be some unpleasant >side effects, depending on the language. Actually, one of my grad >students in making a thesis out of this, so I'll try to report more >on it later. Don't forget that one of the side effects of having your registers arranged into windows is that you don't have access to very many registers from within any given procedure. There are routines that need lots of them, and there are routines that need very few. The one-size-fits-all approach is not what a good compiler wants; it would rather see them all at once and do the management explicitly. The windowing is just a hack to make parameter-passing cheap, which a compiler can do just as well or better. Bob Colwell mfci!colwell@uunet.uucp Multiflow Computer 175 N. Main St. Branford, CT 06405 203-488-6090