Nigel Tao
748adb17a1
draw: generate impl.go type switches.
...
This just the type switches to concrete-type-specific methods.
Generating RGBA- or YCbCr-specific code instead of calling the
general-purpose At and Set methods will be follow-up changes.
benchmark old ns/op new ns/op delta
BenchmarkScaleLargeDownNN 5771212 5766160 -0.09%
BenchmarkScaleLargeDownAB 14057354 14023083 -0.24%
BenchmarkScaleLargeDownBL 1349968635 1347746478 -0.16%
BenchmarkScaleLargeDownCR 2687753329 2678909022 -0.33%
BenchmarkScaleDownNN 1802408 1808723 +0.35%
BenchmarkScaleDownAB 4352978 4284878 -1.56%
BenchmarkScaleDownBL 29760913 29522171 -0.80%
BenchmarkScaleDownCR 57666917 56334005 -2.31%
BenchmarkScaleUpNN 88886450 89235790 +0.39%
BenchmarkScaleUpAB 214687758 213797857 -0.41%
BenchmarkScaleUpBL 119588096 119846371 +0.22%
BenchmarkScaleUpCR 179784111 180662030 +0.49%
BenchmarkScaleSrcUniform 4128528 3855385 -6.62%
BenchmarkScaleSrcNRGBA 13275457 13375039 +0.75%
BenchmarkScaleSrcRGBA 13333672 12812895 -3.91%
BenchmarkScaleSrcYCbCr 14321945 14139071 -1.28%
Change-Id: I28025c3b49186a12d20ee0182a4c8ff9b036d0ae
Reviewed-on: https://go-review.googlesource.com/5712
Reviewed-by: Rob Pike <r@golang.org>
2015-02-24 06:30:29 +00:00