go/src
Michael Munday 15817e409b cmd/compile: make link register allocatable in non-leaf functions
We save and restore the link register in non-leaf functions because
it is clobbered by CALLs. It is therefore available for general
purpose use.

Only enabled on s390x currently. The RC4 benchmarks in particular
benefit from the extra register:

name     old speed     new speed     delta
RC4_128  243MB/s ± 2%  341MB/s ± 2%  +40.46%  (p=0.008 n=5+5)
RC4_1K   267MB/s ± 0%  359MB/s ± 1%  +34.32%  (p=0.008 n=5+5)
RC4_8K   271MB/s ± 0%  362MB/s ± 0%  +33.61%  (p=0.008 n=5+5)

Change-Id: Id23bff95e771da9425353da2f32668b8e34ba09f
Reviewed-on: https://go-review.googlesource.com/30597
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Run-TryBot: Michael Munday <munday@ca.ibm.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2016-10-11 18:52:35 +00:00
..
archive archive/zip: handle mtime in NTFS/UNIX/ExtendedTS extra fields 2016-10-06 19:05:52 +00:00
bufio bufio: remove redundant Writer.flush method 2016-10-01 15:46:15 +00:00
builtin builtin: clarify that make(map[K]V, n) allocates space for n elements 2016-09-10 12:57:37 +00:00
bytes strings, bytes: panic if Repeat overflows or if given a negative count 2016-10-01 15:47:35 +00:00
cmd cmd/compile: make link register allocatable in non-leaf functions 2016-10-11 18:52:35 +00:00
compress compress/gzip: document Reader.Read 2016-10-09 00:22:59 +00:00
container container/list: silence vet warnings 2016-08-16 14:35:37 +00:00
context context: make DeadlineExceeded implement net.Error 2016-10-05 15:53:04 +00:00
crypto crypto/x509: parse all names in an RDN. 2016-10-11 17:35:55 +00:00
database/sql database/sql: fixup remaining driver call to use context 2016-10-04 17:22:14 +00:00
debug all: use testing.GoToolPath instead of "go" 2016-08-30 22:49:11 +00:00
encoding encoding/json: explicitly document and test "-" key tag 2016-10-06 14:42:16 +00:00
errors all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
expvar expvar: export http.Handler 2016-09-25 23:34:28 +00:00
flag flag: use strconv instead of fmt in values' String funcs 2016-09-10 10:29:44 +00:00
fmt fmt: document and adjust Scanf space handling to eliminate a few paradoxes 2016-10-07 03:46:50 +00:00
go go/importer: better error messages when export data is not found 2016-10-06 17:38:35 +00:00
hash hash/crc32: cleanup code and improve tests 2016-08-31 15:17:57 +00:00
html html/template: check "type" attribute in <script> 2016-09-29 20:12:31 +00:00
image image/gif: check handling of truncated GIF files 2016-10-05 04:28:45 +00:00
index/suffixarray index/suffixarray: add Lookup example 2016-08-21 01:10:22 +00:00
internal cmd/trace: fix a runnable goroutine count bug 2016-10-11 12:07:44 +00:00
io io: simplified a small part of copyBuffer 2016-10-09 22:50:12 +00:00
log log/syslog: document that Dial uses net.Dial parameters, add example 2016-08-19 01:01:47 +00:00
math math/big: move ProbablyPrime into its own source file 2016-10-11 16:16:17 +00:00
mime net/http: multipart ReadForm close file after copy 2016-10-05 16:35:03 +00:00
net net/http: fix typo in server commont 2016-10-10 04:06:49 +00:00
os os/exec: add example for CommandContext 2016-10-05 21:30:14 +00:00
path path/filepath: handle "C:." correctly in EvalSymlinks on Windows 2016-09-05 00:53:32 +00:00
plugin plugin: darwin support 2016-09-23 02:16:42 +00:00
reflect reflect: ignore struct tags when converting structs 2016-10-04 17:15:59 +00:00
regexp regexp: remove dead code 2016-10-04 14:49:35 +00:00
runtime cmd/link: insert trampolines for too-far jumps on ARM 2016-10-11 13:35:33 +00:00
sort sort: fix a slice benchmark not using the stable variant, add another 2016-10-05 14:43:23 +00:00
strconv strconv: fix function name in errors for Atoi 2016-09-04 00:17:58 +00:00
strings strings, bytes: panic if Repeat overflows or if given a negative count 2016-10-01 15:47:35 +00:00
sync cmd/compile: intrinsify sync/atomic for amd64 2016-08-30 15:23:23 +00:00
syscall syscall: relax TestUnshare 2016-10-05 19:30:42 +00:00
testing testing: add Name method to *T and *B 2016-09-28 10:15:28 +00:00
text text/template: improve lexer performance in finding left delimiters. 2016-09-13 12:51:13 +00:00
time time: document that calendrical calculations are with no leap seconds 2016-10-06 19:43:14 +00:00
unicode unicode/utf8: reduce bounds checks in EncodeRune 2016-09-03 20:05:36 +00:00
unsafe unsafe: document use of &^ to round/align pointers 2016-08-18 16:45:17 +00:00
vendor/golang_org/x vendor: update vendored lif 2016-10-08 00:02:11 +00:00
all.bash
all.bat
all.rc
androidtest.bash androidtest.bash: use go list to get pkg dir 2016-08-29 15:24:39 +00:00
bootstrap.bash all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
buildall.bash build: use go tool dist list 2016-02-26 03:58:58 +00:00
clean.bash
clean.bat
clean.rc
cmp.bash cmd/compile: switch to compact export format by default 2016-04-27 16:59:55 +00:00
iostest.bash
make.bash cmd/dist, cmd/go: add environment variable override for pkg-config 2016-10-03 18:08:01 +00:00
make.bat build: unset GOBIN during build 2016-05-19 18:40:53 +00:00
Make.dist
make.rc build: unset GOBIN during build 2016-05-19 18:40:53 +00:00
naclmake.bash src: split nacltest.bash into naclmake.bash and keep nacltest.bash 2016-04-12 02:03:34 +00:00
nacltest.bash all: make copyright headers consistent with one space after period 2016-05-02 13:43:18 +00:00
race.bash cmd/dist: make test default to --no-rebuild 2015-12-29 15:20:00 +00:00
race.bat cmd/dist: make test default to --no-rebuild 2015-12-29 15:20:00 +00:00
run.bash build: unset GOBIN during build 2016-05-19 18:40:53 +00:00
run.bat build: unset GOBIN during build 2016-05-19 18:40:53 +00:00
run.rc build: unset GOBIN during build 2016-05-19 18:40:53 +00:00