summaryrefslogtreecommitdiff
path: root/libgo/go/runtime/iface.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/runtime/iface.go')
-rw-r--r--libgo/go/runtime/iface.go5
1 files changed, 3 insertions, 2 deletions
diff --git a/libgo/go/runtime/iface.go b/libgo/go/runtime/iface.go
index 74b54f5209c..877e191a855 100644
--- a/libgo/go/runtime/iface.go
+++ b/libgo/go/runtime/iface.go
@@ -296,6 +296,7 @@ func getitab(lhs, rhs *_type, canfail bool) unsafe.Pointer {
}
// Not found. Grab the lock and try again.
+ lockInit(&itabLock, lockRankItab)
lock(&itabLock)
if m = itabTable.find(lhsi, rhs); m != nil {
unlock(&itabLock)
@@ -514,8 +515,8 @@ func reflectlite_ifaceE2I(inter *interfacetype, e eface, dst *iface) {
dst.data = e.data
}
-// staticbytes is used to avoid convT2E for byte-sized values.
-var staticbytes = [...]byte{
+// staticuint64s is used to avoid allocating in convTx for small integer values.
+var staticuint64s = [...]uint64{
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,