runtime: In Frames.Next, delay file/line lookup until just before return
runtime: In Frames.Next, delay file/line lookup until just before return

That way we will never have to look up the file/line for the frame
that's next to be returned when the user stops calling Next.

For the benchmark from #32093:

name      old time/op  new time/op  delta
Helper-4   948ns ± 1%   836ns ± 3%  -11.89%  (p=0.000 n=9+9)

(#32093 was fixed with a more specific, and better, fix, but this
fix is much more general.)

Change-Id: I89e796f80c9706706d8d8b30eb14be3a8a442846
Reviewed-on: https://go-review.googlesource.com/c/go/+/178077
Run-TryBot: Keith Randall <8c99c3a9284e493be632950b84cd789d08ed3e9d@golang.org>
Reviewed-by: Brad Fitzpatrick <ae9783c0b0efc69cd85ab025ddd17aa44cdc4aa5@golang.org>
TryBot-Result: Gobot Gobot <66cb808b70d30c07676d5e946fee83fd561249e5@golang.org>

CAFxX/go,cloudflare/go,nawawi/go,golang/go,golang/go,golang/go,CAFxX/go,nawawi/go,cloudflare/go,CAFxX/go,nawawi/go,golang/go,cloudflare/go,golang/go,nawawi/go,akutz/go,nawawi/go,akutz/go,nawawi/go,cloudflare/go,akutz/go,golang/go,CAFxX/go,golang/go,CAFxX/go,golang/go,cloudflare/go,akutz/go,nawawi/go,CAFxX/go,akutz/go,CAFxX/go,cloudflare/go,cloudflare/go,akutz/go,nawawi/go,akutz/go,CAFxX/go,cloudflare/go,akutz/go