Path: csiph.com!x330-a1.tempe.blueboxinc.net!newsfeed.hal-mli.net!feeder3.hal-mli.net!nx01.iad01.newshosting.com!newshosting.com!news.glorb.com!news-out.readnews.com!news-xxxfer.readnews.com!news.misty.com!news.iecc.com!nerds-end From: Nikolaos Kavvadias Newsgroups: comp.compilers Subject: Re: Implementation of range analyses Date: Fri, 1 Jul 2011 15:11:48 -0700 (PDT) Organization: Compilers Central Lines: 26 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <11-07-007@comp.compilers> References: <11-06-049@comp.compilers> NNTP-Posting-Host: news.iecc.com X-Trace: gal.iecc.com 1309566725 74020 64.57.183.58 (2 Jul 2011 00:32:05 GMT) X-Complaints-To: abuse@iecc.com NNTP-Posting-Date: Sat, 2 Jul 2011 00:32:05 +0000 (UTC) Keywords: analysis Posted-Date: 01 Jul 2011 20:32:04 EDT X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: x330-a1.tempe.blueboxinc.net comp.compilers:183 Hi Douglas bitwidth analysis (BA) is a related problem. It has been treated e.g. in Stephenson's contemporary classic: "Bitwidth Analysis with Application to Silicon Compilation" http://groups.csail.mit.edu/cag/bitwise/bitwise-pldi2k.pdf This is a highly-referenced, yet accessible work. The "bitwise" implementation (the name of the project), however was never open- sourced. The FLEX/Harpoon compiler infrastructure (by C. Scott Ananian, written in Java) provides an implementation of BA. The code is out there, available both at http://cscott.net and somewhere at github. Interval arithmetic (IA) and affine arithmetic (AA) provide mathematical foundations for propagating ranges (and handling precision in the latter case) of values. There exist open-source implementations of libraries for both. I have seen your work on Google Code. Looks like a nice addition to LLVM (if i recall correctly). Best regards Nikolaos Kavvadias