- 29 Apr, 2016 10 commits
-
-
Keith Randall authored
Break really long lines. Add spacing to line up columns. In AMD64, put all the optimization rules after all the lowering rules. Change-Id: I45cc7368bf278416e67f89e74358db1bd4326a93 Reviewed-on: https://go-review.googlesource.com/22470Reviewed-by: David Chase <drchase@google.com>
-
Nigel Tao authored
This makes compress/flate's version of Snappy diverge from the upstream golang/snappy version, but the latter has a goal of matching C++ snappy output byte-for-byte. Both C++ and the asm version of golang/snappy can use a smaller N for the O(N) zero-initialization of the hash table when the input is small, even if the pure Go golang/snappy algorithm cannot: "var table [tableSize]uint16" zeroes all tableSize elements. For this package, we don't have the match-C++-snappy goal, so we can use a different (constant) hash table size. This is a small win, in terms of throughput and output size, but it also enables us to re-use the (constant size) hash table between encodeBestSpeed calls, avoiding the cost of zero-initializing the hash table altogether. This will be implemented in follow-up commits. This package's benchmarks: name old speed new speed delta EncodeDigitsSpeed1e4-8 72.8MB/s ± 1% 73.5MB/s ± 1% +0.86% (p=0.000 n=10+10) EncodeDigitsSpeed1e5-8 77.5MB/s ± 1% 78.0MB/s ± 0% +0.69% (p=0.000 n=10+10) EncodeDigitsSpeed1e6-8 82.0MB/s ± 1% 82.7MB/s ± 1% +0.85% (p=0.000 n=10+9) EncodeTwainSpeed1e4-8 65.1MB/s ± 1% 65.6MB/s ± 0% +0.78% (p=0.000 n=10+9) EncodeTwainSpeed1e5-8 80.0MB/s ± 0% 80.6MB/s ± 1% +0.66% (p=0.000 n=9+10) EncodeTwainSpeed1e6-8 81.6MB/s ± 1% 82.1MB/s ± 1% +0.55% (p=0.017 n=10+10) Input size in bytes, output size (and time taken) before and after on some larger files: 1073741824 57269781 ( 3183ms) 57269781 ( 3177ms) adresser.001 1000000000 391052000 ( 11071ms) 391051996 ( 11067ms) enwik9 1911399616 378679516 ( 13450ms) 378679514 ( 13079ms) gob-stream 8558382592 3972329193 ( 99962ms) 3972329193 ( 91290ms) rawstudio-mint14.tar 200000000 200015265 ( 776ms) 200015265 ( 774ms) sharnd.out Thanks to Klaus Post for the original suggestion on cl/21021. Change-Id: Ia4c63a8d1b92c67e1765ec5c3c8c69d289d9a6ce Reviewed-on: https://go-review.googlesource.com/22604Reviewed-by: Russ Cox <rsc@golang.org>
-
Dave Cheney authored
Drive by gardening of bv.go. - Unexport the Bvec type, it is not used outside internal/gc. (machine translated with gofmt -r) - Removed unused constants and functions. (driven by cmd/unused) Change-Id: I3433758ad4e62439f802f4b0ed306e67336d9aba Reviewed-on: https://go-review.googlesource.com/22602 Run-TryBot: Dave Cheney <dave@cheney.net> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Cherry Zhang authored
After CL 22461, c-archive build on darwin/arm is by default compiled with -shared and installed in pkg/darwin_arm_shared. Fix build (2nd time...) Change-Id: Ia2bb09bb6e1ebc9bc74f7570dd80c81d05eaf744 Reviewed-on: https://go-review.googlesource.com/22534Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: David Crawshaw <crawshaw@golang.org> Run-TryBot: David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Nigel Tao authored
This encoding algorithm, which prioritizes speed over output size, is based on Snappy's LZ77-style encoder: github.com/golang/snappy This commit keeps the diff between this package's encodeBestSpeed function and and Snappy's encodeBlock function as small as possible (see the diff below). Follow-up commits will improve this package's performance and output size. This package's speed benchmarks: name old speed new speed delta EncodeDigitsSpeed1e4-8 40.7MB/s ± 0% 73.0MB/s ± 0% +79.18% (p=0.008 n=5+5) EncodeDigitsSpeed1e5-8 33.0MB/s ± 0% 77.3MB/s ± 1% +134.04% (p=0.008 n=5+5) EncodeDigitsSpeed1e6-8 32.1MB/s ± 0% 82.1MB/s ± 0% +156.18% (p=0.008 n=5+5) EncodeTwainSpeed1e4-8 42.1MB/s ± 0% 65.0MB/s ± 0% +54.61% (p=0.008 n=5+5) EncodeTwainSpeed1e5-8 46.3MB/s ± 0% 80.0MB/s ± 0% +72.81% (p=0.008 n=5+5) EncodeTwainSpeed1e6-8 47.3MB/s ± 0% 81.7MB/s ± 0% +72.86% (p=0.008 n=5+5) Here's the milliseconds taken, before and after this commit, to compress a number of test files: Go's src/compress/testdata files: 4 1 e.txt 8 4 Mark.Twain-Tom.Sawyer.txt github.com/golang/snappy's benchmark files: 3 1 alice29.txt 12 3 asyoulik.txt 6 1 fireworks.jpeg 1 1 geo.protodata 1 0 html 2 2 html_x_4 6 3 kppkn.gtb 11 4 lcet10.txt 5 1 paper-100k.pdf 14 6 plrabn12.txt 17 6 urls.10K Larger files linked to from https://docs.google.com/spreadsheets/d/1VLxi-ac0BAtf735HyH3c1xRulbkYYUkFecKdLPH7NIQ/edit#gid=166102500 2409 3182 adresser.001 16757 11027 enwik9 13764 12946 gob-stream 153978 74317 rawstudio-mint14.tar 4371 770 sharnd.out Output size is larger. In the table below, the first column is the input size, the second column is the output size prior to this commit, the third column is the output size after this commit. 100003 47707 50006 e.txt 387851 172707 182930 Mark.Twain-Tom.Sawyer.txt 152089 62457 66705 alice29.txt 125179 54503 57274 asyoulik.txt 123093 122827 123108 fireworks.jpeg 118588 18574 20558 geo.protodata 102400 16601 17305 html 409600 65506 70313 html_x_4 184320 49007 50944 kppkn.gtb 426754 166957 179355 lcet10.txt 102400 82126 84937 paper-100k.pdf 481861 218617 231988 plrabn12.txt 702087 241774 258020 urls.10K 1073741824 43074110 57269781 adresser.001 1000000000 365772256 391052000 enwik9 1911399616 340364558 378679516 gob-stream 8558382592 3807229562 3972329193 rawstudio-mint14.tar 200000000 200061040 200015265 sharnd.out The diff between github.com/golang/snappy's encodeBlock function and this commit's encodeBestSpeed function: 1c1,7 < func encodeBlock(dst, src []byte) (d int) { --- > func encodeBestSpeed(dst []token, src []byte) []token { > // This check isn't in the Snappy implementation, but there, the caller > // instead of the callee handles this case. > if len(src) < minNonLiteralBlockSize { > return emitLiteral(dst, src) > } > 4c10 < // and len(src) <= maxBlockSize and maxBlockSize == 65536. --- > // and len(src) <= maxStoreBlockSize and maxStoreBlockSize == 65535. 65c71 < if load32(src, s) == load32(src, candidate) { --- > if s-candidate < maxOffset && load32(src, s) == load32(src, candidate) { 73c79 < d += emitLiteral(dst[d:], src[nextEmit:s]) --- > dst = emitLiteral(dst, src[nextEmit:s]) 90c96 < // This is an inlined version of: --- > // This is an inlined version of Snappy's: 93c99,103 < for i := candidate + 4; s < len(src) && src[i] == src[s]; i, s = i+1, s+1 { --- > s1 := base + maxMatchLength > if s1 > len(src) { > s1 = len(src) > } > for i := candidate + 4; s < s1 && src[i] == src[s]; i, s = i+1, s+1 { 96c106,107 < d += emitCopy(dst[d:], base-candidate, s-base) --- > // matchToken is flate's equivalent of Snappy's emitCopy. > dst = append(dst, matchToken(uint32(s-base-3), uint32(base-candidate-minOffsetSize))) 114c125 < if uint32(x>>8) != load32(src, candidate) { --- > if s-candidate >= maxOffset || uint32(x>>8) != load32(src, candidate) { 124c135 < d += emitLiteral(dst[d:], src[nextEmit:]) --- > dst = emitLiteral(dst, src[nextEmit:]) 126c137 < return d --- > return dst This change is based on https://go-review.googlesource.com/#/c/21021/ by Klaus Post, but it is a separate changelist as cl/21021 seems to have stalled in code review, and the Go 1.7 feature freeze approaches. Golang-dev discussion: https://groups.google.com/d/topic/golang-dev/XYgHX9p8IOk/discussion and of course cl/21021. Change-Id: Ib662439417b3bd0b61c2977c12c658db3e44d164 Reviewed-on: https://go-review.googlesource.com/22370Reviewed-by: Russ Cox <rsc@golang.org>
-
Brad Fitzpatrick authored
Change-Id: I2e8ae403622ba7131cadaba506100d79613183f1 Reviewed-on: https://go-review.googlesource.com/22601Reviewed-by: Russ Cox <rsc@golang.org> Reviewed-by: Andrew Gerrand <adg@golang.org>
-
Alex Brainman authored
.bss section has no data stored in PE file. But when .bss section data is used by the linker it is assumed that its every byte is set to zero. (*Section).Data returns garbage at this moment. Change (*Section).Data so it returns slice filled with 0s. Updates #15345 Change-Id: I1fa5138244a9447e1d59dec24178b1dd0fd4c5d7 Reviewed-on: https://go-review.googlesource.com/22544Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Alex Brainman <alex.brainman@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Robert Griesemer authored
Follow-up to https://golang.org/cl/22543. Change-Id: I873b4fa6616ac2aea8faada2fccd126233bbc07f Reviewed-on: https://go-review.googlesource.com/22583 Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Russ Cox authored
See https://golang.org/design/2775-binary-only-packages for design. Fixes #2775. Change-Id: I33e74eebffadc14d3340bba96083af0dec5172d5 Reviewed-on: https://go-review.googlesource.com/22433Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Nigel Tao authored
This is an error according to the spec, but Firefox and Google Chrome seem OK with this. Fixes #15059. Change-Id: I841cf44e96655e91a2481555f38fbd7055a32202 Reviewed-on: https://go-review.googlesource.com/22546Reviewed-by: Rob Pike <r@golang.org>
-
- 28 Apr, 2016 25 commits
-
-
Nigel Tao authored
See Section 23. Graphic Control Extension of the spec: https://www.w3.org/Graphics/GIF/spec-gif89a.txt Change-Id: Ie78b4ff4aa97e1b332ade67ae4fa25f7c0770610 Reviewed-on: https://go-review.googlesource.com/22547Reviewed-by: Rob Pike <r@golang.org>
-
Michael Hudson-Doyle authored
golang.org/cl/22453 was supposed to pass -no-pie to the linker when linking a race-enabled binary if the host toolchain supports it. But I bungled the supported check as I forgot to pass -c to the host compiler so it tried to compile a 0 byte .c file into an executable, which will never work. Fix it to pass -c as it should have all along. Change-Id: I4801345c7a29cb18d5f22cec5337ce535f92135d Reviewed-on: https://go-review.googlesource.com/22587 Run-TryBot: Michael Hudson-Doyle <michael.hudson@canonical.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Minux Ma <minux@golang.org>
-
Keith Randall authored
It is unused, remove the clutter. Change-Id: I51a44326b125ef79241459c463441f76a289cc08 Reviewed-on: https://go-review.googlesource.com/22586Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David Symonds authored
Change-Id: I46d9ea31cf5836d054a9ce22af4dd1742a418a07 Reviewed-on: https://go-review.googlesource.com/22588 Run-TryBot: David Symonds <dsymonds@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Mikio Hara authored
The _SigUnblock flag was appended to SIGSYS slot of runtime signal table for Linux in https://go-review.googlesource.com/22202, but there is still no concrete opinion on whether SIGSYS must be an unblocked signal for runtime. This change removes _SigUnblock flag from SIGSYS on Linux for consistency in runtime signal handling and adds a reference to #15204 to runtime signal table for FreeBSD. Updates #15204. Change-Id: I42992b1d852c2ab5dd37d6dbb481dba46929f665 Reviewed-on: https://go-review.googlesource.com/22537Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Matthew Dempsky authored
DNS packing and unpacking uses hand-coded struct walking functions rather than reflection, so these tags are unneeded and just contribute to their runtime reflect metadata size. Change-Id: I2db09d5159912bcbc3b482cbf23a50fa8fa807fa Reviewed-on: https://go-review.googlesource.com/22594 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Matthew Dempsky authored
There are no real world use cases for HINFO, MINFO, MB, MG, or MR records, and package net's exposed APIs don't provide any way to access them even if there were. If a use ever does show up, we can revive them. In the mean time, this is just effectively-dead code that sticks around because of rr_mk. Change-Id: I6c188b5ee32f3b3a04588b79a0ee9c2e3e725ccc Reviewed-on: https://go-review.googlesource.com/22593 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
Updates #12580 Change-Id: I9f9578148ef2b48dffede1007317032d39f6af55 Reviewed-on: https://go-review.googlesource.com/22191Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Tom Bergan <tombergan@google.com> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
Goroutine leak checking is still too tedious, so untested. See #6705 which is my fault for forgetting to mail out. Change-Id: I899fb311c9d4229ff1dbd3f54fe307805e17efee Reviewed-on: https://go-review.googlesource.com/22581Reviewed-by: Ahmed W. <oneofone@gmail.com> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Robert Griesemer authored
This reduces the export data size significantly (15%-25%) for some packages, especially where the paths are very long or if there are many files involved. Slight (2%) reduction on average, with virtually no increases in export data size. Selected export data sizes for packages with |delta %| > 3%: package before after delta % cmd/asm/internal/arch 11647 11088 -559 -4% cmd/compile/internal/amd64 838 600 -238 -27% cmd/compile/internal/arm 7323 6793 -530 -6% cmd/compile/internal/arm64 19948 18971 -977 -4% cmd/compile/internal/big 9043 8548 -495 -4% cmd/compile/internal/mips64 645 482 -163 -24% cmd/compile/internal/ppc64 695 497 -198 -27% cmd/compile/internal/s390x 553 433 -120 -21% cmd/compile/internal/x86 744 555 -189 -24% cmd/dist 145 121 -24 -16% cmd/internal/objfile 17359 16474 -885 -4% cmd/internal/pprof/symbolz 8346 7941 -405 -4% cmd/link/internal/amd64 11178 10604 -574 -4% cmd/link/internal/arm 204 171 -33 -15% cmd/link/internal/arm64 210 175 -35 -16% cmd/link/internal/mips64 213 177 -36 -16% cmd/link/internal/ppc64 211 176 -35 -16% cmd/link/internal/s390x 210 175 -35 -16% cmd/link/internal/x86 203 170 -33 -15% cmd/trace 782 744 -38 -4% compress/lzw 402 383 -19 -4% crypto/aes 311 262 -49 -15% crypto/cipher 1138 959 -179 -15% crypto/des 315 288 -27 -8% crypto/elliptic 6063 5746 -317 -4% crypto/rc4 317 295 -22 -6% crypto/sha256 348 312 -36 -9% crypto/sha512 487 451 -36 -6% go/doc 3871 3649 -222 -5% go/internal/gccgoimporter 2063 1949 -114 -5% go/internal/gcimporter 3253 3096 -157 -4% math 4343 3572 -771 -17% math/cmplx 1580 1274 -306 -18% math/rand 982 926 -56 -5% net/internal/socktest 2159 2049 -110 -4% os/exec 7928 7492 -436 -4% os/signal 237 208 -29 -11% os/user 717 682 -35 -4% runtime/internal/atomic 728 693 -35 -4% runtime/internal/sys 2287 2107 -180 -7% sync 1306 1214 -92 -6% all packages 1509255 1465507 -43748 -2% Change-Id: I98a11521b552166b7f47f2039a29f106748bf5d4 Reviewed-on: https://go-review.googlesource.com/22580Reviewed-by: Alan Donovan <adonovan@google.com>
-
Matthew Dempsky authored
Change-Id: Icecbf9bae8c39670d1ceef62dd94b36e90b27b04 Reviewed-on: https://go-review.googlesource.com/22570 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Michael Munday authored
MGHI (16-bit signed immediate) is now used where possible for both MULLW and MULLD. MGHI is 2-bytes shorter than MSGFI. Change-Id: I5d0648934f28b3403b1126913fd703d8f62b9e9f Reviewed-on: https://go-review.googlesource.com/22398 Run-TryBot: Michael Munday <munday@ca.ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bill O'Farrell <billotosyr@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Matthew Dempsky authored
Avoids some extra work and string concatenation at query time. benchmark old allocs new allocs delta BenchmarkGoLookupIP-32 154 150 -2.60% BenchmarkGoLookupIPNoSuchHost-32 446 442 -0.90% BenchmarkGoLookupIPWithBrokenNameServer-32 564 568 +0.71% benchmark old bytes new bytes delta BenchmarkGoLookupIP-32 10824 10704 -1.11% BenchmarkGoLookupIPNoSuchHost-32 43140 42992 -0.34% BenchmarkGoLookupIPWithBrokenNameServer-32 46616 46680 +0.14% BenchmarkGoLookupIPWithBrokenNameServer's regression appears to be because it's actually only performing 1 LookupIP call, so the extra work done parsing the DNS config file doesn't amortize as well as for BenchmarkGoLookupIP or BenchmarkGoLOokupIPNoSuchHost, which perform 2000+ LookupIP calls per run. Update #15473. Change-Id: I98c8072f2f39e2f2ccd6c55e9e9bd309f5ad68f8 Reviewed-on: https://go-review.googlesource.com/22571Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Matthew Dempsky authored
Avoids generating some redundant garbage from re-concatenating the same string for every DNS query. benchmark old allocs new allocs delta BenchmarkGoLookupIP-32 156 154 -1.28% BenchmarkGoLookupIPNoSuchHost-32 456 446 -2.19% BenchmarkGoLookupIPWithBrokenNameServer-32 577 564 -2.25% benchmark old bytes new bytes delta BenchmarkGoLookupIP-32 10873 10824 -0.45% BenchmarkGoLookupIPNoSuchHost-32 43303 43140 -0.38% BenchmarkGoLookupIPWithBrokenNameServer-32 46824 46616 -0.44% Update #15473. Change-Id: I3b0173dfedf31bd08eaea1069968b416850864a1 Reviewed-on: https://go-review.googlesource.com/22556Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Brad Fitzpatrick authored
Updates #14660 Change-Id: Ifa5c97ba327ad7ceea0a9a252e3dbd9d079dae54 Reviewed-on: https://go-review.googlesource.com/22529Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Adam Langley authored
This change adds Config.Renegotiation which controls whether a TLS client will accept renegotiation requests from a server. This is used, for example, by some web servers that wish to “add” a client certificate to an HTTPS connection. This is disabled by default because it significantly complicates the state machine. Originally, handshakeMutex was taken before locking either Conn.in or Conn.out. However, if renegotiation is permitted then a handshake may be triggered during a Read() call. If Conn.in were unlocked before taking handshakeMutex then a concurrent Read() call could see an intermediate state and trigger an error. Thus handshakeMutex is now locked after Conn.in and the handshake functions assume that Conn.in is locked for the duration of the handshake. Additionally, handshakeMutex used to protect Conn.out also. With the possibility of renegotiation that's no longer viable and so writeRecordLocked has been split off. Fixes #5742. Change-Id: I935914db1f185d507ff39bba8274c148d756a1c8 Reviewed-on: https://go-review.googlesource.com/22475 Run-TryBot: Adam Langley <agl@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Keith Randall authored
Make sure we don't do O(n^2) work to eliminate a chain of n copies. benchmark old ns/op new ns/op delta BenchmarkCopyElim1-8 1418 1406 -0.85% BenchmarkCopyElim10-8 5289 5162 -2.40% BenchmarkCopyElim100-8 52618 41684 -20.78% BenchmarkCopyElim1000-8 2473878 424339 -82.85% BenchmarkCopyElim10000-8 269373954 6367971 -97.64% BenchmarkCopyElim100000-8 31272781165 104357244 -99.67% Change-Id: I680f906f70f2ee1a8615cb1046bc510c77d59284 Reviewed-on: https://go-review.googlesource.com/22535Reviewed-by: Alexandru Moșoi <alexandru@mosoi.ro>
-
David Chase authored
Comparison of certain map types could fail to be antisymmetric. This corrects that. Change-Id: I88c6256053ce29950ced4ba4d538e241ee8591fe Reviewed-on: https://go-review.googlesource.com/22552 Run-TryBot: David Chase <drchase@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: jcd . <jcd@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
-
Dan Peterson authored
Instead of keeping the desired number of seconds and converting to time.Duration for every query, convert to time.Duration when building the config. Updates #15473 Change-Id: Ib24c050b593b3109011e359f4ed837a3fb45dc65 Reviewed-on: https://go-review.googlesource.com/22548Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Aliaksandr Valialkin authored
- Simplified the code. - Removed types for slice aliases from composite literals' whitelist, since they are properly handled by vet. Fixes #15408 Updates #9171 Updates #11041 Change-Id: Ia1806c9eb3f327c09d2e28da4ffdb233b5a159b0 Reviewed-on: https://go-review.googlesource.com/22318 Run-TryBot: Rob Pike <r@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Robert Griesemer authored
Binary export format only. Make sure we don't accidentally export an unnamed parameter in signatures which expect all named parameters; otherwise we crash during import. Appears to happen for _ (blank) parameter names, as observed in method signatures such as the one at: x/tools/godoc/analysis/analysis.go:76. Fixes #15470. TBR=mdempsky Change-Id: I1b1184bf08c4c09d8a46946539c4b8c341acdb84 Reviewed-on: https://go-review.googlesource.com/22543Reviewed-by: Robert Griesemer <gri@golang.org>
-
Robert Griesemer authored
Position info for fields and methods was based on the wrong node in the new export format, leading to position info for empty file names and 0 line numbers. Use correct node now. Due to compact delta encoding, there is no difference in export format size. In fact, because encoding of "no line changed" is uncommon and thus a bit more expensive, in many cases the data is now slightly shorter. Stats for export data size (pachage, before, after, delta%): archive/tar 5128 5025 -1% archive/zip 7672 7515 -1% bufio 3486 3377 -2% bytes 4879 4821 0% cmd/addr2line 66 66 0% cmd/api 14033 13970 0% cmd/asm 60 60 0% cmd/asm/internal/arch 11659 11647 0% cmd/asm/internal/asm 13858 13766 0% cmd/asm/internal/flags 306 300 -1% cmd/asm/internal/lex 15684 15623 0% cmd/cgo 15383 15298 0% cmd/compile 63 63 0% cmd/compile/internal/amd64 838 838 0% cmd/compile/internal/arm 7333 7323 0% cmd/compile/internal/arm64 19953 19951 0% cmd/compile/internal/big 8943 9043 1% cmd/compile/internal/gc 57465 56801 0% cmd/compile/internal/mips64 645 645 0% cmd/compile/internal/ppc64 695 695 0% cmd/compile/internal/s390x 553 553 0% cmd/compile/internal/ssa 34883 34559 0% cmd/compile/internal/x86 744 744 0% cmd/cover 4961 4892 0% cmd/dist 145 145 0% cmd/doc 8891 8853 0% cmd/expdump 67 67 0% cmd/fix 422 406 -3% cmd/go 9951 9747 -1% cmd/gofmt 66 66 0% cmd/internal/bio 6378 6340 0% cmd/internal/gcprog 684 644 -5% cmd/internal/goobj 1276 1193 -6% cmd/internal/obj 12908 12551 -2% cmd/internal/obj/arm 10074 10053 0% cmd/internal/obj/arm64 17723 17699 0% cmd/internal/obj/mips 12573 12530 0% cmd/internal/obj/ppc64 15352 15330 0% cmd/internal/obj/s390x 18785 18769 0% cmd/internal/obj/x86 23586 23551 0% cmd/internal/objfile 17148 17359 1% cmd/internal/pprof/commands 1948 1930 0% cmd/internal/pprof/driver 11123 11095 0% cmd/internal/pprof/fetch 8931 8907 0% cmd/internal/pprof/plugin 15335 15221 0% cmd/internal/pprof/profile 8493 8370 0% cmd/internal/pprof/report 9273 9214 0% cmd/internal/pprof/svg 1589 1589 0% cmd/internal/pprof/symbolizer 8737 8727 0% cmd/internal/pprof/symbolz 8277 8346 1% cmd/internal/pprof/tempfile 4319 4317 0% cmd/internal/sys 622 603 -2% cmd/internal/unvendor/golang.org/x/arch/arm/armasm 79231 79148 0% cmd/internal/unvendor/golang.org/x/arch/x86/x86asm 11761 11726 0% cmd/link 60 60 0% cmd/link/internal/amd64 11190 11178 0% cmd/link/internal/arm 204 204 0% cmd/link/internal/arm64 210 210 0% cmd/link/internal/ld 60670 59758 -1% cmd/link/internal/mips64 213 213 0% cmd/link/internal/ppc64 211 211 0% cmd/link/internal/s390x 210 210 0% cmd/link/internal/x86 203 203 0% cmd/nm 57 57 0% cmd/objdump 64 64 0% cmd/pack 4968 4908 0% cmd/pprof 63 63 0% cmd/trace 828 782 -5% cmd/vet 13485 13503 0% cmd/vet/internal/whitelist 109 109 0% cmd/yacc 1315 1269 -2% compress/bzip2 2561 2506 -1% compress/flate 4906 4748 -2% compress/gzip 7788 7717 0% compress/lzw 406 402 0% compress/zlib 4739 4712 0% container/heap 265 257 -2% container/list 1506 1450 -3% container/ring 556 536 -3% context 3552 3527 0% crypto 864 834 -2% crypto/aes 313 311 0% crypto/cipher 1139 1138 0% crypto/des 317 315 0% crypto/dsa 5326 5304 0% crypto/ecdsa 6383 6364 0% crypto/elliptic 5983 6063 1% crypto/hmac 258 256 0% crypto/md5 722 700 -2% crypto/rand 4996 4993 0% crypto/rc4 327 317 -2% crypto/rsa 6763 6722 0% crypto/sha1 767 744 -2% crypto/sha256 348 348 0% crypto/sha512 487 487 0% crypto/subtle 620 620 0% crypto/tls 24344 24083 0% crypto/x509 17473 17524 0% crypto/x509/pkix 9682 9596 0% database/sql 8099 7831 -2% database/sql/driver 1556 1500 -3% debug/dwarf 9358 9010 -3% debug/elf 28226 27882 0% debug/gosym 2472 2333 -5% debug/macho 9032 8830 -1% debug/pe 8561 8328 -2% debug/plan9obj 1347 1295 -3% encoding 275 261 -4% encoding/ascii85 775 738 -4% encoding/asn1 1280 1246 -2% encoding/base32 1207 1146 -4% encoding/base64 1471 1407 -3% encoding/binary 2430 2386 -1% encoding/csv 4347 4280 -1% encoding/gob 13488 13387 0% encoding/hex 665 646 -2% encoding/json 11763 11592 0% encoding/pem 283 273 -3% encoding/xml 13804 13631 0% errors 166 162 -1% expvar 1193 1139 -4% flag 6896 6964 1% fmt 1247 1213 -2% go/ast 15797 15473 -1% go/build 6497 6336 -1% go/constant 1846 1820 0% go/doc 3942 3871 -1% go/format 1854 1850 0% go/importer 1702 1695 0% go/internal/gccgoimporter 2084 2063 0% go/internal/gcimporter 3236 3253 1% go/parser 7377 7371 0% go/printer 2480 2469 0% go/scanner 3806 3733 -1% go/token 3579 3523 -1% go/types 26514 26117 0% hash 323 295 -8% hash/adler32 568 554 -1% hash/crc32 843 825 -1% hash/crc64 758 739 -2% hash/fnv 1583 1530 -2% html 113 113 0% html/template 16957 16937 0% image 11470 11045 -3% image/color 2566 2503 -1% image/color/palette 165 163 0% image/draw 2543 2522 0% image/gif 3467 3439 0% image/internal/imageutil 3481 3479 0% image/jpeg 2725 2717 0% image/png 2702 2689 0% index/suffixarray 5802 5777 0% internal/race 274 274 0% internal/singleflight 756 718 -4% internal/syscall/windows/sysdll 162 162 0% internal/testenv 5288 5276 0% internal/trace 1853 1768 -4% io 3425 3349 -1% io/ioutil 4768 4756 0% log 4173 4224 1% log/syslog 5049 4996 0% math 4343 4343 0% math/big 8779 8817 0% math/cmplx 1580 1580 0% math/rand 944 982 4% mime 2313 2298 0% mime/multipart 5021 4922 -1% mime/quotedprintable 2049 2008 -1% net 19332 19090 0% net/http 50404 49542 -1% net/http/cgi 22533 22637 0% net/http/cookiejar 5488 5431 0% net/http/fcgi 20557 20512 0% net/http/httptest 30350 30255 0% net/http/httputil 24045 23964 0% net/http/internal 2579 2550 0% net/http/pprof 20307 20258 0% net/internal/socktest 2227 2159 -2% net/mail 5086 5054 0% net/rpc 28365 28208 0% net/rpc/jsonrpc 12805 12722 0% net/smtp 19975 19887 0% net/textproto 4558 4466 -1% net/url 1391 1326 -4% os 10372 10195 -1% os/exec 7814 7928 1% os/signal 239 237 0% os/user 735 717 -1% path 391 391 0% path/filepath 4136 4136 0% reflect 6258 5893 -5% regexp 5808 5623 -2% regexp/syntax 3118 3077 0% runtime 11685 10912 -6% runtime/cgo 18 18 0% runtime/debug 3320 3304 0% runtime/internal/atomic 728 728 0% runtime/internal/sys 2287 2287 0% runtime/pprof 611 587 -3% runtime/race 19 19 0% runtime/trace 145 143 0% sort 1229 1206 -1% strconv 1752 1744 0% strings 3809 3775 0% sync 1331 1306 -1% sync/atomic 1135 1130 0% syscall 46280 45722 0% testing 7558 7284 -3% testing/iotest 1122 1071 -4% testing/quick 5656 5609 0% text/scanner 3367 3312 -1% text/tabwriter 2810 2755 -1% text/template 15613 15595 0% text/template/parse 9499 9040 -4% time 5515 5395 -1% unicode 4357 4344 0% unicode/utf16 583 583 0% unicode/utf8 970 970 0% vendor/golang.org/x/net/http2/hpack 4105 4012 -1% average 1524284 1509610 0% Change-Id: Ibe1ce098c7c575965389c1cad368c62c2cea256a Reviewed-on: https://go-review.googlesource.com/22536 Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Alan Donovan <adonovan@google.com>
-
Mikio Hara authored
Fixes #15463. Change-Id: Ic85886861c650ffcb71240d847941534152b92bc Reviewed-on: https://go-review.googlesource.com/22540 Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David du Colombier authored
Updates #15464. Change-Id: If3221034bb10751c6fcf1fbeba401a879c18079f Reviewed-on: https://go-review.googlesource.com/22513 Run-TryBot: David du Colombier <0intro@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Dave Cheney authored
Updates #15462 Unexport Jconv, Sconv, Fconv, Hconv, Bconv, and VConv as they are not referenced outside internal/gc. Econv was only called by EType.String, so merge it into that method. Change-Id: Iad9b06078eb513b85a03a43cd9eb9366477643d1 Reviewed-on: https://go-review.googlesource.com/22531Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Dave Cheney <dave@cheney.net> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 27 Apr, 2016 5 commits
-
-
Dave Cheney authored
Updates #15462 Replace all use of oconv(op, FmtSharp) with fmt.Printf("%#v", op). This removes all the callers of oconv. Change-Id: Ic3bf22495147f8497c8bada01d681428e2405b0e Reviewed-on: https://go-review.googlesource.com/22530Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Brad Fitzpatrick authored
Fixes #15325 Change-Id: I60137ecf27e236e97734b1730ce29ab23e9fe07f Reviewed-on: https://go-review.googlesource.com/22509Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Brad Fitzpatrick authored
It wasn't rendering as HTML nicely. Change-Id: I5408ec22932a05e85c210c0faa434bd19dce5650 Reviewed-on: https://go-review.googlesource.com/22532Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Michael Munday authored
Adapted from md5block_amd64.s. name old speed new speed delta Hash8Bytes 14.0MB/s ± 1% 39.9MB/s ± 0% +185.52% (p=0.000 n=9+10) Hash1K 176MB/s ± 1% 661MB/s ± 1% +274.44% (p=0.000 n=10+10) Hash8K 196MB/s ± 0% 742MB/s ± 1% +278.35% (p=0.000 n=10+9) Hash8BytesUnaligned 14.2MB/s ± 2% 39.8MB/s ± 0% +180.06% (p=0.000 n=10+10) Hash1KUnaligned 177MB/s ± 1% 651MB/s ± 0% +267.38% (p=0.000 n=10+10) Hash8KUnaligned 197MB/s ± 1% 731MB/s ± 1% +271.73% (p=0.000 n=10+10) Change-Id: I45ece98ee10f30fcd192b9c3d743ba61c248f36a Reviewed-on: https://go-review.googlesource.com/22505Reviewed-by: Bill O'Farrell <billotosyr@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Michael Hudson-Doyle authored
These symbols are de-duplicated in the linker but the compiler generates quite many duplicates too: 2425 of 13769 total symbols for runtime.a for example. De-duplicating them in the compiler saves the linker a bit of work. Fixes #14983 Change-Id: I5f18e5f9743563c795aad8f0a22d17a7ed147711 Reviewed-on: https://go-review.googlesource.com/22293Reviewed-by: David Crawshaw <crawshaw@golang.org>
-