|
ABSTRACT
Compile-time elimination of subscript range checks is performed by some optimizing compilers to reduce the overhead associated with manipulating array data structures. Elimination and propagation, the two methods of subscript range check optimization, are less effective for eliminating global redundancies especially in while-loop structures with nonconstant loop guards. This paper describes a subscript range check optimization procedure that can eliminate more range checks than current methods. Two transformations called inner-loop guard elimination and conservative expression substitution are introduced to enhance propagation of range checks in nested while-loops and to define a partial order on related range checks. Global elimination is improved by considering range checks performed before control reaches a statement and after control leaves a statement. A unique feature of this method is the simplification of the available range-check analysis system for global elimination.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
 |
2
|
|
| |
3
|
HARRISON, W. Compiler analysis of the value ranges for variables. IEEE Trans. Softw. Eng. SE-3, 3(May 1977), 243-250.
|
 |
4
|
Victoria Markstein , John Cocke , Peter Markstein, Optimization of range checking, Proceedings of the 1982 SIGPLAN symposium on Compiler construction, p.114-119, June 23-25, 1982, Boston, Massachusetts, United States
[doi> 10.1145/800230.806986]
|
 |
5
|
|
| |
6
|
WELSH, J. Economic range checks in Pascal. Softw. Pract. Exper. 8 (1978), 85-97.
|
CITED BY 9
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mikel Luján , Mikel Luján , John R. Gurd , T. L. Freeman , José Miguel, Elimination of Java array bounds checks in the presence of indirection, Proceedings of the 2002 joint ACM-ISCOPE conference on Java Grande, p.76-85, November 03-05, 2002, Seattle, Washington, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
REVIEW
"Zoran D. Budimac : Reviewer"
Asuru describes a subscript range check optimization procedure in
the presence of loops. The procedure deals with loop invariant range
checks and range checks whose subscript operands are induction
variables. Since both kinds of ra
more...
|