Related articles |
---|
Value range tracing jeremy@suede.sw.oz.au (1995-12-01) |
Re: value range tracing whalley@sed.cs.fsu.edu (David Whalley) (1995-12-09) |
Re: Value range tracing hbaker@netcom.com (1995-12-09) |
Re: Value range tracing preston@tera.com (1995-12-09) |
Re: Value range tracing schinz@guano.alphanet.ch (1995-12-09) |
Value range tracing dave@occl-cam.demon.co.uk (Dave Lloyd) (1995-12-09) |
Re: Value range tracing bernecky@eecg.toronto.edu (1995-12-09) |
Re: Value range tracing creusil@cri.ensmp.fr (1995-12-09) |
Value range tracing deaeni@auto-trol.com (1995-12-09) |
Re: Value range tracing gough@dstc.qut.edu.au (John Gough) (1995-12-09) |
Re: Value range tracing jason@reflections.com.au (Jason Patterson) (1995-12-09) |
[3 later articles] |
From: | schinz@guano.alphanet.ch (Michel Schinz) |
Newsgroups: | comp.compilers |
Date: | 9 Dec 1995 19:24:50 -0500 |
Organization: | Compilers Central |
References: | 95-12-014 |
Keywords: | analysis |
Jeremy Fitzhardinge wrote:
: I'm wondering if people bother with value range tracing. That is,
: keeping track of the possible range of variables at each point in the
: program.
[...]
The first (?) version of the Self compiler, written by Craig Chambers,
did so (I don't know if the current Self compiler also does).
This information was used to eliminate array range checks, overflow
tests, and even "constant fold" integer comparaisons. For example, if
"i" is known to be in range 1-10, and "j" in range 20-30, the compiler
could replace an expression like "i < j" by the constant "true".
These techniques are described in Craig's excellent thesis:
Craig Chambers "The Design and Implementation of the SELF Compiler, an
Optimizing Compiler for Object-Oriented Programming Languages". PhD
Thesis, Stanford University, March 1992.
Michel.
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.