On 11/11/23 08:51, Richard Sandiford wrote:
Jeff Law <j...@ventanamicro.com> writes:
On 11/7/23 17:35, Richard Sandiford wrote:
I could have sworn that there was something that checked that passes
left edge aux fields clear, but it looks like I misremembered. So I
probably need to stick a clear_aux_for_edges () call above the first
main loop (for 12/12) and keep the initialisation here as well.
That does sound vaguely familiar. Maybe it was a one-off test someone
did.
That kind-of takes away the point of shifting to 1-based values
in the first place. Ah well...
Your call. I'd tend to lean towards inserting the clear_aux call if we
don't have something that's consistently verifying aux state.
Agreed. A convention that isn't tested isn't strong enough to rely on.
Alternately we can return to the -1 handling. I doubt it's all that
important from a compile-time standpoint.
I dithered about it a bit, but in the end, zero does still seem to work
out a bit more nicely.
I think you'd basically OKed the patch with this change, but I'm feeling
extra risk-averse at the moment :) so, here's an updated patch.
Tested as before. OK to install?
Thanks for catching this.
Richard
gcc/
* mode-switching.cc (commit_mode_sets): Use 1-based edge aux values.
Yea, intention was to ACK whichever approach you preferred.
OK.
jeff