aboutsummaryrefslogtreecommitdiff
path: root/src/encoding
diff options
context:
space:
mode:
Diffstat (limited to 'src/encoding')
-rw-r--r--src/encoding/base64/base64.go4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/encoding/base64/base64.go b/src/encoding/base64/base64.go
index 0bb37b311a..a90e4dfa12 100644
--- a/src/encoding/base64/base64.go
+++ b/src/encoding/base64/base64.go
@@ -123,6 +123,10 @@ func (enc *Encoding) Encode(dst, src []byte) {
if len(src) == 0 {
return
}
+ // enc is a pointer receiver, so the use of enc.encode within the hot
+ // loop below means a nil check at every operation. Lift that nil check
+ // outside of the loop to speed up the encoder.
+ _ = enc.encode
di, si := 0, 0
n := (len(src) / 3) * 3