aboutsummaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
authorJoseph Richey <joerichey@google.com>2018-08-22 05:45:42 -0700
committerGitHub <noreply@github.com>2018-08-22 05:45:42 -0700
commit75a59da2c5724ca4faf148e50e3c772310287bf3 (patch)
tree96f0588041ac624447cd8a609b30c4371387ca01 /util
parent3e32282af2f62829c711593a670e5d893df45196 (diff)
parent04bf9cd6444d1d3c60e8866f14508acb58fbc3bf (diff)
Merge pull request #102 from google/mips
Use proper sizes when casting to Go slice
Diffstat (limited to 'util')
-rw-r--r--util/util.go9
1 files changed, 4 insertions, 5 deletions
diff --git a/util/util.go b/util/util.go
index 3de4a1a..50663d5 100644
--- a/util/util.go
+++ b/util/util.go
@@ -25,7 +25,6 @@ package util
import (
"bufio"
- "math"
"os"
"os/user"
"strconv"
@@ -43,15 +42,15 @@ func Ptr(slice []byte) unsafe.Pointer {
// ByteSlice takes a pointer to some data and views it as a slice of bytes.
// Note, indexing into this slice is unsafe.
func ByteSlice(ptr unsafe.Pointer) []byte {
- // Silce must fix in 32-bit address space to build on 32-bit platforms.
- return (*[math.MaxInt32]byte)(ptr)[:]
+ // Silce must fit in the smallest address space go suppports.
+ return (*[1 << 30]byte)(ptr)[:]
}
// PointerSlice takes a pointer to an array of pointers and views it as a slice
// of pointers. Note, indexing into this slice is unsafe.
func PointerSlice(ptr unsafe.Pointer) []unsafe.Pointer {
- // Silce must fix in 32-bit address space to build on 32-bit platforms.
- return (*[math.MaxInt32 / 4]unsafe.Pointer)(ptr)[:]
+ // Silce must fit in the smallest address space go suppports.
+ return (*[1 << 28]unsafe.Pointer)(ptr)[:]
}
// Index returns the first index i such that inVal == inArray[i].