> On Jan 31, 2018, at 4:33 PM, Wilco Dijkstra <wilco.dijks...@arm.com> wrote: > > Richard Sandiford wrote: > >> This was the original intent, but was changed in r213708. TBH I'm not >> sure what the second hunk in that revision fixed, since model_index is >> supposed to return an index greater than all valid indices when passed >> an instruction outside the current block. Maxim, do you remember? > > See https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00932.html, it says: > > "The second one is to account for the fact that model_index() of two > instructions > is meaningful only when both instructions are in the current basic block." > > Unless something has changed, I'm assuming that's still true today. Maybe > the underlying idea was to allow interleaving of instructions outside the > current block,
Yes. > but that isn't feasible if you want a well-defined sort ordering. Agree. Wilco, your patch looks good. Thanks for fixing this! -- Maxim Kuvyrkov www.linaro.org