Sciweavers

LCPC
2001
Springer

Strength Reduction of Integer Division and Modulo Operations

14 years 4 months ago
Strength Reduction of Integer Division and Modulo Operations
Integer division, modulo, and remainder operations are expressive and useful operations. They are logical candidates to express complex data accesses such as the wrap-around behavior in queues using ring buffers, array address calculations in data distribution, and cache locality compiler-optimizations. Experienced application programmers, however, avoid them because they are slow. Furthermore, while advances in both hardware and software have improved the performance of many parts of a program, few are applicable to division and modulo operations. This trend makes these operations increasingly detrimental to program performance. This paper describes a suite of optimizations for eliminating division, modulo, and remainder operations from programs. These techniques are analogous to strength reduction techniques used for multiplications. In addition to some algebraic simplifications, we present a set of optimization techniques which eliminates division and modulo operations that are fu...
Jeffrey Sheldon, Walter Lee, Ben Greenwald, Saman
Added 30 Jul 2010
Updated 30 Jul 2010
Type Conference
Year 2001
Where LCPC
Authors Jeffrey Sheldon, Walter Lee, Ben Greenwald, Saman P. Amarasinghe
Comments (0)