juddhuck,
I don't know much about the optree, but perl -MO=Concise may be of help in comparing the versions that leak against the ones that don't. Incidently, the following doesn't but is functionally equivalent:
#!/usr/bin/perl
use strict;
use warnings;
my $i = 0;
bar();
sub bar {
goto &bar if foo();
return;
}
sub foo {return $i++ < 1_000_000_000;}