Go prebuilts for linux-x86, version 1.4.1

See README.ANDROID for instructions on rebuilding the prebuilts.

Change-Id: I86db7f4fb3269585078da4d38947ca9126ac813b
diff --git a/pkg/linux_amd64/archive/tar.a b/pkg/linux_amd64/archive/tar.a
new file mode 100644
index 0000000..df501ab
--- /dev/null
+++ b/pkg/linux_amd64/archive/tar.a
Binary files differ
diff --git a/pkg/linux_amd64/archive/zip.a b/pkg/linux_amd64/archive/zip.a
new file mode 100644
index 0000000..7eb79a9
--- /dev/null
+++ b/pkg/linux_amd64/archive/zip.a
Binary files differ
diff --git a/pkg/linux_amd64/bufio.a b/pkg/linux_amd64/bufio.a
new file mode 100644
index 0000000..b6f1925
--- /dev/null
+++ b/pkg/linux_amd64/bufio.a
Binary files differ
diff --git a/pkg/linux_amd64/bytes.a b/pkg/linux_amd64/bytes.a
new file mode 100644
index 0000000..c09289a
--- /dev/null
+++ b/pkg/linux_amd64/bytes.a
Binary files differ
diff --git a/pkg/linux_amd64/cgocall.h b/pkg/linux_amd64/cgocall.h
new file mode 100644
index 0000000..c87a9cd
--- /dev/null
+++ b/pkg/linux_amd64/cgocall.h
@@ -0,0 +1,13 @@
+// Copyright 2009 The Go Authors.  All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+/*
+ * Cgo interface.
+ */
+
+void runtime·cgocall(void (*fn)(void*), void*);
+int32 runtime·cgocall_errno(void (*fn)(void*), void*);
+void runtime·cgocallback(void (*fn)(void), void*, uintptr);
+void *runtime·cmalloc(uintptr);
+void runtime·cfree(void*);
diff --git a/pkg/linux_amd64/cmd/internal/goobj.a b/pkg/linux_amd64/cmd/internal/goobj.a
new file mode 100644
index 0000000..6d16e2e
--- /dev/null
+++ b/pkg/linux_amd64/cmd/internal/goobj.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/internal/objfile.a b/pkg/linux_amd64/cmd/internal/objfile.a
new file mode 100644
index 0000000..b40072b
--- /dev/null
+++ b/pkg/linux_amd64/cmd/internal/objfile.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/internal/rsc.io/arm/armasm.a b/pkg/linux_amd64/cmd/internal/rsc.io/arm/armasm.a
new file mode 100644
index 0000000..2aad4fe
--- /dev/null
+++ b/pkg/linux_amd64/cmd/internal/rsc.io/arm/armasm.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/internal/rsc.io/x86/x86asm.a b/pkg/linux_amd64/cmd/internal/rsc.io/x86/x86asm.a
new file mode 100644
index 0000000..876605d
--- /dev/null
+++ b/pkg/linux_amd64/cmd/internal/rsc.io/x86/x86asm.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/commands.a b/pkg/linux_amd64/cmd/pprof/internal/commands.a
new file mode 100644
index 0000000..a95053a
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/commands.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/driver.a b/pkg/linux_amd64/cmd/pprof/internal/driver.a
new file mode 100644
index 0000000..468dd11
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/driver.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/fetch.a b/pkg/linux_amd64/cmd/pprof/internal/fetch.a
new file mode 100644
index 0000000..0b7359d
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/fetch.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/plugin.a b/pkg/linux_amd64/cmd/pprof/internal/plugin.a
new file mode 100644
index 0000000..4c46d76
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/plugin.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/profile.a b/pkg/linux_amd64/cmd/pprof/internal/profile.a
new file mode 100644
index 0000000..b399331
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/profile.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/report.a b/pkg/linux_amd64/cmd/pprof/internal/report.a
new file mode 100644
index 0000000..c2b516d
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/report.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/svg.a b/pkg/linux_amd64/cmd/pprof/internal/svg.a
new file mode 100644
index 0000000..42f8cc9
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/svg.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/symbolizer.a b/pkg/linux_amd64/cmd/pprof/internal/symbolizer.a
new file mode 100644
index 0000000..b7ec2b2
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/symbolizer.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/symbolz.a b/pkg/linux_amd64/cmd/pprof/internal/symbolz.a
new file mode 100644
index 0000000..185bf3f
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/symbolz.a
Binary files differ
diff --git a/pkg/linux_amd64/cmd/pprof/internal/tempfile.a b/pkg/linux_amd64/cmd/pprof/internal/tempfile.a
new file mode 100644
index 0000000..de3f9b5
--- /dev/null
+++ b/pkg/linux_amd64/cmd/pprof/internal/tempfile.a
Binary files differ
diff --git a/pkg/linux_amd64/compress/bzip2.a b/pkg/linux_amd64/compress/bzip2.a
new file mode 100644
index 0000000..86458c8
--- /dev/null
+++ b/pkg/linux_amd64/compress/bzip2.a
Binary files differ
diff --git a/pkg/linux_amd64/compress/flate.a b/pkg/linux_amd64/compress/flate.a
new file mode 100644
index 0000000..8af1c19
--- /dev/null
+++ b/pkg/linux_amd64/compress/flate.a
Binary files differ
diff --git a/pkg/linux_amd64/compress/gzip.a b/pkg/linux_amd64/compress/gzip.a
new file mode 100644
index 0000000..521447d
--- /dev/null
+++ b/pkg/linux_amd64/compress/gzip.a
Binary files differ
diff --git a/pkg/linux_amd64/compress/lzw.a b/pkg/linux_amd64/compress/lzw.a
new file mode 100644
index 0000000..3026e1f
--- /dev/null
+++ b/pkg/linux_amd64/compress/lzw.a
Binary files differ
diff --git a/pkg/linux_amd64/compress/zlib.a b/pkg/linux_amd64/compress/zlib.a
new file mode 100644
index 0000000..601a6d0
--- /dev/null
+++ b/pkg/linux_amd64/compress/zlib.a
Binary files differ
diff --git a/pkg/linux_amd64/container/heap.a b/pkg/linux_amd64/container/heap.a
new file mode 100644
index 0000000..a98acac
--- /dev/null
+++ b/pkg/linux_amd64/container/heap.a
Binary files differ
diff --git a/pkg/linux_amd64/container/list.a b/pkg/linux_amd64/container/list.a
new file mode 100644
index 0000000..ef0d4a0
--- /dev/null
+++ b/pkg/linux_amd64/container/list.a
Binary files differ
diff --git a/pkg/linux_amd64/container/ring.a b/pkg/linux_amd64/container/ring.a
new file mode 100644
index 0000000..bbfa3b1
--- /dev/null
+++ b/pkg/linux_amd64/container/ring.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto.a b/pkg/linux_amd64/crypto.a
new file mode 100644
index 0000000..7860cfe
--- /dev/null
+++ b/pkg/linux_amd64/crypto.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/aes.a b/pkg/linux_amd64/crypto/aes.a
new file mode 100644
index 0000000..246e5e3
--- /dev/null
+++ b/pkg/linux_amd64/crypto/aes.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/cipher.a b/pkg/linux_amd64/crypto/cipher.a
new file mode 100644
index 0000000..0285655
--- /dev/null
+++ b/pkg/linux_amd64/crypto/cipher.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/des.a b/pkg/linux_amd64/crypto/des.a
new file mode 100644
index 0000000..dec4a76
--- /dev/null
+++ b/pkg/linux_amd64/crypto/des.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/dsa.a b/pkg/linux_amd64/crypto/dsa.a
new file mode 100644
index 0000000..6eb81c1
--- /dev/null
+++ b/pkg/linux_amd64/crypto/dsa.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/ecdsa.a b/pkg/linux_amd64/crypto/ecdsa.a
new file mode 100644
index 0000000..29afaf2
--- /dev/null
+++ b/pkg/linux_amd64/crypto/ecdsa.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/elliptic.a b/pkg/linux_amd64/crypto/elliptic.a
new file mode 100644
index 0000000..57a0372
--- /dev/null
+++ b/pkg/linux_amd64/crypto/elliptic.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/hmac.a b/pkg/linux_amd64/crypto/hmac.a
new file mode 100644
index 0000000..5786828
--- /dev/null
+++ b/pkg/linux_amd64/crypto/hmac.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/md5.a b/pkg/linux_amd64/crypto/md5.a
new file mode 100644
index 0000000..f5db774
--- /dev/null
+++ b/pkg/linux_amd64/crypto/md5.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/rand.a b/pkg/linux_amd64/crypto/rand.a
new file mode 100644
index 0000000..00f3872
--- /dev/null
+++ b/pkg/linux_amd64/crypto/rand.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/rc4.a b/pkg/linux_amd64/crypto/rc4.a
new file mode 100644
index 0000000..91be1da
--- /dev/null
+++ b/pkg/linux_amd64/crypto/rc4.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/rsa.a b/pkg/linux_amd64/crypto/rsa.a
new file mode 100644
index 0000000..70f4187
--- /dev/null
+++ b/pkg/linux_amd64/crypto/rsa.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/sha1.a b/pkg/linux_amd64/crypto/sha1.a
new file mode 100644
index 0000000..0a83007
--- /dev/null
+++ b/pkg/linux_amd64/crypto/sha1.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/sha256.a b/pkg/linux_amd64/crypto/sha256.a
new file mode 100644
index 0000000..d5a699b
--- /dev/null
+++ b/pkg/linux_amd64/crypto/sha256.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/sha512.a b/pkg/linux_amd64/crypto/sha512.a
new file mode 100644
index 0000000..00b560c
--- /dev/null
+++ b/pkg/linux_amd64/crypto/sha512.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/subtle.a b/pkg/linux_amd64/crypto/subtle.a
new file mode 100644
index 0000000..f0fa6e4
--- /dev/null
+++ b/pkg/linux_amd64/crypto/subtle.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/tls.a b/pkg/linux_amd64/crypto/tls.a
new file mode 100644
index 0000000..534a1b3
--- /dev/null
+++ b/pkg/linux_amd64/crypto/tls.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/x509.a b/pkg/linux_amd64/crypto/x509.a
new file mode 100644
index 0000000..3e7a842
--- /dev/null
+++ b/pkg/linux_amd64/crypto/x509.a
Binary files differ
diff --git a/pkg/linux_amd64/crypto/x509/pkix.a b/pkg/linux_amd64/crypto/x509/pkix.a
new file mode 100644
index 0000000..6e6430f
--- /dev/null
+++ b/pkg/linux_amd64/crypto/x509/pkix.a
Binary files differ
diff --git a/pkg/linux_amd64/database/sql.a b/pkg/linux_amd64/database/sql.a
new file mode 100644
index 0000000..ec467f9
--- /dev/null
+++ b/pkg/linux_amd64/database/sql.a
Binary files differ
diff --git a/pkg/linux_amd64/database/sql/driver.a b/pkg/linux_amd64/database/sql/driver.a
new file mode 100644
index 0000000..008a98e
--- /dev/null
+++ b/pkg/linux_amd64/database/sql/driver.a
Binary files differ
diff --git a/pkg/linux_amd64/debug/dwarf.a b/pkg/linux_amd64/debug/dwarf.a
new file mode 100644
index 0000000..6bb67dd
--- /dev/null
+++ b/pkg/linux_amd64/debug/dwarf.a
Binary files differ
diff --git a/pkg/linux_amd64/debug/elf.a b/pkg/linux_amd64/debug/elf.a
new file mode 100644
index 0000000..d64b589
--- /dev/null
+++ b/pkg/linux_amd64/debug/elf.a
Binary files differ
diff --git a/pkg/linux_amd64/debug/gosym.a b/pkg/linux_amd64/debug/gosym.a
new file mode 100644
index 0000000..bccc9c0
--- /dev/null
+++ b/pkg/linux_amd64/debug/gosym.a
Binary files differ
diff --git a/pkg/linux_amd64/debug/macho.a b/pkg/linux_amd64/debug/macho.a
new file mode 100644
index 0000000..f4da485
--- /dev/null
+++ b/pkg/linux_amd64/debug/macho.a
Binary files differ
diff --git a/pkg/linux_amd64/debug/pe.a b/pkg/linux_amd64/debug/pe.a
new file mode 100644
index 0000000..20e6632
--- /dev/null
+++ b/pkg/linux_amd64/debug/pe.a
Binary files differ
diff --git a/pkg/linux_amd64/debug/plan9obj.a b/pkg/linux_amd64/debug/plan9obj.a
new file mode 100644
index 0000000..309595e
--- /dev/null
+++ b/pkg/linux_amd64/debug/plan9obj.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding.a b/pkg/linux_amd64/encoding.a
new file mode 100644
index 0000000..306c625
--- /dev/null
+++ b/pkg/linux_amd64/encoding.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/ascii85.a b/pkg/linux_amd64/encoding/ascii85.a
new file mode 100644
index 0000000..a03c5af
--- /dev/null
+++ b/pkg/linux_amd64/encoding/ascii85.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/asn1.a b/pkg/linux_amd64/encoding/asn1.a
new file mode 100644
index 0000000..7ee38f7
--- /dev/null
+++ b/pkg/linux_amd64/encoding/asn1.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/base32.a b/pkg/linux_amd64/encoding/base32.a
new file mode 100644
index 0000000..9006ef2
--- /dev/null
+++ b/pkg/linux_amd64/encoding/base32.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/base64.a b/pkg/linux_amd64/encoding/base64.a
new file mode 100644
index 0000000..e79c725
--- /dev/null
+++ b/pkg/linux_amd64/encoding/base64.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/binary.a b/pkg/linux_amd64/encoding/binary.a
new file mode 100644
index 0000000..0a4a0ac
--- /dev/null
+++ b/pkg/linux_amd64/encoding/binary.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/csv.a b/pkg/linux_amd64/encoding/csv.a
new file mode 100644
index 0000000..586ad05
--- /dev/null
+++ b/pkg/linux_amd64/encoding/csv.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/gob.a b/pkg/linux_amd64/encoding/gob.a
new file mode 100644
index 0000000..428cc11
--- /dev/null
+++ b/pkg/linux_amd64/encoding/gob.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/hex.a b/pkg/linux_amd64/encoding/hex.a
new file mode 100644
index 0000000..36e3b03
--- /dev/null
+++ b/pkg/linux_amd64/encoding/hex.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/json.a b/pkg/linux_amd64/encoding/json.a
new file mode 100644
index 0000000..3a1c19c
--- /dev/null
+++ b/pkg/linux_amd64/encoding/json.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/pem.a b/pkg/linux_amd64/encoding/pem.a
new file mode 100644
index 0000000..09aab38
--- /dev/null
+++ b/pkg/linux_amd64/encoding/pem.a
Binary files differ
diff --git a/pkg/linux_amd64/encoding/xml.a b/pkg/linux_amd64/encoding/xml.a
new file mode 100644
index 0000000..0702ab3
--- /dev/null
+++ b/pkg/linux_amd64/encoding/xml.a
Binary files differ
diff --git a/pkg/linux_amd64/errors.a b/pkg/linux_amd64/errors.a
new file mode 100644
index 0000000..46f72c1
--- /dev/null
+++ b/pkg/linux_amd64/errors.a
Binary files differ
diff --git a/pkg/linux_amd64/expvar.a b/pkg/linux_amd64/expvar.a
new file mode 100644
index 0000000..fa1fcad
--- /dev/null
+++ b/pkg/linux_amd64/expvar.a
Binary files differ
diff --git a/pkg/linux_amd64/flag.a b/pkg/linux_amd64/flag.a
new file mode 100644
index 0000000..350c6fc
--- /dev/null
+++ b/pkg/linux_amd64/flag.a
Binary files differ
diff --git a/pkg/linux_amd64/fmt.a b/pkg/linux_amd64/fmt.a
new file mode 100644
index 0000000..012ef3a
--- /dev/null
+++ b/pkg/linux_amd64/fmt.a
Binary files differ
diff --git a/pkg/linux_amd64/funcdata.h b/pkg/linux_amd64/funcdata.h
new file mode 100644
index 0000000..d6c14fc
--- /dev/null
+++ b/pkg/linux_amd64/funcdata.h
@@ -0,0 +1,60 @@
+// Copyright 2013 The Go Authors.  All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// This file defines the IDs for PCDATA and FUNCDATA instructions
+// in Go binaries. It is included by both C and assembly, so it must
+// be written using #defines. It is included by the runtime package
+// as well as the compilers.
+//
+// symtab.go also contains a copy of these constants.
+
+#define PCDATA_StackMapIndex 0
+
+#define FUNCDATA_ArgsPointerMaps 0 /* garbage collector blocks */
+#define FUNCDATA_LocalsPointerMaps 1
+#define FUNCDATA_DeadValueMaps 2
+
+// Pseudo-assembly statements.
+
+// GO_ARGS, GO_RESULTS_INITIALIZED, and NO_LOCAL_POINTERS are macros
+// that communicate to the runtime information about the location and liveness
+// of pointers in an assembly function's arguments, results, and stack frame.
+// This communication is only required in assembly functions that make calls
+// to other functions that might be preempted or grow the stack.
+// NOSPLIT functions that make no calls do not need to use these macros.
+
+// GO_ARGS indicates that the Go prototype for this assembly function
+// defines the pointer map for the function's arguments.
+// GO_ARGS should be the first instruction in a function that uses it.
+// It can be omitted if there are no arguments at all.
+// GO_ARGS is inserted implicitly by the linker for any function
+// that also has a Go prototype and therefore is usually not necessary
+// to write explicitly.
+#define GO_ARGS	FUNCDATA $FUNCDATA_ArgsPointerMaps, go_args_stackmap(SB)
+
+// GO_RESULTS_INITIALIZED indicates that the assembly function
+// has initialized the stack space for its results and that those results
+// should be considered live for the remainder of the function.
+#define GO_RESULTS_INITIALIZED	FUNCDATA PCDATA $PCDATA_StackMapIndex, 1
+
+// NO_LOCAL_POINTERS indicates that the assembly function stores
+// no pointers to heap objects in its local stack variables.
+#define NO_LOCAL_POINTERS	FUNCDATA $FUNCDATA_LocalsPointerMaps, runtime·no_pointers_stackmap(SB)
+
+// ArgsSizeUnknown is set in Func.argsize to mark all functions
+// whose argument size is unknown (C vararg functions, and
+// assembly code without an explicit specification).
+// This value is generated by the compiler, assembler, or linker.
+#define ArgsSizeUnknown 0x80000000
+
+/*c2go
+enum {
+	PCDATA_ArgSize = 0,
+	PCDATA_StackMapIndex = 1,
+	FUNCDATA_ArgsPointerMaps = 0,
+	FUNCDATA_LocalsPointerMaps = 1,
+	FUNCDATA_DeadValueMaps = 2,
+	ArgsSizeUnknown = 0x80000000,
+};
+*/
diff --git a/pkg/linux_amd64/go/ast.a b/pkg/linux_amd64/go/ast.a
new file mode 100644
index 0000000..68de3b5
--- /dev/null
+++ b/pkg/linux_amd64/go/ast.a
Binary files differ
diff --git a/pkg/linux_amd64/go/build.a b/pkg/linux_amd64/go/build.a
new file mode 100644
index 0000000..e0b7588
--- /dev/null
+++ b/pkg/linux_amd64/go/build.a
Binary files differ
diff --git a/pkg/linux_amd64/go/doc.a b/pkg/linux_amd64/go/doc.a
new file mode 100644
index 0000000..2a91df9
--- /dev/null
+++ b/pkg/linux_amd64/go/doc.a
Binary files differ
diff --git a/pkg/linux_amd64/go/format.a b/pkg/linux_amd64/go/format.a
new file mode 100644
index 0000000..b864f41
--- /dev/null
+++ b/pkg/linux_amd64/go/format.a
Binary files differ
diff --git a/pkg/linux_amd64/go/parser.a b/pkg/linux_amd64/go/parser.a
new file mode 100644
index 0000000..acbbab4
--- /dev/null
+++ b/pkg/linux_amd64/go/parser.a
Binary files differ
diff --git a/pkg/linux_amd64/go/printer.a b/pkg/linux_amd64/go/printer.a
new file mode 100644
index 0000000..f7c6713
--- /dev/null
+++ b/pkg/linux_amd64/go/printer.a
Binary files differ
diff --git a/pkg/linux_amd64/go/scanner.a b/pkg/linux_amd64/go/scanner.a
new file mode 100644
index 0000000..7640ee9
--- /dev/null
+++ b/pkg/linux_amd64/go/scanner.a
Binary files differ
diff --git a/pkg/linux_amd64/go/token.a b/pkg/linux_amd64/go/token.a
new file mode 100644
index 0000000..6c40369
--- /dev/null
+++ b/pkg/linux_amd64/go/token.a
Binary files differ
diff --git a/pkg/linux_amd64/hash.a b/pkg/linux_amd64/hash.a
new file mode 100644
index 0000000..46c8e46
--- /dev/null
+++ b/pkg/linux_amd64/hash.a
Binary files differ
diff --git a/pkg/linux_amd64/hash/adler32.a b/pkg/linux_amd64/hash/adler32.a
new file mode 100644
index 0000000..d4e5b60
--- /dev/null
+++ b/pkg/linux_amd64/hash/adler32.a
Binary files differ
diff --git a/pkg/linux_amd64/hash/crc32.a b/pkg/linux_amd64/hash/crc32.a
new file mode 100644
index 0000000..af1b5c8
--- /dev/null
+++ b/pkg/linux_amd64/hash/crc32.a
Binary files differ
diff --git a/pkg/linux_amd64/hash/crc64.a b/pkg/linux_amd64/hash/crc64.a
new file mode 100644
index 0000000..4c8c96b
--- /dev/null
+++ b/pkg/linux_amd64/hash/crc64.a
Binary files differ
diff --git a/pkg/linux_amd64/hash/fnv.a b/pkg/linux_amd64/hash/fnv.a
new file mode 100644
index 0000000..302566e
--- /dev/null
+++ b/pkg/linux_amd64/hash/fnv.a
Binary files differ
diff --git a/pkg/linux_amd64/html.a b/pkg/linux_amd64/html.a
new file mode 100644
index 0000000..b667af8
--- /dev/null
+++ b/pkg/linux_amd64/html.a
Binary files differ
diff --git a/pkg/linux_amd64/html/template.a b/pkg/linux_amd64/html/template.a
new file mode 100644
index 0000000..4b12558
--- /dev/null
+++ b/pkg/linux_amd64/html/template.a
Binary files differ
diff --git a/pkg/linux_amd64/image.a b/pkg/linux_amd64/image.a
new file mode 100644
index 0000000..3c78b63
--- /dev/null
+++ b/pkg/linux_amd64/image.a
Binary files differ
diff --git a/pkg/linux_amd64/image/color.a b/pkg/linux_amd64/image/color.a
new file mode 100644
index 0000000..19e8c77
--- /dev/null
+++ b/pkg/linux_amd64/image/color.a
Binary files differ
diff --git a/pkg/linux_amd64/image/color/palette.a b/pkg/linux_amd64/image/color/palette.a
new file mode 100644
index 0000000..122a86e
--- /dev/null
+++ b/pkg/linux_amd64/image/color/palette.a
Binary files differ
diff --git a/pkg/linux_amd64/image/draw.a b/pkg/linux_amd64/image/draw.a
new file mode 100644
index 0000000..810bb72
--- /dev/null
+++ b/pkg/linux_amd64/image/draw.a
Binary files differ
diff --git a/pkg/linux_amd64/image/gif.a b/pkg/linux_amd64/image/gif.a
new file mode 100644
index 0000000..e9ed9c8
--- /dev/null
+++ b/pkg/linux_amd64/image/gif.a
Binary files differ
diff --git a/pkg/linux_amd64/image/jpeg.a b/pkg/linux_amd64/image/jpeg.a
new file mode 100644
index 0000000..75373ce
--- /dev/null
+++ b/pkg/linux_amd64/image/jpeg.a
Binary files differ
diff --git a/pkg/linux_amd64/image/png.a b/pkg/linux_amd64/image/png.a
new file mode 100644
index 0000000..a822ca9
--- /dev/null
+++ b/pkg/linux_amd64/image/png.a
Binary files differ
diff --git a/pkg/linux_amd64/index/suffixarray.a b/pkg/linux_amd64/index/suffixarray.a
new file mode 100644
index 0000000..7c40251
--- /dev/null
+++ b/pkg/linux_amd64/index/suffixarray.a
Binary files differ
diff --git a/pkg/linux_amd64/internal/syscall.a b/pkg/linux_amd64/internal/syscall.a
new file mode 100644
index 0000000..d0964df
--- /dev/null
+++ b/pkg/linux_amd64/internal/syscall.a
Binary files differ
diff --git a/pkg/linux_amd64/io.a b/pkg/linux_amd64/io.a
new file mode 100644
index 0000000..e75939b
--- /dev/null
+++ b/pkg/linux_amd64/io.a
Binary files differ
diff --git a/pkg/linux_amd64/io/ioutil.a b/pkg/linux_amd64/io/ioutil.a
new file mode 100644
index 0000000..40c04aa
--- /dev/null
+++ b/pkg/linux_amd64/io/ioutil.a
Binary files differ
diff --git a/pkg/linux_amd64/log.a b/pkg/linux_amd64/log.a
new file mode 100644
index 0000000..8f9854c
--- /dev/null
+++ b/pkg/linux_amd64/log.a
Binary files differ
diff --git a/pkg/linux_amd64/log/syslog.a b/pkg/linux_amd64/log/syslog.a
new file mode 100644
index 0000000..e643119
--- /dev/null
+++ b/pkg/linux_amd64/log/syslog.a
Binary files differ
diff --git a/pkg/linux_amd64/math.a b/pkg/linux_amd64/math.a
new file mode 100644
index 0000000..c2dec01
--- /dev/null
+++ b/pkg/linux_amd64/math.a
Binary files differ
diff --git a/pkg/linux_amd64/math/big.a b/pkg/linux_amd64/math/big.a
new file mode 100644
index 0000000..1d16ace
--- /dev/null
+++ b/pkg/linux_amd64/math/big.a
Binary files differ
diff --git a/pkg/linux_amd64/math/cmplx.a b/pkg/linux_amd64/math/cmplx.a
new file mode 100644
index 0000000..e3b1959
--- /dev/null
+++ b/pkg/linux_amd64/math/cmplx.a
Binary files differ
diff --git a/pkg/linux_amd64/math/rand.a b/pkg/linux_amd64/math/rand.a
new file mode 100644
index 0000000..d4fdf0a
--- /dev/null
+++ b/pkg/linux_amd64/math/rand.a
Binary files differ
diff --git a/pkg/linux_amd64/mime.a b/pkg/linux_amd64/mime.a
new file mode 100644
index 0000000..97e0273
--- /dev/null
+++ b/pkg/linux_amd64/mime.a
Binary files differ
diff --git a/pkg/linux_amd64/mime/multipart.a b/pkg/linux_amd64/mime/multipart.a
new file mode 100644
index 0000000..2135f14
--- /dev/null
+++ b/pkg/linux_amd64/mime/multipart.a
Binary files differ
diff --git a/pkg/linux_amd64/net.a b/pkg/linux_amd64/net.a
new file mode 100644
index 0000000..ec5bb21
--- /dev/null
+++ b/pkg/linux_amd64/net.a
Binary files differ
diff --git a/pkg/linux_amd64/net/http.a b/pkg/linux_amd64/net/http.a
new file mode 100644
index 0000000..0375630
--- /dev/null
+++ b/pkg/linux_amd64/net/http.a
Binary files differ
diff --git a/pkg/linux_amd64/net/http/cgi.a b/pkg/linux_amd64/net/http/cgi.a
new file mode 100644
index 0000000..332b02b
--- /dev/null
+++ b/pkg/linux_amd64/net/http/cgi.a
Binary files differ
diff --git a/pkg/linux_amd64/net/http/cookiejar.a b/pkg/linux_amd64/net/http/cookiejar.a
new file mode 100644
index 0000000..d0f034e
--- /dev/null
+++ b/pkg/linux_amd64/net/http/cookiejar.a
Binary files differ
diff --git a/pkg/linux_amd64/net/http/fcgi.a b/pkg/linux_amd64/net/http/fcgi.a
new file mode 100644
index 0000000..4b97c4e
--- /dev/null
+++ b/pkg/linux_amd64/net/http/fcgi.a
Binary files differ
diff --git a/pkg/linux_amd64/net/http/httptest.a b/pkg/linux_amd64/net/http/httptest.a
new file mode 100644
index 0000000..d351f7c
--- /dev/null
+++ b/pkg/linux_amd64/net/http/httptest.a
Binary files differ
diff --git a/pkg/linux_amd64/net/http/httputil.a b/pkg/linux_amd64/net/http/httputil.a
new file mode 100644
index 0000000..c5338b3
--- /dev/null
+++ b/pkg/linux_amd64/net/http/httputil.a
Binary files differ
diff --git a/pkg/linux_amd64/net/http/internal.a b/pkg/linux_amd64/net/http/internal.a
new file mode 100644
index 0000000..e7bcdf4
--- /dev/null
+++ b/pkg/linux_amd64/net/http/internal.a
Binary files differ
diff --git a/pkg/linux_amd64/net/http/pprof.a b/pkg/linux_amd64/net/http/pprof.a
new file mode 100644
index 0000000..b8fd348
--- /dev/null
+++ b/pkg/linux_amd64/net/http/pprof.a
Binary files differ
diff --git a/pkg/linux_amd64/net/mail.a b/pkg/linux_amd64/net/mail.a
new file mode 100644
index 0000000..c9a6cb0
--- /dev/null
+++ b/pkg/linux_amd64/net/mail.a
Binary files differ
diff --git a/pkg/linux_amd64/net/rpc.a b/pkg/linux_amd64/net/rpc.a
new file mode 100644
index 0000000..ddff627
--- /dev/null
+++ b/pkg/linux_amd64/net/rpc.a
Binary files differ
diff --git a/pkg/linux_amd64/net/rpc/jsonrpc.a b/pkg/linux_amd64/net/rpc/jsonrpc.a
new file mode 100644
index 0000000..616f5c9
--- /dev/null
+++ b/pkg/linux_amd64/net/rpc/jsonrpc.a
Binary files differ
diff --git a/pkg/linux_amd64/net/smtp.a b/pkg/linux_amd64/net/smtp.a
new file mode 100644
index 0000000..b60e594
--- /dev/null
+++ b/pkg/linux_amd64/net/smtp.a
Binary files differ
diff --git a/pkg/linux_amd64/net/textproto.a b/pkg/linux_amd64/net/textproto.a
new file mode 100644
index 0000000..e324aa0
--- /dev/null
+++ b/pkg/linux_amd64/net/textproto.a
Binary files differ
diff --git a/pkg/linux_amd64/net/url.a b/pkg/linux_amd64/net/url.a
new file mode 100644
index 0000000..127c873
--- /dev/null
+++ b/pkg/linux_amd64/net/url.a
Binary files differ
diff --git a/pkg/linux_amd64/os.a b/pkg/linux_amd64/os.a
new file mode 100644
index 0000000..28300f2
--- /dev/null
+++ b/pkg/linux_amd64/os.a
Binary files differ
diff --git a/pkg/linux_amd64/os/exec.a b/pkg/linux_amd64/os/exec.a
new file mode 100644
index 0000000..2946f33
--- /dev/null
+++ b/pkg/linux_amd64/os/exec.a
Binary files differ
diff --git a/pkg/linux_amd64/os/signal.a b/pkg/linux_amd64/os/signal.a
new file mode 100644
index 0000000..5c12949
--- /dev/null
+++ b/pkg/linux_amd64/os/signal.a
Binary files differ
diff --git a/pkg/linux_amd64/os/user.a b/pkg/linux_amd64/os/user.a
new file mode 100644
index 0000000..35997c0
--- /dev/null
+++ b/pkg/linux_amd64/os/user.a
Binary files differ
diff --git a/pkg/linux_amd64/path.a b/pkg/linux_amd64/path.a
new file mode 100644
index 0000000..31bac94
--- /dev/null
+++ b/pkg/linux_amd64/path.a
Binary files differ
diff --git a/pkg/linux_amd64/path/filepath.a b/pkg/linux_amd64/path/filepath.a
new file mode 100644
index 0000000..deedfae
--- /dev/null
+++ b/pkg/linux_amd64/path/filepath.a
Binary files differ
diff --git a/pkg/linux_amd64/reflect.a b/pkg/linux_amd64/reflect.a
new file mode 100644
index 0000000..fd0ad95
--- /dev/null
+++ b/pkg/linux_amd64/reflect.a
Binary files differ
diff --git a/pkg/linux_amd64/regexp.a b/pkg/linux_amd64/regexp.a
new file mode 100644
index 0000000..59412b3
--- /dev/null
+++ b/pkg/linux_amd64/regexp.a
Binary files differ
diff --git a/pkg/linux_amd64/regexp/syntax.a b/pkg/linux_amd64/regexp/syntax.a
new file mode 100644
index 0000000..76608aa
--- /dev/null
+++ b/pkg/linux_amd64/regexp/syntax.a
Binary files differ
diff --git a/pkg/linux_amd64/runtime.a b/pkg/linux_amd64/runtime.a
new file mode 100644
index 0000000..ecd8b29
--- /dev/null
+++ b/pkg/linux_amd64/runtime.a
Binary files differ
diff --git a/pkg/linux_amd64/runtime.h b/pkg/linux_amd64/runtime.h
new file mode 100644
index 0000000..177a128
--- /dev/null
+++ b/pkg/linux_amd64/runtime.h
@@ -0,0 +1,1132 @@
+// Copyright 2009 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+/*
+ * basic types
+ */
+typedef	signed char		int8;
+typedef	unsigned char		uint8;
+typedef	signed short		int16;
+typedef	unsigned short		uint16;
+typedef	signed int		int32;
+typedef	unsigned int		uint32;
+typedef	signed long long int	int64;
+typedef	unsigned long long int	uint64;
+typedef	float			float32;
+typedef	double			float64;
+
+#ifdef _64BIT
+typedef	uint64		uintptr;
+typedef	int64		intptr;
+typedef	int64		intgo; // Go's int
+typedef	uint64		uintgo; // Go's uint
+#else
+typedef	uint32		uintptr;
+typedef	int32		intptr;
+typedef	int32		intgo; // Go's int
+typedef	uint32		uintgo; // Go's uint
+#endif
+
+#ifdef _64BITREG
+typedef	uint64		uintreg;
+#else
+typedef	uint32		uintreg;
+#endif
+
+/*
+ * get rid of C types
+ * the / / / forces a syntax error immediately,
+ * which will show "last name: XXunsigned".
+ */
+#define	unsigned		XXunsigned / / /
+#define	signed			XXsigned / / /
+#define	char			XXchar / / /
+#define	short			XXshort / / /
+#define	int			XXint / / /
+#define	long			XXlong / / /
+#define	float			XXfloat / / /
+#define	double			XXdouble / / /
+
+/*
+ * defined types
+ */
+typedef	uint8			bool;
+typedef	uint8			byte;
+typedef	struct	Func		Func;
+typedef	struct	G		G;
+typedef	struct	Gobuf		Gobuf;
+typedef	struct	SudoG		SudoG;
+typedef	struct	Mutex		Mutex;
+typedef	struct	M		M;
+typedef	struct	P		P;
+typedef	struct	SchedT	SchedT;
+typedef	struct	Note		Note;
+typedef	struct	Slice		Slice;
+typedef	struct	String		String;
+typedef	struct	FuncVal		FuncVal;
+typedef	struct	SigTab		SigTab;
+typedef	struct	MCache		MCache;
+typedef	struct	FixAlloc	FixAlloc;
+typedef	struct	Iface		Iface;
+typedef	struct	Itab		Itab;
+typedef	struct	InterfaceType	InterfaceType;
+typedef	struct	Eface		Eface;
+typedef	struct	Type		Type;
+typedef	struct	PtrType		PtrType;
+typedef	struct	ChanType	ChanType;
+typedef	struct	MapType		MapType;
+typedef	struct	Defer		Defer;
+typedef	struct	Panic		Panic;
+typedef	struct	Hmap		Hmap;
+typedef	struct	Hiter		Hiter;
+typedef	struct	Hchan		Hchan;
+typedef	struct	Complex64	Complex64;
+typedef	struct	Complex128	Complex128;
+typedef	struct	LibCall		LibCall;
+typedef	struct	WinCallbackContext	WinCallbackContext;
+typedef	struct	GCStats		GCStats;
+typedef	struct	LFNode		LFNode;
+typedef	struct	ParFor		ParFor;
+typedef	struct	ParForThread	ParForThread;
+typedef	struct	CgoMal		CgoMal;
+typedef	struct	PollDesc	PollDesc;
+typedef	struct	DebugVars	DebugVars;
+typedef	struct	ForceGCState	ForceGCState;
+typedef	struct	Stack		Stack;
+
+/*
+ * Per-CPU declaration.
+ *
+ * "extern register" is a special storage class implemented by 6c, 8c, etc.
+ * On the ARM, it is an actual register; elsewhere it is a slot in thread-
+ * local storage indexed by a pseudo-register TLS. See zasmhdr in
+ * src/cmd/dist/buildruntime.c for details, and be aware that the linker may
+ * make further OS-specific changes to the compiler's output. For example,
+ * 6l/linux rewrites 0(TLS) as -8(FS).
+ *
+ * Every C file linked into a Go program must include runtime.h so that the
+ * C compiler (6c, 8c, etc.) knows to avoid other uses of these dedicated
+ * registers. The Go compiler (6g, 8g, etc.) knows to avoid them.
+ */
+extern	register	G*	g;
+
+/*
+ * defined constants
+ */
+enum
+{
+	// G status
+	//
+	// If you add to this list, add to the list
+	// of "okay during garbage collection" status
+	// in mgc0.c too.
+	Gidle,                                 // 0
+	Grunnable,                             // 1 runnable and on a run queue
+	Grunning,                              // 2
+	Gsyscall,                              // 3
+	Gwaiting,                              // 4
+	Gmoribund_unused,                      // 5 currently unused, but hardcoded in gdb scripts
+	Gdead,                                 // 6
+	Genqueue,                              // 7 Only the Gscanenqueue is used.
+	Gcopystack,                            // 8 in this state when newstack is moving the stack
+	// the following encode that the GC is scanning the stack and what to do when it is done 
+	Gscan = 0x1000,                        // atomicstatus&~Gscan = the non-scan state,
+	// Gscanidle =     Gscan + Gidle,      // Not used. Gidle only used with newly malloced gs
+	Gscanrunnable = Gscan + Grunnable,     //  0x1001 When scanning complets make Grunnable (it is already on run queue)
+	Gscanrunning =  Gscan + Grunning,      //  0x1002 Used to tell preemption newstack routine to scan preempted stack.
+	Gscansyscall =  Gscan + Gsyscall,      //  0x1003 When scanning completes make is Gsyscall
+	Gscanwaiting =  Gscan + Gwaiting,      //  0x1004 When scanning completes make it Gwaiting
+	// Gscanmoribund_unused,               //  not possible
+	// Gscandead,                          //  not possible
+	Gscanenqueue = Gscan + Genqueue,       //  When scanning completes make it Grunnable and put on runqueue
+};
+enum
+{
+	// P status
+	Pidle,
+	Prunning,
+	Psyscall,
+	Pgcstop,
+	Pdead,
+};
+enum
+{
+	true	= 1,
+	false	= 0,
+};
+enum
+{
+	PtrSize = sizeof(void*),
+};
+/*
+ * structures
+ */
+struct	Mutex
+{
+	// Futex-based impl treats it as uint32 key,
+	// while sema-based impl as M* waitm.
+	// Used to be a union, but unions break precise GC.
+	uintptr	key;
+};
+struct	Note
+{
+	// Futex-based impl treats it as uint32 key,
+	// while sema-based impl as M* waitm.
+	// Used to be a union, but unions break precise GC.
+	uintptr	key;
+};
+struct String
+{
+	byte*	str;
+	intgo	len;
+};
+struct FuncVal
+{
+	void	(*fn)(void);
+	// variable-size, fn-specific data here
+};
+struct Iface
+{
+	Itab*	tab;
+	void*	data;
+};
+struct Eface
+{
+	Type*	type;
+	void*	data;
+};
+struct Complex64
+{
+	float32	real;
+	float32	imag;
+};
+struct Complex128
+{
+	float64	real;
+	float64	imag;
+};
+
+struct	Slice
+{				// must not move anything
+	byte*	array;		// actual data
+	uintgo	len;		// number of elements
+	uintgo	cap;		// allocated number of elements
+};
+struct	Gobuf
+{
+	// The offsets of sp, pc, and g are known to (hard-coded in) libmach.
+	uintptr	sp;
+	uintptr	pc;
+	G*	g;
+	void*	ctxt; // this has to be a pointer so that GC scans it
+	uintreg	ret;
+	uintptr	lr;
+};
+// Known to compiler.
+// Changes here must also be made in src/cmd/gc/select.c's selecttype.
+struct	SudoG
+{
+	G*	g;
+	uint32*	selectdone;
+	SudoG*	next;
+	SudoG*	prev;
+	void*	elem;		// data element
+	int64	releasetime;
+	int32	nrelease;	// -1 for acquire
+	SudoG*	waitlink;	// G.waiting list
+};
+struct	GCStats
+{
+	// the struct must consist of only uint64's,
+	// because it is casted to uint64[].
+	uint64	nhandoff;
+	uint64	nhandoffcnt;
+	uint64	nprocyield;
+	uint64	nosyield;
+	uint64	nsleep;
+};
+
+struct	LibCall
+{
+	uintptr	fn;
+	uintptr	n;	// number of parameters
+	uintptr	args;	// parameters
+	uintptr	r1;	// return values
+	uintptr	r2;
+	uintptr	err;	// error number
+};
+
+// describes how to handle callback
+struct	WinCallbackContext
+{
+	void*	gobody;		// Go function to call
+	uintptr	argsize;	// callback arguments size (in bytes)
+	uintptr	restorestack;	// adjust stack on return by (in bytes) (386 only)
+	bool	cleanstack;
+};
+
+// Stack describes a Go execution stack.
+// The bounds of the stack are exactly [lo, hi),
+// with no implicit data structures on either side.
+struct	Stack
+{
+	uintptr	lo;
+	uintptr	hi;
+};
+
+struct	G
+{
+	// Stack parameters.
+	// stack describes the actual stack memory: [stack.lo, stack.hi).
+	// stackguard0 is the stack pointer compared in the Go stack growth prologue.
+	// It is stack.lo+StackGuard normally, but can be StackPreempt to trigger a preemption.
+	// stackguard1 is the stack pointer compared in the C stack growth prologue.
+	// It is stack.lo+StackGuard on g0 and gsignal stacks.
+	// It is ~0 on other goroutine stacks, to trigger a call to morestackc (and crash).
+	Stack	stack;	// offset known to runtime/cgo
+	uintptr	stackguard0;	// offset known to liblink
+	uintptr	stackguard1;	// offset known to liblink
+
+	Panic*	panic;	// innermost panic - offset known to liblink
+	Defer*	defer;	// innermost defer
+	Gobuf	sched;
+	uintptr	syscallsp;	// if status==Gsyscall, syscallsp = sched.sp to use during gc
+	uintptr	syscallpc;	// if status==Gsyscall, syscallpc = sched.pc to use during gc
+	void*	param;		// passed parameter on wakeup
+	uint32	atomicstatus;
+	int64	goid;
+	int64	waitsince;	// approx time when the G become blocked
+	String	waitreason;	// if status==Gwaiting
+	G*	schedlink;
+	bool	issystem;	// do not output in stack dump, ignore in deadlock detector
+	bool	preempt;	// preemption signal, duplicates stackguard0 = StackPreempt
+	bool	paniconfault;	// panic (instead of crash) on unexpected fault address
+	bool	preemptscan;    // preempted g does scan for GC
+	bool	gcworkdone;     // debug: cleared at begining of gc work phase cycle, set by gcphasework, tested at end of cycle
+	bool	throwsplit; // must not split stack
+	int8	raceignore;	// ignore race detection events
+	M*	m;		// for debuggers, but offset not hard-coded
+	M*	lockedm;
+	int32	sig;
+	Slice	writebuf;
+	uintptr	sigcode0;
+	uintptr	sigcode1;
+	uintptr	sigpc;
+	uintptr	gopc;		// pc of go statement that created this goroutine
+	uintptr	racectx;
+	SudoG*	waiting;	// sudog structures this G is waiting on (that have a valid elem ptr)
+	uintptr	end[];
+};
+
+struct	M
+{
+	G*	g0;		// goroutine with scheduling stack
+	Gobuf	morebuf;	// gobuf arg to morestack
+
+	// Fields not known to debuggers.
+	uint64	procid;		// for debuggers, but offset not hard-coded
+	G*	gsignal;	// signal-handling G
+	uintptr	tls[4];		// thread-local storage (for x86 extern register)
+	void	(*mstartfn)(void);
+	G*	curg;		// current running goroutine
+	G*	caughtsig;	// goroutine running during fatal signal
+	P*	p;		// attached P for executing Go code (nil if not executing Go code)
+	P*	nextp;
+	int32	id;
+	int32	mallocing;
+	int32	throwing;
+	int32	gcing;
+	int32	locks;
+	int32	softfloat;
+	int32	dying;
+	int32	profilehz;
+	int32	helpgc;
+	bool	spinning;	// M is out of work and is actively looking for work
+	bool	blocked;	// M is blocked on a Note
+	uint32	fastrand;
+	uint64	ncgocall;	// number of cgo calls in total
+	int32	ncgo;		// number of cgo calls currently in progress
+	CgoMal*	cgomal;
+	Note	park;
+	M*	alllink;	// on allm
+	M*	schedlink;
+	uint32	machport;	// Return address for Mach IPC (OS X)
+	MCache*	mcache;
+	G*	lockedg;
+	uintptr	createstack[32];// Stack that created this thread.
+	uint32	freglo[16];	// D[i] lsb and F[i]
+	uint32	freghi[16];	// D[i] msb and F[i+16]
+	uint32	fflag;		// floating point compare flags
+	uint32	locked;		// tracking for LockOSThread
+	M*	nextwaitm;	// next M waiting for lock
+	uintptr	waitsema;	// semaphore for parking on locks
+	uint32	waitsemacount;
+	uint32	waitsemalock;
+	GCStats	gcstats;
+	bool	needextram;
+	uint8	traceback;
+	bool	(*waitunlockf)(G*, void*);
+	void*	waitlock;
+	uintptr scalararg[4];	// scalar argument/return for mcall
+	void*   ptrarg[4];	// pointer argument/return for mcall
+#ifdef GOOS_windows
+	uintptr	thread;		// thread handle
+	// these are here because they are too large to be on the stack
+	// of low-level NOSPLIT functions.
+	LibCall	libcall;
+	uintptr	libcallpc;	// for cpu profiler
+	uintptr	libcallsp;
+	G*	libcallg;
+#endif
+#ifdef GOOS_solaris
+	int32*	perrno; 	// pointer to TLS errno
+	// these are here because they are too large to be on the stack
+	// of low-level NOSPLIT functions.
+	LibCall	libcall;
+	struct MTs {
+		int64	tv_sec;
+		int64	tv_nsec;
+	} ts;
+	struct MScratch {
+		uintptr v[6];
+	} scratch;
+#endif
+#ifdef GOOS_plan9
+	int8*	notesig;
+	byte*	errstr;
+#endif
+	uintptr	end[];
+};
+
+struct P
+{
+	Mutex	lock;
+
+	int32	id;
+	uint32	status;		// one of Pidle/Prunning/...
+	P*	link;
+	uint32	schedtick;	// incremented on every scheduler call
+	uint32	syscalltick;	// incremented on every system call
+	M*	m;		// back-link to associated M (nil if idle)
+	MCache*	mcache;
+	Defer*	deferpool[5];	// pool of available Defer structs of different sizes (see panic.c)
+
+	// Cache of goroutine ids, amortizes accesses to runtime·sched.goidgen.
+	uint64	goidcache;
+	uint64	goidcacheend;
+
+	// Queue of runnable goroutines.
+	uint32	runqhead;
+	uint32	runqtail;
+	G*	runq[256];
+
+	// Available G's (status == Gdead)
+	G*	gfree;
+	int32	gfreecnt;
+
+	byte	pad[64];
+};
+
+enum {
+	// The max value of GOMAXPROCS.
+	// There are no fundamental restrictions on the value.
+	MaxGomaxprocs = 1<<8,
+};
+
+struct	SchedT
+{
+	Mutex	lock;
+
+	uint64	goidgen;
+
+	M*	midle;	 // idle m's waiting for work
+	int32	nmidle;	 // number of idle m's waiting for work
+	int32	nmidlelocked; // number of locked m's waiting for work
+	int32	mcount;	 // number of m's that have been created
+	int32	maxmcount;	// maximum number of m's allowed (or die)
+
+	P*	pidle;  // idle P's
+	uint32	npidle;
+	uint32	nmspinning;
+
+	// Global runnable queue.
+	G*	runqhead;
+	G*	runqtail;
+	int32	runqsize;
+
+	// Global cache of dead G's.
+	Mutex	gflock;
+	G*	gfree;
+	int32	ngfree;
+
+	uint32	gcwaiting;	// gc is waiting to run
+	int32	stopwait;
+	Note	stopnote;
+	uint32	sysmonwait;
+	Note	sysmonnote;
+	uint64	lastpoll;
+
+	int32	profilehz;	// cpu profiling rate
+};
+
+// The m->locked word holds two pieces of state counting active calls to LockOSThread/lockOSThread.
+// The low bit (LockExternal) is a boolean reporting whether any LockOSThread call is active.
+// External locks are not recursive; a second lock is silently ignored.
+// The upper bits of m->lockedcount record the nesting depth of calls to lockOSThread
+// (counting up by LockInternal), popped by unlockOSThread (counting down by LockInternal).
+// Internal locks can be recursive. For instance, a lock for cgo can occur while the main
+// goroutine is holding the lock during the initialization phase.
+enum
+{
+	LockExternal = 1,
+	LockInternal = 2,
+};
+
+struct	SigTab
+{
+	int32	flags;
+	int8	*name;
+};
+enum
+{
+	SigNotify = 1<<0,	// let signal.Notify have signal, even if from kernel
+	SigKill = 1<<1,		// if signal.Notify doesn't take it, exit quietly
+	SigThrow = 1<<2,	// if signal.Notify doesn't take it, exit loudly
+	SigPanic = 1<<3,	// if the signal is from the kernel, panic
+	SigDefault = 1<<4,	// if the signal isn't explicitly requested, don't monitor it
+	SigHandling = 1<<5,	// our signal handler is registered
+	SigIgnored = 1<<6,	// the signal was ignored before we registered for it
+	SigGoExit = 1<<7,	// cause all runtime procs to exit (only used on Plan 9).
+};
+
+// Layout of in-memory per-function information prepared by linker
+// See http://golang.org/s/go12symtab.
+// Keep in sync with linker and with ../../libmach/sym.c
+// and with package debug/gosym and with symtab.go in package runtime.
+struct	Func
+{
+	uintptr	entry;	// start pc
+	int32	nameoff;// function name
+	
+	int32	args;	// in/out args size
+	int32	frame;	// legacy frame size; use pcsp if possible
+
+	int32	pcsp;
+	int32	pcfile;
+	int32	pcln;
+	int32	npcdata;
+	int32	nfuncdata;
+};
+
+// layout of Itab known to compilers
+// allocated in non-garbage-collected memory
+struct	Itab
+{
+	InterfaceType*	inter;
+	Type*	type;
+	Itab*	link;
+	int32	bad;
+	int32	unused;
+	void	(*fun[])(void);
+};
+
+#ifdef GOOS_nacl
+enum {
+   NaCl = 1,
+};
+#else
+enum {
+   NaCl = 0,
+};
+#endif
+
+#ifdef GOOS_windows
+enum {
+   Windows = 1
+};
+#else
+enum {
+   Windows = 0
+};
+#endif
+#ifdef GOOS_solaris
+enum {
+   Solaris = 1
+};
+#else
+enum {
+   Solaris = 0
+};
+#endif
+#ifdef GOOS_plan9
+enum {
+   Plan9 = 1
+};
+#else
+enum {
+   Plan9 = 0
+};
+#endif
+
+// Lock-free stack node.
+struct LFNode
+{
+	LFNode	*next;
+	uintptr	pushcnt;
+};
+
+// Parallel for descriptor.
+struct ParFor
+{
+	void (*body)(ParFor*, uint32);	// executed for each element
+	uint32 done;			// number of idle threads
+	uint32 nthr;			// total number of threads
+	uint32 nthrmax;			// maximum number of threads
+	uint32 thrseq;			// thread id sequencer
+	uint32 cnt;			// iteration space [0, cnt)
+	void *ctx;			// arbitrary user context
+	bool wait;			// if true, wait while all threads finish processing,
+					// otherwise parfor may return while other threads are still working
+	ParForThread *thr;		// array of thread descriptors
+	uint32 pad;			// to align ParForThread.pos for 64-bit atomic operations
+	// stats
+	uint64 nsteal;
+	uint64 nstealcnt;
+	uint64 nprocyield;
+	uint64 nosyield;
+	uint64 nsleep;
+};
+
+// Track memory allocated by code not written in Go during a cgo call,
+// so that the garbage collector can see them.
+struct CgoMal
+{
+	CgoMal	*next;
+	void	*alloc;
+};
+
+// Holds variables parsed from GODEBUG env var.
+struct DebugVars
+{
+	int32	allocfreetrace;
+	int32	efence;
+	int32	gctrace;
+	int32	gcdead;
+	int32	scheddetail;
+	int32	schedtrace;
+	int32	scavenge;
+};
+
+// Indicates to write barrier and sychronization task to preform.
+enum
+{                   // Synchronization            Write barrier
+	GCoff,      // stop and start             nop
+	GCquiesce,  // stop and start             nop
+	GCstw,      // stop the ps                nop
+	GCmark,     // scan the stacks and start  no white to black
+	GCsweep,    // stop and start             nop
+};
+
+struct ForceGCState
+{
+	Mutex	lock;
+	G*	g;
+	uint32	idle;
+};
+
+extern uint32 runtime·gcphase;
+
+/*
+ * defined macros
+ *    you need super-gopher-guru privilege
+ *    to add this list.
+ */
+#define	nelem(x)	(sizeof(x)/sizeof((x)[0]))
+#define	nil		((void*)0)
+#define	offsetof(s,m)	(uint32)(&(((s*)0)->m))
+#define	ROUND(x, n)	(((x)+(n)-1)&~(uintptr)((n)-1)) /* all-caps to mark as macro: it evaluates n twice */
+
+/*
+ * known to compiler
+ */
+enum {
+	Structrnd = sizeof(uintreg),
+};
+
+byte*	runtime·startup_random_data;
+uint32	runtime·startup_random_data_len;
+
+int32	runtime·invalidptr;
+
+enum {
+	// hashinit wants this many random bytes
+	HashRandomBytes = 32
+};
+
+uint32  runtime·readgstatus(G*);
+void    runtime·casgstatus(G*, uint32, uint32);
+void    runtime·casgstatus(G*, uint32, uint32);
+uint32	runtime·casgcopystack(G*);
+void    runtime·quiesce(G*);
+bool    runtime·stopg(G*);
+void    runtime·restartg(G*);
+void    runtime·gcphasework(G*);
+
+/*
+ * deferred subroutine calls
+ */
+struct Defer
+{
+	int32	siz;
+	bool	started;
+	uintptr	argp;		// where args were copied from
+	uintptr	pc;
+	FuncVal*	fn;
+	Panic*	panic;	// panic that is running defer
+	Defer*	link;
+};
+
+// argp used in Defer structs when there is no argp.
+#define NoArgs ((uintptr)-1)
+
+/*
+ * panics
+ */
+struct Panic
+{
+	void*	argp;	// pointer to arguments of deferred call run during panic; cannot move - known to liblink
+	Eface	arg;		// argument to panic
+	Panic*	link;		// link to earlier panic
+	bool	recovered;	// whether this panic is over
+	bool	aborted;	// the panic was aborted
+};
+
+/*
+ * stack traces
+ */
+typedef struct Stkframe Stkframe;
+typedef struct BitVector BitVector;
+struct Stkframe
+{
+	Func*	fn;	// function being run
+	uintptr	pc;	// program counter within fn
+	uintptr	continpc;	// program counter where execution can continue, or 0 if not
+	uintptr	lr;	// program counter at caller aka link register
+	uintptr	sp;	// stack pointer at pc
+	uintptr	fp;	// stack pointer at caller aka frame pointer
+	uintptr	varp;	// top of local variables
+	uintptr	argp;	// pointer to function arguments
+	uintptr	arglen;	// number of bytes at argp
+	BitVector*	argmap;	// force use of this argmap
+};
+
+enum
+{
+	TraceRuntimeFrames = 1<<0, // include frames for internal runtime functions.
+	TraceTrap = 1<<1, // the initial PC, SP are from a trap, not a return PC from a call
+};
+intgo	runtime·gentraceback(uintptr, uintptr, uintptr, G*, intgo, uintptr*, intgo, bool(**)(Stkframe*, void*), void*, uintgo);
+void	runtime·tracebackdefers(G*, bool(**)(Stkframe*, void*), void*);
+void	runtime·traceback(uintptr pc, uintptr sp, uintptr lr, G* gp);
+void	runtime·tracebacktrap(uintptr pc, uintptr sp, uintptr lr, G* gp);
+void	runtime·tracebackothers(G*);
+bool	runtime·haszeroargs(uintptr pc);
+bool	runtime·topofstack(Func*);
+enum
+{
+	// The maximum number of frames we print for a traceback
+	TracebackMaxFrames = 100,
+};
+
+/*
+ * external data
+ */
+extern	String	runtime·emptystring;
+extern	G**	runtime·allg;
+extern	Slice	runtime·allgs; // []*G
+extern	uintptr runtime·allglen;
+extern	G*	runtime·lastg;
+extern	M*	runtime·allm;
+extern	P*	runtime·allp[MaxGomaxprocs+1];
+extern	int32	runtime·gomaxprocs;
+extern	uint32	runtime·needextram;
+extern	uint32	runtime·panicking;
+extern	int8*	runtime·goos;
+extern	int32	runtime·ncpu;
+extern	bool	runtime·iscgo;
+extern 	void	(*runtime·sysargs)(int32, uint8**);
+extern	uintptr	runtime·maxstring;
+extern	uint32	runtime·cpuid_ecx;
+extern	uint32	runtime·cpuid_edx;
+extern	DebugVars	runtime·debug;
+extern	uintptr	runtime·maxstacksize;
+extern	Note	runtime·signote;
+extern	ForceGCState	runtime·forcegc;
+extern	SchedT	runtime·sched;
+extern	int32		runtime·newprocs;
+
+/*
+ * common functions and data
+ */
+int32	runtime·strcmp(byte*, byte*);
+int32	runtime·strncmp(byte*, byte*, uintptr);
+byte*	runtime·strstr(byte*, byte*);
+intgo	runtime·findnull(byte*);
+intgo	runtime·findnullw(uint16*);
+void	runtime·dump(byte*, int32);
+int32	runtime·runetochar(byte*, int32);
+int32	runtime·charntorune(int32*, uint8*, int32);
+
+
+/*
+ * This macro is used when writing C functions
+ * called as if they were Go functions.
+ * Passed the address of a result before a return statement,
+ * it makes sure the result has been flushed to memory
+ * before the return.
+ *
+ * It is difficult to write such functions portably, because
+ * of the varying requirements on the alignment of the
+ * first output value. Almost all code should write such
+ * functions in .goc files, where goc2c (part of cmd/dist)
+ * can arrange the correct alignment for the target system.
+ * Goc2c also takes care of conveying to the garbage collector
+ * which parts of the argument list are inputs vs outputs.
+ *
+ * Therefore, do NOT use this macro if at all possible.
+ */ 
+#define FLUSH(x)	USED(x)
+
+/*
+ * GoOutput is a type with the same alignment requirements as the
+ * initial output argument from a Go function. Only for use in cases
+ * where using goc2c is not possible. See comment on FLUSH above.
+ */
+typedef uint64 GoOutput;
+
+void	runtime·gogo(Gobuf*);
+void	runtime·gostartcall(Gobuf*, void(*)(void), void*);
+void	runtime·gostartcallfn(Gobuf*, FuncVal*);
+void	runtime·gosave(Gobuf*);
+void	runtime·goargs(void);
+void	runtime·goenvs(void);
+void	runtime·goenvs_unix(void);
+void*	runtime·getu(void);
+void	runtime·throw(int8*);
+bool	runtime·canpanic(G*);
+void	runtime·prints(int8*);
+void	runtime·printf(int8*, ...);
+void	runtime·snprintf(byte*, int32, int8*, ...);
+byte*	runtime·mchr(byte*, byte, byte*);
+int32	runtime·mcmp(byte*, byte*, uintptr);
+void	runtime·memmove(void*, void*, uintptr);
+String	runtime·catstring(String, String);
+String	runtime·gostring(byte*);
+Slice	runtime·makeStringSlice(intgo);
+String  runtime·gostringn(byte*, intgo);
+Slice	runtime·gobytes(byte*, intgo);
+String	runtime·gostringnocopy(byte*);
+String	runtime·gostringw(uint16*);
+void	runtime·initsig(void);
+void	runtime·sigenable(uint32 sig);
+void	runtime·sigdisable(uint32 sig);
+int32	runtime·gotraceback(bool *crash);
+void	runtime·goroutineheader(G*);
+int32	runtime·open(int8*, int32, int32);
+int32	runtime·read(int32, void*, int32);
+int32	runtime·write(uintptr, void*, int32); // use uintptr to accommodate windows.
+int32	runtime·close(int32);
+int32	runtime·mincore(void*, uintptr, byte*);
+void	runtime·jmpdefer(FuncVal*, uintptr);
+void	runtime·exit1(int32);
+void	runtime·ready(G*);
+byte*	runtime·getenv(int8*);
+int32	runtime·atoi(byte*);
+void	runtime·newosproc(M *mp, void *stk);
+void	runtime·mstart(void);
+G*	runtime·malg(int32);
+void	runtime·asminit(void);
+void	runtime·mpreinit(M*);
+void	runtime·minit(void);
+void	runtime·unminit(void);
+void	runtime·signalstack(byte*, int32);
+void	runtime·tracebackinit(void);
+void	runtime·symtabinit(void);
+Func*	runtime·findfunc(uintptr);
+int32	runtime·funcline(Func*, uintptr, String*);
+int32	runtime·funcspdelta(Func*, uintptr);
+int8*	runtime·funcname(Func*);
+int32	runtime·pcdatavalue(Func*, int32, uintptr);
+void	runtime·stackinit(void);
+Stack	runtime·stackalloc(uint32);
+void	runtime·stackfree(Stack);
+void	runtime·shrinkstack(G*);
+void	runtime·shrinkfinish(void);
+MCache*	runtime·allocmcache(void);
+void	runtime·freemcache(MCache*);
+void	runtime·mallocinit(void);
+void	runtime·gcinit(void);
+void*	runtime·mallocgc(uintptr size, Type* typ, uint32 flag);
+void	runtime·runpanic(Panic*);
+uintptr	runtime·getcallersp(void*);
+int32	runtime·mcount(void);
+int32	runtime·gcount(void);
+void	runtime·mcall(void(**)(G*));
+void	runtime·onM(void(**)(void));
+void	runtime·onMsignal(void(**)(void));
+uint32	runtime·fastrand1(void);
+void	runtime·rewindmorestack(Gobuf*);
+int32	runtime·timediv(int64, int32, int32*);
+int32	runtime·round2(int32 x); // round x up to a power of 2.
+
+// atomic operations
+bool	runtime·cas(uint32*, uint32, uint32);
+bool	runtime·cas64(uint64*, uint64, uint64);
+bool	runtime·casp(void**, void*, void*);
+// Don't confuse with XADD x86 instruction,
+// this one is actually 'addx', that is, add-and-fetch.
+uint32	runtime·xadd(uint32 volatile*, int32);
+uint64	runtime·xadd64(uint64 volatile*, int64);
+uint32	runtime·xchg(uint32 volatile*, uint32);
+uint64	runtime·xchg64(uint64 volatile*, uint64);
+void*	runtime·xchgp(void* volatile*, void*);
+uint32	runtime·atomicload(uint32 volatile*);
+void	runtime·atomicstore(uint32 volatile*, uint32);
+void	runtime·atomicstore64(uint64 volatile*, uint64);
+uint64	runtime·atomicload64(uint64 volatile*);
+void*	runtime·atomicloadp(void* volatile*);
+uintptr	runtime·atomicloaduintptr(uintptr volatile*);
+void	runtime·atomicstorep(void* volatile*, void*);
+void	runtime·atomicstoreuintptr(uintptr volatile*, uintptr);
+void	runtime·atomicor8(byte volatile*, byte);
+
+void	runtime·setg(G*);
+void	runtime·newextram(void);
+void	runtime·exit(int32);
+void	runtime·breakpoint(void);
+void	runtime·gosched_m(G*);
+void	runtime·schedtrace(bool);
+void	runtime·park(bool(*)(G*, void*), void*, String);
+void	runtime·parkunlock(Mutex*, String);
+void	runtime·tsleep(int64, String);
+M*	runtime·newm(void);
+void	runtime·goexit(void);
+void	runtime·asmcgocall(void (*fn)(void*), void*);
+int32	runtime·asmcgocall_errno(void (*fn)(void*), void*);
+void	runtime·entersyscall(void);
+void	runtime·reentersyscall(uintptr, uintptr);
+void	runtime·entersyscallblock(void);
+void	runtime·exitsyscall(void);
+G*	runtime·newproc1(FuncVal*, byte*, int32, int32, void*);
+bool	runtime·sigsend(int32 sig);
+intgo	runtime·callers(intgo, uintptr*, intgo);
+intgo	runtime·gcallers(G*, intgo, uintptr*, intgo);
+int64	runtime·nanotime(void);	// monotonic time
+int64	runtime·unixnanotime(void); // real time, can skip
+void	runtime·dopanic(int32);
+void	runtime·startpanic(void);
+void	runtime·freezetheworld(void);
+void	runtime·sigprof(uint8 *pc, uint8 *sp, uint8 *lr, G *gp, M *mp);
+void	runtime·resetcpuprofiler(int32);
+void	runtime·setcpuprofilerate(int32);
+void	runtime·usleep(uint32);
+int64	runtime·cputicks(void);
+int64	runtime·tickspersecond(void);
+void	runtime·blockevent(int64, intgo);
+G*	runtime·netpoll(bool);
+void	runtime·netpollready(G**, PollDesc*, int32);
+uintptr	runtime·netpollfd(PollDesc*);
+void**	runtime·netpolluser(PollDesc*);
+bool	runtime·netpollclosing(PollDesc*);
+void	runtime·netpolllock(PollDesc*);
+void	runtime·netpollunlock(PollDesc*);
+void	runtime·crash(void);
+void	runtime·parsedebugvars(void);
+void*	runtime·funcdata(Func*, int32);
+void	runtime·setmaxthreads_m(void);
+G*	runtime·timejump(void);
+void	runtime·iterate_itabs(void (**callback)(Itab*));
+void	runtime·iterate_finq(void (*callback)(FuncVal*, byte*, uintptr, Type*, PtrType*));
+
+#pragma	varargck	argpos	runtime·printf	1
+#pragma	varargck	type	"c"	int32
+#pragma	varargck	type	"d"	int32
+#pragma	varargck	type	"d"	uint32
+#pragma	varargck	type	"D"	int64
+#pragma	varargck	type	"D"	uint64
+#pragma	varargck	type	"x"	int32
+#pragma	varargck	type	"x"	uint32
+#pragma	varargck	type	"X"	int64
+#pragma	varargck	type	"X"	uint64
+#pragma	varargck	type	"p"	void*
+#pragma	varargck	type	"p"	uintptr
+#pragma	varargck	type	"s"	int8*
+#pragma	varargck	type	"s"	uint8*
+#pragma	varargck	type	"S"	String
+
+void	runtime·stoptheworld(void);
+void	runtime·starttheworld(void);
+extern uint32 runtime·worldsema;
+
+/*
+ * mutual exclusion locks.  in the uncontended case,
+ * as fast as spin locks (just a few user-level instructions),
+ * but on the contention path they sleep in the kernel.
+ * a zeroed Mutex is unlocked (no need to initialize each lock).
+ */
+void	runtime·lock(Mutex*);
+void	runtime·unlock(Mutex*);
+
+/*
+ * sleep and wakeup on one-time events.
+ * before any calls to notesleep or notewakeup,
+ * must call noteclear to initialize the Note.
+ * then, exactly one thread can call notesleep
+ * and exactly one thread can call notewakeup (once).
+ * once notewakeup has been called, the notesleep
+ * will return.  future notesleep will return immediately.
+ * subsequent noteclear must be called only after
+ * previous notesleep has returned, e.g. it's disallowed
+ * to call noteclear straight after notewakeup.
+ *
+ * notetsleep is like notesleep but wakes up after
+ * a given number of nanoseconds even if the event
+ * has not yet happened.  if a goroutine uses notetsleep to
+ * wake up early, it must wait to call noteclear until it
+ * can be sure that no other goroutine is calling
+ * notewakeup.
+ *
+ * notesleep/notetsleep are generally called on g0,
+ * notetsleepg is similar to notetsleep but is called on user g.
+ */
+void	runtime·noteclear(Note*);
+void	runtime·notesleep(Note*);
+void	runtime·notewakeup(Note*);
+bool	runtime·notetsleep(Note*, int64);  // false - timeout
+bool	runtime·notetsleepg(Note*, int64);  // false - timeout
+
+/*
+ * low-level synchronization for implementing the above
+ */
+uintptr	runtime·semacreate(void);
+int32	runtime·semasleep(int64);
+void	runtime·semawakeup(M*);
+// or
+void	runtime·futexsleep(uint32*, uint32, int64);
+void	runtime·futexwakeup(uint32*, uint32);
+
+/*
+ * Mutex-free stack.
+ * Initialize uint64 head to 0, compare with 0 to test for emptiness.
+ * The stack does not keep pointers to nodes,
+ * so they can be garbage collected if there are no other pointers to nodes.
+ */
+void	runtime·lfstackpush(uint64 *head, LFNode *node);
+LFNode*	runtime·lfstackpop(uint64 *head);
+
+/*
+ * Parallel for over [0, n).
+ * body() is executed for each iteration.
+ * nthr - total number of worker threads.
+ * ctx - arbitrary user context.
+ * if wait=true, threads return from parfor() when all work is done;
+ * otherwise, threads can return while other threads are still finishing processing.
+ */
+ParFor*	runtime·parforalloc(uint32 nthrmax);
+void	runtime·parforsetup(ParFor *desc, uint32 nthr, uint32 n, void *ctx, bool wait, void (*body)(ParFor*, uint32));
+void	runtime·parfordo(ParFor *desc);
+void	runtime·parforiters(ParFor*, uintptr, uintptr*, uintptr*);
+
+/*
+ * low level C-called
+ */
+// for mmap, we only pass the lower 32 bits of file offset to the 
+// assembly routine; the higher bits (if required), should be provided
+// by the assembly routine as 0.
+uint8*	runtime·mmap(byte*, uintptr, int32, int32, int32, uint32);
+void	runtime·munmap(byte*, uintptr);
+void	runtime·madvise(byte*, uintptr, int32);
+void	runtime·memclr(byte*, uintptr);
+void	runtime·setcallerpc(void*, void*);
+void*	runtime·getcallerpc(void*);
+void	runtime·printbool(bool);
+void	runtime·printbyte(int8);
+void	runtime·printfloat(float64);
+void	runtime·printint(int64);
+void	runtime·printiface(Iface);
+void	runtime·printeface(Eface);
+void	runtime·printstring(String);
+void	runtime·printpc(void*);
+void	runtime·printpointer(void*);
+void	runtime·printuint(uint64);
+void	runtime·printhex(uint64);
+void	runtime·printslice(Slice);
+void	runtime·printcomplex(Complex128);
+
+/*
+ * runtime go-called
+ */
+void	runtime·gopanic(Eface);
+void	runtime·panicindex(void);
+void	runtime·panicslice(void);
+void	runtime·panicdivide(void);
+
+/*
+ * runtime c-called (but written in Go)
+ */
+void	runtime·printany(Eface);
+void	runtime·newTypeAssertionError(String*, String*, String*, String*, Eface*);
+void	runtime·fadd64c(uint64, uint64, uint64*);
+void	runtime·fsub64c(uint64, uint64, uint64*);
+void	runtime·fmul64c(uint64, uint64, uint64*);
+void	runtime·fdiv64c(uint64, uint64, uint64*);
+void	runtime·fneg64c(uint64, uint64*);
+void	runtime·f32to64c(uint32, uint64*);
+void	runtime·f64to32c(uint64, uint32*);
+void	runtime·fcmp64c(uint64, uint64, int32*, bool*);
+void	runtime·fintto64c(int64, uint64*);
+void	runtime·f64tointc(uint64, int64*, bool*);
+
+/*
+ * wrapped for go users
+ */
+float64	runtime·Inf(int32 sign);
+float64	runtime·NaN(void);
+float32	runtime·float32frombits(uint32 i);
+uint32	runtime·float32tobits(float32 f);
+float64	runtime·float64frombits(uint64 i);
+uint64	runtime·float64tobits(float64 f);
+float64	runtime·frexp(float64 d, int32 *ep);
+bool	runtime·isInf(float64 f, int32 sign);
+bool	runtime·isNaN(float64 f);
+float64	runtime·ldexp(float64 d, int32 e);
+float64	runtime·modf(float64 d, float64 *ip);
+void	runtime·semacquire(uint32*, bool);
+void	runtime·semrelease(uint32*);
+int32	runtime·gomaxprocsfunc(int32 n);
+void	runtime·procyield(uint32);
+void	runtime·osyield(void);
+void	runtime·lockOSThread(void);
+void	runtime·unlockOSThread(void);
+
+bool	runtime·showframe(Func*, G*);
+void	runtime·printcreatedby(G*);
+
+void	runtime·ifaceE2I(InterfaceType*, Eface, Iface*);
+bool	runtime·ifaceE2I2(InterfaceType*, Eface, Iface*);
+uintptr	runtime·memlimit(void);
+
+// float.c
+extern float64 runtime·nan;
+extern float64 runtime·posinf;
+extern float64 runtime·neginf;
+extern uint64 ·nan;
+extern uint64 ·posinf;
+extern uint64 ·neginf;
+#define ISNAN(f) ((f) != (f))
+
+enum
+{
+	UseSpanType = 1,
+};
diff --git a/pkg/linux_amd64/runtime/cgo.a b/pkg/linux_amd64/runtime/cgo.a
new file mode 100644
index 0000000..29aa75a
--- /dev/null
+++ b/pkg/linux_amd64/runtime/cgo.a
Binary files differ
diff --git a/pkg/linux_amd64/runtime/debug.a b/pkg/linux_amd64/runtime/debug.a
new file mode 100644
index 0000000..6551ca2
--- /dev/null
+++ b/pkg/linux_amd64/runtime/debug.a
Binary files differ
diff --git a/pkg/linux_amd64/runtime/pprof.a b/pkg/linux_amd64/runtime/pprof.a
new file mode 100644
index 0000000..0abea09
--- /dev/null
+++ b/pkg/linux_amd64/runtime/pprof.a
Binary files differ
diff --git a/pkg/linux_amd64/runtime/race.a b/pkg/linux_amd64/runtime/race.a
new file mode 100644
index 0000000..8d8e2a8
--- /dev/null
+++ b/pkg/linux_amd64/runtime/race.a
Binary files differ
diff --git a/pkg/linux_amd64/sort.a b/pkg/linux_amd64/sort.a
new file mode 100644
index 0000000..f0e85f8
--- /dev/null
+++ b/pkg/linux_amd64/sort.a
Binary files differ
diff --git a/pkg/linux_amd64/strconv.a b/pkg/linux_amd64/strconv.a
new file mode 100644
index 0000000..9ccfdbb
--- /dev/null
+++ b/pkg/linux_amd64/strconv.a
Binary files differ
diff --git a/pkg/linux_amd64/strings.a b/pkg/linux_amd64/strings.a
new file mode 100644
index 0000000..64f8f02
--- /dev/null
+++ b/pkg/linux_amd64/strings.a
Binary files differ
diff --git a/pkg/linux_amd64/sync.a b/pkg/linux_amd64/sync.a
new file mode 100644
index 0000000..b714506
--- /dev/null
+++ b/pkg/linux_amd64/sync.a
Binary files differ
diff --git a/pkg/linux_amd64/sync/atomic.a b/pkg/linux_amd64/sync/atomic.a
new file mode 100644
index 0000000..7cca359
--- /dev/null
+++ b/pkg/linux_amd64/sync/atomic.a
Binary files differ
diff --git a/pkg/linux_amd64/syscall.a b/pkg/linux_amd64/syscall.a
new file mode 100644
index 0000000..f4f3ed7
--- /dev/null
+++ b/pkg/linux_amd64/syscall.a
Binary files differ
diff --git a/pkg/linux_amd64/testing.a b/pkg/linux_amd64/testing.a
new file mode 100644
index 0000000..e68cb45
--- /dev/null
+++ b/pkg/linux_amd64/testing.a
Binary files differ
diff --git a/pkg/linux_amd64/testing/iotest.a b/pkg/linux_amd64/testing/iotest.a
new file mode 100644
index 0000000..b758b0a
--- /dev/null
+++ b/pkg/linux_amd64/testing/iotest.a
Binary files differ
diff --git a/pkg/linux_amd64/testing/quick.a b/pkg/linux_amd64/testing/quick.a
new file mode 100644
index 0000000..b3e38b2
--- /dev/null
+++ b/pkg/linux_amd64/testing/quick.a
Binary files differ
diff --git a/pkg/linux_amd64/text/scanner.a b/pkg/linux_amd64/text/scanner.a
new file mode 100644
index 0000000..2110a5e
--- /dev/null
+++ b/pkg/linux_amd64/text/scanner.a
Binary files differ
diff --git a/pkg/linux_amd64/text/tabwriter.a b/pkg/linux_amd64/text/tabwriter.a
new file mode 100644
index 0000000..fcfe81f
--- /dev/null
+++ b/pkg/linux_amd64/text/tabwriter.a
Binary files differ
diff --git a/pkg/linux_amd64/text/template.a b/pkg/linux_amd64/text/template.a
new file mode 100644
index 0000000..31406a6
--- /dev/null
+++ b/pkg/linux_amd64/text/template.a
Binary files differ
diff --git a/pkg/linux_amd64/text/template/parse.a b/pkg/linux_amd64/text/template/parse.a
new file mode 100644
index 0000000..8268e39
--- /dev/null
+++ b/pkg/linux_amd64/text/template/parse.a
Binary files differ
diff --git a/pkg/linux_amd64/textflag.h b/pkg/linux_amd64/textflag.h
new file mode 100644
index 0000000..0ee8b5f
--- /dev/null
+++ b/pkg/linux_amd64/textflag.h
@@ -0,0 +1,36 @@
+// Copyright 2013 The Go Authors.  All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// This file defines flags attached to various functions
+// and data objects.  The compilers, assemblers, and linker must
+// all agree on these values.
+
+// Don't profile the marked routine.  This flag is deprecated.
+#define NOPROF	1
+// It is ok for the linker to get multiple of these symbols.  It will
+// pick one of the duplicates to use.
+#define DUPOK	2
+// Don't insert stack check preamble.
+#define NOSPLIT	4
+// Put this data in a read-only section.
+#define RODATA	8
+// This data contains no pointers.
+#define NOPTR	16
+// This is a wrapper function and should not count as disabling 'recover'.
+#define WRAPPER 32
+// This function uses its incoming context register.
+#define NEEDCTXT 64
+
+/*c2go
+enum
+{
+	NOPROF = 1,
+	DUPOK = 2,
+	NOSPLIT = 4,
+	RODATA = 8,
+	NOPTR = 16,
+	WRAPPER = 32,
+	NEEDCTXT = 64,
+};
+*/
diff --git a/pkg/linux_amd64/time.a b/pkg/linux_amd64/time.a
new file mode 100644
index 0000000..3afccb8
--- /dev/null
+++ b/pkg/linux_amd64/time.a
Binary files differ
diff --git a/pkg/linux_amd64/unicode.a b/pkg/linux_amd64/unicode.a
new file mode 100644
index 0000000..0d34eaa
--- /dev/null
+++ b/pkg/linux_amd64/unicode.a
Binary files differ
diff --git a/pkg/linux_amd64/unicode/utf16.a b/pkg/linux_amd64/unicode/utf16.a
new file mode 100644
index 0000000..869b525
--- /dev/null
+++ b/pkg/linux_amd64/unicode/utf16.a
Binary files differ
diff --git a/pkg/linux_amd64/unicode/utf8.a b/pkg/linux_amd64/unicode/utf8.a
new file mode 100644
index 0000000..7f162e0
--- /dev/null
+++ b/pkg/linux_amd64/unicode/utf8.a
Binary files differ
diff --git a/pkg/linux_amd64_race/archive/tar.a b/pkg/linux_amd64_race/archive/tar.a
new file mode 100644
index 0000000..30d8691
--- /dev/null
+++ b/pkg/linux_amd64_race/archive/tar.a
Binary files differ
diff --git a/pkg/linux_amd64_race/archive/zip.a b/pkg/linux_amd64_race/archive/zip.a
new file mode 100644
index 0000000..ed5e3ac
--- /dev/null
+++ b/pkg/linux_amd64_race/archive/zip.a
Binary files differ
diff --git a/pkg/linux_amd64_race/bufio.a b/pkg/linux_amd64_race/bufio.a
new file mode 100644
index 0000000..ff874fe
--- /dev/null
+++ b/pkg/linux_amd64_race/bufio.a
Binary files differ
diff --git a/pkg/linux_amd64_race/bytes.a b/pkg/linux_amd64_race/bytes.a
new file mode 100644
index 0000000..e6435fc
--- /dev/null
+++ b/pkg/linux_amd64_race/bytes.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/internal/goobj.a b/pkg/linux_amd64_race/cmd/internal/goobj.a
new file mode 100644
index 0000000..2b21851
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/internal/goobj.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/internal/objfile.a b/pkg/linux_amd64_race/cmd/internal/objfile.a
new file mode 100644
index 0000000..811112c
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/internal/objfile.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/internal/rsc.io/arm/armasm.a b/pkg/linux_amd64_race/cmd/internal/rsc.io/arm/armasm.a
new file mode 100644
index 0000000..240a6ec
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/internal/rsc.io/arm/armasm.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/internal/rsc.io/x86/x86asm.a b/pkg/linux_amd64_race/cmd/internal/rsc.io/x86/x86asm.a
new file mode 100644
index 0000000..581c7aa
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/internal/rsc.io/x86/x86asm.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/commands.a b/pkg/linux_amd64_race/cmd/pprof/internal/commands.a
new file mode 100644
index 0000000..3b9e48f
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/commands.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/driver.a b/pkg/linux_amd64_race/cmd/pprof/internal/driver.a
new file mode 100644
index 0000000..868bcb0
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/driver.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/fetch.a b/pkg/linux_amd64_race/cmd/pprof/internal/fetch.a
new file mode 100644
index 0000000..6e91cd5
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/fetch.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/plugin.a b/pkg/linux_amd64_race/cmd/pprof/internal/plugin.a
new file mode 100644
index 0000000..d9e9d62
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/plugin.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/profile.a b/pkg/linux_amd64_race/cmd/pprof/internal/profile.a
new file mode 100644
index 0000000..045cd19
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/profile.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/report.a b/pkg/linux_amd64_race/cmd/pprof/internal/report.a
new file mode 100644
index 0000000..23bde46
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/report.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/svg.a b/pkg/linux_amd64_race/cmd/pprof/internal/svg.a
new file mode 100644
index 0000000..72363f9
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/svg.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/symbolizer.a b/pkg/linux_amd64_race/cmd/pprof/internal/symbolizer.a
new file mode 100644
index 0000000..4690f42
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/symbolizer.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/symbolz.a b/pkg/linux_amd64_race/cmd/pprof/internal/symbolz.a
new file mode 100644
index 0000000..baf6d1e
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/symbolz.a
Binary files differ
diff --git a/pkg/linux_amd64_race/cmd/pprof/internal/tempfile.a b/pkg/linux_amd64_race/cmd/pprof/internal/tempfile.a
new file mode 100644
index 0000000..d640485
--- /dev/null
+++ b/pkg/linux_amd64_race/cmd/pprof/internal/tempfile.a
Binary files differ
diff --git a/pkg/linux_amd64_race/compress/bzip2.a b/pkg/linux_amd64_race/compress/bzip2.a
new file mode 100644
index 0000000..ba63436
--- /dev/null
+++ b/pkg/linux_amd64_race/compress/bzip2.a
Binary files differ
diff --git a/pkg/linux_amd64_race/compress/flate.a b/pkg/linux_amd64_race/compress/flate.a
new file mode 100644
index 0000000..bef1081
--- /dev/null
+++ b/pkg/linux_amd64_race/compress/flate.a
Binary files differ
diff --git a/pkg/linux_amd64_race/compress/gzip.a b/pkg/linux_amd64_race/compress/gzip.a
new file mode 100644
index 0000000..1a90d17
--- /dev/null
+++ b/pkg/linux_amd64_race/compress/gzip.a
Binary files differ
diff --git a/pkg/linux_amd64_race/compress/lzw.a b/pkg/linux_amd64_race/compress/lzw.a
new file mode 100644
index 0000000..17510d2
--- /dev/null
+++ b/pkg/linux_amd64_race/compress/lzw.a
Binary files differ
diff --git a/pkg/linux_amd64_race/compress/zlib.a b/pkg/linux_amd64_race/compress/zlib.a
new file mode 100644
index 0000000..7de0cc0
--- /dev/null
+++ b/pkg/linux_amd64_race/compress/zlib.a
Binary files differ
diff --git a/pkg/linux_amd64_race/container/heap.a b/pkg/linux_amd64_race/container/heap.a
new file mode 100644
index 0000000..834e212
--- /dev/null
+++ b/pkg/linux_amd64_race/container/heap.a
Binary files differ
diff --git a/pkg/linux_amd64_race/container/list.a b/pkg/linux_amd64_race/container/list.a
new file mode 100644
index 0000000..f0fae90
--- /dev/null
+++ b/pkg/linux_amd64_race/container/list.a
Binary files differ
diff --git a/pkg/linux_amd64_race/container/ring.a b/pkg/linux_amd64_race/container/ring.a
new file mode 100644
index 0000000..3d87f25
--- /dev/null
+++ b/pkg/linux_amd64_race/container/ring.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto.a b/pkg/linux_amd64_race/crypto.a
new file mode 100644
index 0000000..ef84941
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/aes.a b/pkg/linux_amd64_race/crypto/aes.a
new file mode 100644
index 0000000..0ed3a77
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/aes.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/cipher.a b/pkg/linux_amd64_race/crypto/cipher.a
new file mode 100644
index 0000000..7399d56
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/cipher.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/des.a b/pkg/linux_amd64_race/crypto/des.a
new file mode 100644
index 0000000..12fc946
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/des.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/dsa.a b/pkg/linux_amd64_race/crypto/dsa.a
new file mode 100644
index 0000000..efde409
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/dsa.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/ecdsa.a b/pkg/linux_amd64_race/crypto/ecdsa.a
new file mode 100644
index 0000000..d5ef2d5
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/ecdsa.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/elliptic.a b/pkg/linux_amd64_race/crypto/elliptic.a
new file mode 100644
index 0000000..c022bf4
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/elliptic.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/hmac.a b/pkg/linux_amd64_race/crypto/hmac.a
new file mode 100644
index 0000000..ab2d80d
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/hmac.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/md5.a b/pkg/linux_amd64_race/crypto/md5.a
new file mode 100644
index 0000000..bde0b1e
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/md5.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/rand.a b/pkg/linux_amd64_race/crypto/rand.a
new file mode 100644
index 0000000..7c23d28
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/rand.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/rc4.a b/pkg/linux_amd64_race/crypto/rc4.a
new file mode 100644
index 0000000..f1c6b7e
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/rc4.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/rsa.a b/pkg/linux_amd64_race/crypto/rsa.a
new file mode 100644
index 0000000..b74ad9f
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/rsa.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/sha1.a b/pkg/linux_amd64_race/crypto/sha1.a
new file mode 100644
index 0000000..87e64f6
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/sha1.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/sha256.a b/pkg/linux_amd64_race/crypto/sha256.a
new file mode 100644
index 0000000..1d10b9e
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/sha256.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/sha512.a b/pkg/linux_amd64_race/crypto/sha512.a
new file mode 100644
index 0000000..ab838d4
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/sha512.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/subtle.a b/pkg/linux_amd64_race/crypto/subtle.a
new file mode 100644
index 0000000..72e4055
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/subtle.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/tls.a b/pkg/linux_amd64_race/crypto/tls.a
new file mode 100644
index 0000000..757994f
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/tls.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/x509.a b/pkg/linux_amd64_race/crypto/x509.a
new file mode 100644
index 0000000..bf13319
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/x509.a
Binary files differ
diff --git a/pkg/linux_amd64_race/crypto/x509/pkix.a b/pkg/linux_amd64_race/crypto/x509/pkix.a
new file mode 100644
index 0000000..863df1e
--- /dev/null
+++ b/pkg/linux_amd64_race/crypto/x509/pkix.a
Binary files differ
diff --git a/pkg/linux_amd64_race/database/sql.a b/pkg/linux_amd64_race/database/sql.a
new file mode 100644
index 0000000..7257c46
--- /dev/null
+++ b/pkg/linux_amd64_race/database/sql.a
Binary files differ
diff --git a/pkg/linux_amd64_race/database/sql/driver.a b/pkg/linux_amd64_race/database/sql/driver.a
new file mode 100644
index 0000000..2f4daad
--- /dev/null
+++ b/pkg/linux_amd64_race/database/sql/driver.a
Binary files differ
diff --git a/pkg/linux_amd64_race/debug/dwarf.a b/pkg/linux_amd64_race/debug/dwarf.a
new file mode 100644
index 0000000..bc8020c
--- /dev/null
+++ b/pkg/linux_amd64_race/debug/dwarf.a
Binary files differ
diff --git a/pkg/linux_amd64_race/debug/elf.a b/pkg/linux_amd64_race/debug/elf.a
new file mode 100644
index 0000000..627db31
--- /dev/null
+++ b/pkg/linux_amd64_race/debug/elf.a
Binary files differ
diff --git a/pkg/linux_amd64_race/debug/gosym.a b/pkg/linux_amd64_race/debug/gosym.a
new file mode 100644
index 0000000..e4f5089
--- /dev/null
+++ b/pkg/linux_amd64_race/debug/gosym.a
Binary files differ
diff --git a/pkg/linux_amd64_race/debug/macho.a b/pkg/linux_amd64_race/debug/macho.a
new file mode 100644
index 0000000..cc55485
--- /dev/null
+++ b/pkg/linux_amd64_race/debug/macho.a
Binary files differ
diff --git a/pkg/linux_amd64_race/debug/pe.a b/pkg/linux_amd64_race/debug/pe.a
new file mode 100644
index 0000000..0e496d6
--- /dev/null
+++ b/pkg/linux_amd64_race/debug/pe.a
Binary files differ
diff --git a/pkg/linux_amd64_race/debug/plan9obj.a b/pkg/linux_amd64_race/debug/plan9obj.a
new file mode 100644
index 0000000..e326c7e
--- /dev/null
+++ b/pkg/linux_amd64_race/debug/plan9obj.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding.a b/pkg/linux_amd64_race/encoding.a
new file mode 100644
index 0000000..36579b9
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/ascii85.a b/pkg/linux_amd64_race/encoding/ascii85.a
new file mode 100644
index 0000000..cfa04ce
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/ascii85.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/asn1.a b/pkg/linux_amd64_race/encoding/asn1.a
new file mode 100644
index 0000000..3dcae59
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/asn1.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/base32.a b/pkg/linux_amd64_race/encoding/base32.a
new file mode 100644
index 0000000..950805f
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/base32.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/base64.a b/pkg/linux_amd64_race/encoding/base64.a
new file mode 100644
index 0000000..3fe7562
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/base64.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/binary.a b/pkg/linux_amd64_race/encoding/binary.a
new file mode 100644
index 0000000..37df8e9
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/binary.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/csv.a b/pkg/linux_amd64_race/encoding/csv.a
new file mode 100644
index 0000000..e76cde3
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/csv.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/gob.a b/pkg/linux_amd64_race/encoding/gob.a
new file mode 100644
index 0000000..eaec5e9
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/gob.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/hex.a b/pkg/linux_amd64_race/encoding/hex.a
new file mode 100644
index 0000000..1e97cf2
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/hex.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/json.a b/pkg/linux_amd64_race/encoding/json.a
new file mode 100644
index 0000000..dca463b
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/json.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/pem.a b/pkg/linux_amd64_race/encoding/pem.a
new file mode 100644
index 0000000..407abdc
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/pem.a
Binary files differ
diff --git a/pkg/linux_amd64_race/encoding/xml.a b/pkg/linux_amd64_race/encoding/xml.a
new file mode 100644
index 0000000..862c3ec
--- /dev/null
+++ b/pkg/linux_amd64_race/encoding/xml.a
Binary files differ
diff --git a/pkg/linux_amd64_race/errors.a b/pkg/linux_amd64_race/errors.a
new file mode 100644
index 0000000..c20cc83
--- /dev/null
+++ b/pkg/linux_amd64_race/errors.a
Binary files differ
diff --git a/pkg/linux_amd64_race/expvar.a b/pkg/linux_amd64_race/expvar.a
new file mode 100644
index 0000000..3ab1292
--- /dev/null
+++ b/pkg/linux_amd64_race/expvar.a
Binary files differ
diff --git a/pkg/linux_amd64_race/flag.a b/pkg/linux_amd64_race/flag.a
new file mode 100644
index 0000000..6e2f2e5
--- /dev/null
+++ b/pkg/linux_amd64_race/flag.a
Binary files differ
diff --git a/pkg/linux_amd64_race/fmt.a b/pkg/linux_amd64_race/fmt.a
new file mode 100644
index 0000000..2115b60
--- /dev/null
+++ b/pkg/linux_amd64_race/fmt.a
Binary files differ
diff --git a/pkg/linux_amd64_race/go/ast.a b/pkg/linux_amd64_race/go/ast.a
new file mode 100644
index 0000000..f023870
--- /dev/null
+++ b/pkg/linux_amd64_race/go/ast.a
Binary files differ
diff --git a/pkg/linux_amd64_race/go/build.a b/pkg/linux_amd64_race/go/build.a
new file mode 100644
index 0000000..633875d
--- /dev/null
+++ b/pkg/linux_amd64_race/go/build.a
Binary files differ
diff --git a/pkg/linux_amd64_race/go/doc.a b/pkg/linux_amd64_race/go/doc.a
new file mode 100644
index 0000000..79a366b
--- /dev/null
+++ b/pkg/linux_amd64_race/go/doc.a
Binary files differ
diff --git a/pkg/linux_amd64_race/go/format.a b/pkg/linux_amd64_race/go/format.a
new file mode 100644
index 0000000..6218cea
--- /dev/null
+++ b/pkg/linux_amd64_race/go/format.a
Binary files differ
diff --git a/pkg/linux_amd64_race/go/parser.a b/pkg/linux_amd64_race/go/parser.a
new file mode 100644
index 0000000..3899861
--- /dev/null
+++ b/pkg/linux_amd64_race/go/parser.a
Binary files differ
diff --git a/pkg/linux_amd64_race/go/printer.a b/pkg/linux_amd64_race/go/printer.a
new file mode 100644
index 0000000..197d603
--- /dev/null
+++ b/pkg/linux_amd64_race/go/printer.a
Binary files differ
diff --git a/pkg/linux_amd64_race/go/scanner.a b/pkg/linux_amd64_race/go/scanner.a
new file mode 100644
index 0000000..acf45ac
--- /dev/null
+++ b/pkg/linux_amd64_race/go/scanner.a
Binary files differ
diff --git a/pkg/linux_amd64_race/go/token.a b/pkg/linux_amd64_race/go/token.a
new file mode 100644
index 0000000..b0e195d
--- /dev/null
+++ b/pkg/linux_amd64_race/go/token.a
Binary files differ
diff --git a/pkg/linux_amd64_race/hash.a b/pkg/linux_amd64_race/hash.a
new file mode 100644
index 0000000..39e2d4d
--- /dev/null
+++ b/pkg/linux_amd64_race/hash.a
Binary files differ
diff --git a/pkg/linux_amd64_race/hash/adler32.a b/pkg/linux_amd64_race/hash/adler32.a
new file mode 100644
index 0000000..abc5200
--- /dev/null
+++ b/pkg/linux_amd64_race/hash/adler32.a
Binary files differ
diff --git a/pkg/linux_amd64_race/hash/crc32.a b/pkg/linux_amd64_race/hash/crc32.a
new file mode 100644
index 0000000..8730dc3
--- /dev/null
+++ b/pkg/linux_amd64_race/hash/crc32.a
Binary files differ
diff --git a/pkg/linux_amd64_race/hash/crc64.a b/pkg/linux_amd64_race/hash/crc64.a
new file mode 100644
index 0000000..6162d19
--- /dev/null
+++ b/pkg/linux_amd64_race/hash/crc64.a
Binary files differ
diff --git a/pkg/linux_amd64_race/hash/fnv.a b/pkg/linux_amd64_race/hash/fnv.a
new file mode 100644
index 0000000..f260757
--- /dev/null
+++ b/pkg/linux_amd64_race/hash/fnv.a
Binary files differ
diff --git a/pkg/linux_amd64_race/html.a b/pkg/linux_amd64_race/html.a
new file mode 100644
index 0000000..07dab8d
--- /dev/null
+++ b/pkg/linux_amd64_race/html.a
Binary files differ
diff --git a/pkg/linux_amd64_race/html/template.a b/pkg/linux_amd64_race/html/template.a
new file mode 100644
index 0000000..4d2fe14
--- /dev/null
+++ b/pkg/linux_amd64_race/html/template.a
Binary files differ
diff --git a/pkg/linux_amd64_race/image.a b/pkg/linux_amd64_race/image.a
new file mode 100644
index 0000000..7827d40
--- /dev/null
+++ b/pkg/linux_amd64_race/image.a
Binary files differ
diff --git a/pkg/linux_amd64_race/image/color.a b/pkg/linux_amd64_race/image/color.a
new file mode 100644
index 0000000..6b62a9e
--- /dev/null
+++ b/pkg/linux_amd64_race/image/color.a
Binary files differ
diff --git a/pkg/linux_amd64_race/image/color/palette.a b/pkg/linux_amd64_race/image/color/palette.a
new file mode 100644
index 0000000..eeecfd2
--- /dev/null
+++ b/pkg/linux_amd64_race/image/color/palette.a
Binary files differ
diff --git a/pkg/linux_amd64_race/image/draw.a b/pkg/linux_amd64_race/image/draw.a
new file mode 100644
index 0000000..ae9f431
--- /dev/null
+++ b/pkg/linux_amd64_race/image/draw.a
Binary files differ
diff --git a/pkg/linux_amd64_race/image/gif.a b/pkg/linux_amd64_race/image/gif.a
new file mode 100644
index 0000000..bd7e5dc
--- /dev/null
+++ b/pkg/linux_amd64_race/image/gif.a
Binary files differ
diff --git a/pkg/linux_amd64_race/image/jpeg.a b/pkg/linux_amd64_race/image/jpeg.a
new file mode 100644
index 0000000..1227f6e
--- /dev/null
+++ b/pkg/linux_amd64_race/image/jpeg.a
Binary files differ
diff --git a/pkg/linux_amd64_race/image/png.a b/pkg/linux_amd64_race/image/png.a
new file mode 100644
index 0000000..1dd8b37
--- /dev/null
+++ b/pkg/linux_amd64_race/image/png.a
Binary files differ
diff --git a/pkg/linux_amd64_race/index/suffixarray.a b/pkg/linux_amd64_race/index/suffixarray.a
new file mode 100644
index 0000000..1d9baa8
--- /dev/null
+++ b/pkg/linux_amd64_race/index/suffixarray.a
Binary files differ
diff --git a/pkg/linux_amd64_race/internal/syscall.a b/pkg/linux_amd64_race/internal/syscall.a
new file mode 100644
index 0000000..4f7a029
--- /dev/null
+++ b/pkg/linux_amd64_race/internal/syscall.a
Binary files differ
diff --git a/pkg/linux_amd64_race/io.a b/pkg/linux_amd64_race/io.a
new file mode 100644
index 0000000..0a8aa91
--- /dev/null
+++ b/pkg/linux_amd64_race/io.a
Binary files differ
diff --git a/pkg/linux_amd64_race/io/ioutil.a b/pkg/linux_amd64_race/io/ioutil.a
new file mode 100644
index 0000000..fa74b33
--- /dev/null
+++ b/pkg/linux_amd64_race/io/ioutil.a
Binary files differ
diff --git a/pkg/linux_amd64_race/log.a b/pkg/linux_amd64_race/log.a
new file mode 100644
index 0000000..f90624a
--- /dev/null
+++ b/pkg/linux_amd64_race/log.a
Binary files differ
diff --git a/pkg/linux_amd64_race/log/syslog.a b/pkg/linux_amd64_race/log/syslog.a
new file mode 100644
index 0000000..b057fea
--- /dev/null
+++ b/pkg/linux_amd64_race/log/syslog.a
Binary files differ
diff --git a/pkg/linux_amd64_race/math.a b/pkg/linux_amd64_race/math.a
new file mode 100644
index 0000000..f1802fd
--- /dev/null
+++ b/pkg/linux_amd64_race/math.a
Binary files differ
diff --git a/pkg/linux_amd64_race/math/big.a b/pkg/linux_amd64_race/math/big.a
new file mode 100644
index 0000000..e0299a7
--- /dev/null
+++ b/pkg/linux_amd64_race/math/big.a
Binary files differ
diff --git a/pkg/linux_amd64_race/math/cmplx.a b/pkg/linux_amd64_race/math/cmplx.a
new file mode 100644
index 0000000..020f1b3
--- /dev/null
+++ b/pkg/linux_amd64_race/math/cmplx.a
Binary files differ
diff --git a/pkg/linux_amd64_race/math/rand.a b/pkg/linux_amd64_race/math/rand.a
new file mode 100644
index 0000000..6da9d94
--- /dev/null
+++ b/pkg/linux_amd64_race/math/rand.a
Binary files differ
diff --git a/pkg/linux_amd64_race/mime.a b/pkg/linux_amd64_race/mime.a
new file mode 100644
index 0000000..63cb28d
--- /dev/null
+++ b/pkg/linux_amd64_race/mime.a
Binary files differ
diff --git a/pkg/linux_amd64_race/mime/multipart.a b/pkg/linux_amd64_race/mime/multipart.a
new file mode 100644
index 0000000..b8cd19d
--- /dev/null
+++ b/pkg/linux_amd64_race/mime/multipart.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net.a b/pkg/linux_amd64_race/net.a
new file mode 100644
index 0000000..76c2914
--- /dev/null
+++ b/pkg/linux_amd64_race/net.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/http.a b/pkg/linux_amd64_race/net/http.a
new file mode 100644
index 0000000..acbd03a
--- /dev/null
+++ b/pkg/linux_amd64_race/net/http.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/http/cgi.a b/pkg/linux_amd64_race/net/http/cgi.a
new file mode 100644
index 0000000..f469467
--- /dev/null
+++ b/pkg/linux_amd64_race/net/http/cgi.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/http/cookiejar.a b/pkg/linux_amd64_race/net/http/cookiejar.a
new file mode 100644
index 0000000..4eb1165
--- /dev/null
+++ b/pkg/linux_amd64_race/net/http/cookiejar.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/http/fcgi.a b/pkg/linux_amd64_race/net/http/fcgi.a
new file mode 100644
index 0000000..c2ba536
--- /dev/null
+++ b/pkg/linux_amd64_race/net/http/fcgi.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/http/httptest.a b/pkg/linux_amd64_race/net/http/httptest.a
new file mode 100644
index 0000000..0947557
--- /dev/null
+++ b/pkg/linux_amd64_race/net/http/httptest.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/http/httputil.a b/pkg/linux_amd64_race/net/http/httputil.a
new file mode 100644
index 0000000..34f5831
--- /dev/null
+++ b/pkg/linux_amd64_race/net/http/httputil.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/http/internal.a b/pkg/linux_amd64_race/net/http/internal.a
new file mode 100644
index 0000000..0c8938b
--- /dev/null
+++ b/pkg/linux_amd64_race/net/http/internal.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/http/pprof.a b/pkg/linux_amd64_race/net/http/pprof.a
new file mode 100644
index 0000000..419b8aa
--- /dev/null
+++ b/pkg/linux_amd64_race/net/http/pprof.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/mail.a b/pkg/linux_amd64_race/net/mail.a
new file mode 100644
index 0000000..163c7b0
--- /dev/null
+++ b/pkg/linux_amd64_race/net/mail.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/rpc.a b/pkg/linux_amd64_race/net/rpc.a
new file mode 100644
index 0000000..140413a
--- /dev/null
+++ b/pkg/linux_amd64_race/net/rpc.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/rpc/jsonrpc.a b/pkg/linux_amd64_race/net/rpc/jsonrpc.a
new file mode 100644
index 0000000..2c02748
--- /dev/null
+++ b/pkg/linux_amd64_race/net/rpc/jsonrpc.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/smtp.a b/pkg/linux_amd64_race/net/smtp.a
new file mode 100644
index 0000000..659c095
--- /dev/null
+++ b/pkg/linux_amd64_race/net/smtp.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/textproto.a b/pkg/linux_amd64_race/net/textproto.a
new file mode 100644
index 0000000..c30d8a3
--- /dev/null
+++ b/pkg/linux_amd64_race/net/textproto.a
Binary files differ
diff --git a/pkg/linux_amd64_race/net/url.a b/pkg/linux_amd64_race/net/url.a
new file mode 100644
index 0000000..767b7bc
--- /dev/null
+++ b/pkg/linux_amd64_race/net/url.a
Binary files differ
diff --git a/pkg/linux_amd64_race/os.a b/pkg/linux_amd64_race/os.a
new file mode 100644
index 0000000..c0e1ae6
--- /dev/null
+++ b/pkg/linux_amd64_race/os.a
Binary files differ
diff --git a/pkg/linux_amd64_race/os/exec.a b/pkg/linux_amd64_race/os/exec.a
new file mode 100644
index 0000000..37c8021
--- /dev/null
+++ b/pkg/linux_amd64_race/os/exec.a
Binary files differ
diff --git a/pkg/linux_amd64_race/os/signal.a b/pkg/linux_amd64_race/os/signal.a
new file mode 100644
index 0000000..719f704
--- /dev/null
+++ b/pkg/linux_amd64_race/os/signal.a
Binary files differ
diff --git a/pkg/linux_amd64_race/os/user.a b/pkg/linux_amd64_race/os/user.a
new file mode 100644
index 0000000..fc09ae4
--- /dev/null
+++ b/pkg/linux_amd64_race/os/user.a
Binary files differ
diff --git a/pkg/linux_amd64_race/path.a b/pkg/linux_amd64_race/path.a
new file mode 100644
index 0000000..1c4a12c
--- /dev/null
+++ b/pkg/linux_amd64_race/path.a
Binary files differ
diff --git a/pkg/linux_amd64_race/path/filepath.a b/pkg/linux_amd64_race/path/filepath.a
new file mode 100644
index 0000000..15cef2b
--- /dev/null
+++ b/pkg/linux_amd64_race/path/filepath.a
Binary files differ
diff --git a/pkg/linux_amd64_race/reflect.a b/pkg/linux_amd64_race/reflect.a
new file mode 100644
index 0000000..775cd94
--- /dev/null
+++ b/pkg/linux_amd64_race/reflect.a
Binary files differ
diff --git a/pkg/linux_amd64_race/regexp.a b/pkg/linux_amd64_race/regexp.a
new file mode 100644
index 0000000..55598db
--- /dev/null
+++ b/pkg/linux_amd64_race/regexp.a
Binary files differ
diff --git a/pkg/linux_amd64_race/regexp/syntax.a b/pkg/linux_amd64_race/regexp/syntax.a
new file mode 100644
index 0000000..2c0873a
--- /dev/null
+++ b/pkg/linux_amd64_race/regexp/syntax.a
Binary files differ
diff --git a/pkg/linux_amd64_race/runtime.a b/pkg/linux_amd64_race/runtime.a
new file mode 100644
index 0000000..6f28850
--- /dev/null
+++ b/pkg/linux_amd64_race/runtime.a
Binary files differ
diff --git a/pkg/linux_amd64_race/runtime/cgo.a b/pkg/linux_amd64_race/runtime/cgo.a
new file mode 100644
index 0000000..7a61c94
--- /dev/null
+++ b/pkg/linux_amd64_race/runtime/cgo.a
Binary files differ
diff --git a/pkg/linux_amd64_race/runtime/debug.a b/pkg/linux_amd64_race/runtime/debug.a
new file mode 100644
index 0000000..14329f2
--- /dev/null
+++ b/pkg/linux_amd64_race/runtime/debug.a
Binary files differ
diff --git a/pkg/linux_amd64_race/runtime/pprof.a b/pkg/linux_amd64_race/runtime/pprof.a
new file mode 100644
index 0000000..b49b32b
--- /dev/null
+++ b/pkg/linux_amd64_race/runtime/pprof.a
Binary files differ
diff --git a/pkg/linux_amd64_race/runtime/race.a b/pkg/linux_amd64_race/runtime/race.a
new file mode 100644
index 0000000..26e73da
--- /dev/null
+++ b/pkg/linux_amd64_race/runtime/race.a
Binary files differ
diff --git a/pkg/linux_amd64_race/sort.a b/pkg/linux_amd64_race/sort.a
new file mode 100644
index 0000000..aa43461
--- /dev/null
+++ b/pkg/linux_amd64_race/sort.a
Binary files differ
diff --git a/pkg/linux_amd64_race/strconv.a b/pkg/linux_amd64_race/strconv.a
new file mode 100644
index 0000000..5dd1633
--- /dev/null
+++ b/pkg/linux_amd64_race/strconv.a
Binary files differ
diff --git a/pkg/linux_amd64_race/strings.a b/pkg/linux_amd64_race/strings.a
new file mode 100644
index 0000000..bf755d1
--- /dev/null
+++ b/pkg/linux_amd64_race/strings.a
Binary files differ
diff --git a/pkg/linux_amd64_race/sync.a b/pkg/linux_amd64_race/sync.a
new file mode 100644
index 0000000..72c684f
--- /dev/null
+++ b/pkg/linux_amd64_race/sync.a
Binary files differ
diff --git a/pkg/linux_amd64_race/sync/atomic.a b/pkg/linux_amd64_race/sync/atomic.a
new file mode 100644
index 0000000..3444f52
--- /dev/null
+++ b/pkg/linux_amd64_race/sync/atomic.a
Binary files differ
diff --git a/pkg/linux_amd64_race/syscall.a b/pkg/linux_amd64_race/syscall.a
new file mode 100644
index 0000000..a2c5905
--- /dev/null
+++ b/pkg/linux_amd64_race/syscall.a
Binary files differ
diff --git a/pkg/linux_amd64_race/testing.a b/pkg/linux_amd64_race/testing.a
new file mode 100644
index 0000000..4c4a0df
--- /dev/null
+++ b/pkg/linux_amd64_race/testing.a
Binary files differ
diff --git a/pkg/linux_amd64_race/testing/iotest.a b/pkg/linux_amd64_race/testing/iotest.a
new file mode 100644
index 0000000..581f5f3
--- /dev/null
+++ b/pkg/linux_amd64_race/testing/iotest.a
Binary files differ
diff --git a/pkg/linux_amd64_race/testing/quick.a b/pkg/linux_amd64_race/testing/quick.a
new file mode 100644
index 0000000..0873a39
--- /dev/null
+++ b/pkg/linux_amd64_race/testing/quick.a
Binary files differ
diff --git a/pkg/linux_amd64_race/text/scanner.a b/pkg/linux_amd64_race/text/scanner.a
new file mode 100644
index 0000000..65be658
--- /dev/null
+++ b/pkg/linux_amd64_race/text/scanner.a
Binary files differ
diff --git a/pkg/linux_amd64_race/text/tabwriter.a b/pkg/linux_amd64_race/text/tabwriter.a
new file mode 100644
index 0000000..3496a58
--- /dev/null
+++ b/pkg/linux_amd64_race/text/tabwriter.a
Binary files differ
diff --git a/pkg/linux_amd64_race/text/template.a b/pkg/linux_amd64_race/text/template.a
new file mode 100644
index 0000000..007214b
--- /dev/null
+++ b/pkg/linux_amd64_race/text/template.a
Binary files differ
diff --git a/pkg/linux_amd64_race/text/template/parse.a b/pkg/linux_amd64_race/text/template/parse.a
new file mode 100644
index 0000000..c01ed6c
--- /dev/null
+++ b/pkg/linux_amd64_race/text/template/parse.a
Binary files differ
diff --git a/pkg/linux_amd64_race/time.a b/pkg/linux_amd64_race/time.a
new file mode 100644
index 0000000..45939b6
--- /dev/null
+++ b/pkg/linux_amd64_race/time.a
Binary files differ
diff --git a/pkg/linux_amd64_race/unicode.a b/pkg/linux_amd64_race/unicode.a
new file mode 100644
index 0000000..88446ed
--- /dev/null
+++ b/pkg/linux_amd64_race/unicode.a
Binary files differ
diff --git a/pkg/linux_amd64_race/unicode/utf16.a b/pkg/linux_amd64_race/unicode/utf16.a
new file mode 100644
index 0000000..8e1fa90
--- /dev/null
+++ b/pkg/linux_amd64_race/unicode/utf16.a
Binary files differ
diff --git a/pkg/linux_amd64_race/unicode/utf8.a b/pkg/linux_amd64_race/unicode/utf8.a
new file mode 100644
index 0000000..d61107d
--- /dev/null
+++ b/pkg/linux_amd64_race/unicode/utf8.a
Binary files differ
diff --git a/pkg/obj/linux_amd64/lib9.a b/pkg/obj/linux_amd64/lib9.a
new file mode 100644
index 0000000..20eb2d9
--- /dev/null
+++ b/pkg/obj/linux_amd64/lib9.a
Binary files differ
diff --git a/pkg/obj/linux_amd64/libbio.a b/pkg/obj/linux_amd64/libbio.a
new file mode 100644
index 0000000..6588853
--- /dev/null
+++ b/pkg/obj/linux_amd64/libbio.a
Binary files differ
diff --git a/pkg/obj/linux_amd64/libcc.a b/pkg/obj/linux_amd64/libcc.a
new file mode 100644
index 0000000..bc6a08f
--- /dev/null
+++ b/pkg/obj/linux_amd64/libcc.a
Binary files differ
diff --git a/pkg/obj/linux_amd64/libgc.a b/pkg/obj/linux_amd64/libgc.a
new file mode 100644
index 0000000..30b9522
--- /dev/null
+++ b/pkg/obj/linux_amd64/libgc.a
Binary files differ
diff --git a/pkg/obj/linux_amd64/liblink.a b/pkg/obj/linux_amd64/liblink.a
new file mode 100644
index 0000000..5fd9a1e
--- /dev/null
+++ b/pkg/obj/linux_amd64/liblink.a
Binary files differ
diff --git a/pkg/tool/linux_amd64/6a b/pkg/tool/linux_amd64/6a
new file mode 100755
index 0000000..586bf20
--- /dev/null
+++ b/pkg/tool/linux_amd64/6a
Binary files differ
diff --git a/pkg/tool/linux_amd64/6c b/pkg/tool/linux_amd64/6c
new file mode 100755
index 0000000..376cc4c
--- /dev/null
+++ b/pkg/tool/linux_amd64/6c
Binary files differ
diff --git a/pkg/tool/linux_amd64/6g b/pkg/tool/linux_amd64/6g
new file mode 100755
index 0000000..1bfb0fc
--- /dev/null
+++ b/pkg/tool/linux_amd64/6g
Binary files differ
diff --git a/pkg/tool/linux_amd64/6l b/pkg/tool/linux_amd64/6l
new file mode 100755
index 0000000..ef2433c
--- /dev/null
+++ b/pkg/tool/linux_amd64/6l
Binary files differ
diff --git a/pkg/tool/linux_amd64/addr2line b/pkg/tool/linux_amd64/addr2line
new file mode 100755
index 0000000..6e84e79
--- /dev/null
+++ b/pkg/tool/linux_amd64/addr2line
Binary files differ
diff --git a/pkg/tool/linux_amd64/cgo b/pkg/tool/linux_amd64/cgo
new file mode 100755
index 0000000..f131d8e
--- /dev/null
+++ b/pkg/tool/linux_amd64/cgo
Binary files differ
diff --git a/pkg/tool/linux_amd64/dist b/pkg/tool/linux_amd64/dist
new file mode 100755
index 0000000..d26bfde
--- /dev/null
+++ b/pkg/tool/linux_amd64/dist
Binary files differ
diff --git a/pkg/tool/linux_amd64/fix b/pkg/tool/linux_amd64/fix
new file mode 100755
index 0000000..2a2d7a0
--- /dev/null
+++ b/pkg/tool/linux_amd64/fix
Binary files differ
diff --git a/pkg/tool/linux_amd64/nm b/pkg/tool/linux_amd64/nm
new file mode 100755
index 0000000..7ef2f25
--- /dev/null
+++ b/pkg/tool/linux_amd64/nm
Binary files differ
diff --git a/pkg/tool/linux_amd64/objdump b/pkg/tool/linux_amd64/objdump
new file mode 100755
index 0000000..4e13143
--- /dev/null
+++ b/pkg/tool/linux_amd64/objdump
Binary files differ
diff --git a/pkg/tool/linux_amd64/pack b/pkg/tool/linux_amd64/pack
new file mode 100755
index 0000000..05a7931
--- /dev/null
+++ b/pkg/tool/linux_amd64/pack
Binary files differ
diff --git a/pkg/tool/linux_amd64/pprof b/pkg/tool/linux_amd64/pprof
new file mode 100755
index 0000000..0d1bb7e
--- /dev/null
+++ b/pkg/tool/linux_amd64/pprof
Binary files differ
diff --git a/pkg/tool/linux_amd64/yacc b/pkg/tool/linux_amd64/yacc
new file mode 100755
index 0000000..17c73a2
--- /dev/null
+++ b/pkg/tool/linux_amd64/yacc
Binary files differ