Un-speculation in Modulo Scheduled Loops
Miao Wang, Rongcai Zhao, Guoming Cai · 2007
Modulo scheduling and speculation are two important compiler optimization techniques. Though combining these two techniques can offer significant performance benefits, it also can profoundly restructure the program's code, making it potentially difficult to understand, analyze, and reverse engineer. This paper describes an approach to undo the effect of speculation optimization in modulo scheduled loops and thereby improve the quality of reverse engineering optimized executables. We also demonstrate the effectiveness of this approach in terms of simplification in control flow graphs through experiment results.