1
0
mirror of https://github.com/golang/go synced 2024-10-05 19:11:22 -06:00
go/src/image/draw
Nigel Tao e424d59680 image/draw: optimize out some bounds checks.
We could undoubtedly squeeze even more out of these loops, and in the
long term, a better compiler would be smarter with bounds checks, but in
the short term, this small change is an easy win.

benchmark                      old ns/op     new ns/op     delta
BenchmarkFillOver-8            1619470       1323192       -18.29%
BenchmarkCopyOver-8            1129369       1062787       -5.90%
BenchmarkGlyphOver-8           420070        378608        -9.87%

On github.com/golang/freetype/truetype's BenchmarkDrawString:
benchmark                 old ns/op     new ns/op     delta
BenchmarkDrawString-8     9561435       8807019       -7.89%

Change-Id: Ib1c6271ac18bced85e0fb5ebf250dd57d7747e75
Reviewed-on: https://go-review.googlesource.com/14093
Reviewed-by: Rob Pike <r@golang.org>
2015-09-01 00:34:26 +00:00
..
bench_test.go image/draw: fix double-draw when the dst is paletted. 2015-07-03 03:08:40 +00:00
clip_test.go image: spell coordinate consistently, without the hyphen. 2015-04-16 01:21:31 +00:00
draw_test.go image/color: tweak the YCbCr to RGBA conversion formula. 2015-07-15 05:29:00 +00:00
draw.go image/draw: optimize out some bounds checks. 2015-09-01 00:34:26 +00:00