Home

Techniques for runtime code generation in instrumented instruction set simulators


Author(s) : Magnus Christensson, 
Publisher : N/A
Publication Date : 1997
ISSN : N/A
Abstract : Instruction set simulators are a class of tools that simulate computer systems at the layer where the hardware meets the software. Applications include computer architecture design, compiler design, and performance studies of complex systems. Since the machines being modeled are frequently future designs, the performance of such simulators is a constant concern. We distinguish simulators from emulators by their ability to gather information about the execution in addition to the functional result. Thus, simulation can be viewed as emulation with instrumentation. The added instrumentation makes it much harder to obtain reasonable performance. Simulators are typically implemented with threaded code, dynamic cross compilation, or a mixture of both. In this thesis an approach that combines the AEexibility of threaded code with the higher performance of dynamic cross compilation is presented. The run-time generated code not only inlines much common instrumentation, but,