Shifting register windows is a new register windowing method that attempts to overcome some of the difficulties of traditional fixed- and variable-sized schemes. Using fewer register elements that a seven-window Sparc organization, shifting register windows more that halves spill/refill memory traffic, and reduces visible spill/refill cycles by an order of magnitude. In addition, shifting register windows, a scheme based on fast hardware stack and register-memory dribbling, has a very short register bus length. It also zeros registers as they are being allocated, making a common initialization unnecessary.