The implementation of dynamically bound object oriented programming languages require the ability to quickly bind a logical reference to a method and to quickly allocate a context for the invoked method. In this paper we examine how a method lookup cache (MLC) and a register windowing mechanism can speed up method binding and context allocation. We also show how the MLC can be incorporated into a contemporary pipelined datapath. A detailed register level simulation of the proposed scheme, driven by a set of fairly intensive object-oriented applications, show that a relatively small method lookup cache with only 64 or 128 entries reduces the average execution time of the applications by about 50%. With register windowing and the MLC, execution time reduces by 76% to 87% with respect to the base machine
Published in:
EUROMICRO 96. Beyond 2000: Hardware and Software Design Strategies., Proceedings of the 22nd EUROMICRO Conference
Date of Conference: 2-5 Sep 1996