Hi, On Thu, 8 Jun 2006, Daniel Berlin wrote:
> >>> with base being either some memory object or an INDIRECT_REF of a > >>> pointer and be done with that tree code. > >> So if you have MEM_REF(INDIRECT_REF(a),i,0), you really haven't done > >> any better in removing recursion :) > > > > What type the first operand would be could be a one-bit flag in the > > MEM_REF itself. I.e. if there's an implicit INDIRECT_REF around the > > first operand, or not. The important part is only that the target > > address of that memory reference is computable completely trivially, > > namely by A + i, where A is either a or &a depending on that flag. > > And the more important thing anyway is that alias information of this > > specific mem reference encoded therein. > > Not for data dependence it's not. :) You mean tests based on the actual index vector, instead of the final offset vector? I still sometimes think that one should be able to recover the index vector reasonably well, when given only offsets (and perhaps adjusted bases). It's a tradeoff of having only one way to express memory accesses (which I find quite sexy) and having to do a bit more work when trying to get at the offsets. Ciao, Michael.