]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: use sys.PtrSize in growslice
authorJosh Bleecher Snyder <josharian@gmail.com>
Fri, 20 Apr 2018 17:22:54 +0000 (10:22 -0700)
committerJosh Bleecher Snyder <josharian@gmail.com>
Sat, 21 Apr 2018 01:05:32 +0000 (01:05 +0000)
Minor cleanup.

Change-Id: I4175de392969bb6408081a75cebdaeadcef1e68c
Reviewed-on: https://go-review.googlesource.com/108576
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/runtime/slice.go

index 0924d1d8e6d17cbaeb831838813ab1e4379f6c96..40c599515335ebdcd2bb4a8dc3ea968cc90c9f44 100644 (file)
@@ -128,10 +128,9 @@ func growslice(et *_type, old slice, cap int) slice {
 
        var overflow bool
        var lenmem, newlenmem, capmem uintptr
-       const ptrSize = unsafe.Sizeof((*byte)(nil))
        // Specialize for common values of et.size.
        // For 1 we don't need any division/multiplication.
-       // For ptrSize, compiler will optimize division/multiplication into a shift by a constant.
+       // For sys.PtrSize, compiler will optimize division/multiplication into a shift by a constant.
        // For powers of 2, use a variable shift.
        switch {
        case et.size == 1:
@@ -140,15 +139,15 @@ func growslice(et *_type, old slice, cap int) slice {
                capmem = roundupsize(uintptr(newcap))
                overflow = uintptr(newcap) > maxAlloc
                newcap = int(capmem)
-       case et.size == ptrSize:
-               lenmem = uintptr(old.len) * ptrSize
-               newlenmem = uintptr(cap) * ptrSize
-               capmem = roundupsize(uintptr(newcap) * ptrSize)
-               overflow = uintptr(newcap) > maxAlloc/ptrSize
-               newcap = int(capmem / ptrSize)
+       case et.size == sys.PtrSize:
+               lenmem = uintptr(old.len) * sys.PtrSize
+               newlenmem = uintptr(cap) * sys.PtrSize
+               capmem = roundupsize(uintptr(newcap) * sys.PtrSize)
+               overflow = uintptr(newcap) > maxAlloc/sys.PtrSize
+               newcap = int(capmem / sys.PtrSize)
        case isPowerOfTwo(et.size):
                var shift uintptr
-               if ptrSize == 8 {
+               if sys.PtrSize == 8 {
                        // Mask shift for better code generation.
                        shift = uintptr(sys.Ctz64(uint64(et.size))) & 63
                } else {