> Please keep the "redundant" test, it speeds up comparison on hash > collisions. As you are on it I'd use size_int (lr).
The redundant test is very redundant, see the line just below it. > I think it's ok to CSE foo (0) for > > try { > foo (0); > } catch (...) { side-effect } > foo (0); > > but not > > foo(0); > try { > foo (0); > } catch (...) { side-effect } > > but I don't see a clever way to preserve one but not the other > (at least in SCCVN). Do you think it's worth trying to preserve > that? I doubt it, I think this would happen very rarely in practice. The problem in Ada doesn't come from real-life code but from an artificial ACATS test. > Otherwise the patch looks good to me. (bonus point for a C++ > testcase as Ada is not in our testing requirements and it would > be nice to exercise this w/o Ada) OK, I can add a C++ testcase. -- Eric Botcazou