Instrumentation and Optimization of Win32/Intel Executables Using Etch
- Ted Romer ,
- Geoff Voelker ,
- Dennis Lee ,
- Alec Wolman ,
- Wayne Wong ,
- Hank Levy ,
- Brian Bershad ,
- Brad Chen
NT'97 Proceedings of the USENIX Windows NT Workshop on The USENIX Windows NT Workshop 1997 |
Published by USENIX Association
Etch is a general-purpose tool for rewriting arbitrary Win32/x86 binaries without requiring source code. Etch provides a framework for modifying executables for both measurement and optimization. Etch handles the complexities of the Win32 executable file format and the x86 instruction set, allowing tool builders to focus on specifying transformations. Etch also handles the complexities of the Win32 execution environment, allowing tool users to focus on performing experiments. This paper describes Etch and some of the tools that we have built using Etch, including a hierarchical call graph profiler and an instruction layout optimization tool.