Xref: utzoo comp.lang.c:34661 comp.lang.fortran:4368 Path: utzoo!attcan!uunet!lll-winken!elroy.jpl.nasa.gov!usc!wuarchive!cs.utexas.edu!yale!cmcl2!kramden.acf.nyu.edu!brnstnd From: brnstnd@kramden.acf.nyu.edu (Dan Bernstein) Newsgroups: comp.lang.c,comp.lang.fortran Subject: Re: alternatives to "noalias"? Message-ID: <12873:Dec1021:09:2890@kramden.acf.nyu.edu> Date: 10 Dec 90 21:09:28 GMT References: <1990Dec9.003028.13424@zoo.toronto.edu> <14065@june.cs.washington.edu> Organization: IR Lines: 21 In article <14065@june.cs.washington.edu> david@june.cs.washington.edu (David Callahan) writes: > I'm not entirely sure what you mean by ``sequential dependencies'' That's exactly the problem I've been wrestling with. Wtf is a sequential dependency? Does it mean that the result of the loop is changed if the index goes backwards or in a random order? (This isn't good enough.) Does it mean that no memory location accessed during the loop is written during the loop? (This may be too restrictive, and it may not be good enough.) What does it mean? If the programmer writes forall(i = 0;i < 100;i++) x[i] = y[i]; then the compiler had better be able to conclude that x and y don't overlap. That's what we want out of the ``sequential dependency'' definition. But how can we achieve it? Your ball. ---Dan