On Fri, Apr 05, 2013 at 02:42:19PM -0600, Jeff Law wrote:
> ? I must be missing something, the change causes an early bail out
> from try_crossjump_to_edge.
>
> We don't want to raise the min to > 0 as that doesn't allow the user
> to turn on this specific transformation.
The condition is
if (nmatch < PARAM_VALUE (PARAM_MIN_CROSSJUMP_INSNS))
return false; // aka "don't crossjump"
So, the smaller the N in --param min-crossjump-insns=N is, the more likely
we crossjump. Thus N=0 should mean that it is most likely we crossjump,
and as N=1 requires that at least one insn matches, N=0 would mean that
even zero insns can match. If we for --param min-crossjump-insns=0
always return false, it means we never crossjump, so it is least likely
that we crossjump, which corresponds to largest possible N, not smallest
one.
Jakub