- 04 Mar, 2016 8 commits
-
-
Matthew Dempsky authored
Good riddance to another one-off linked list type. Change-Id: Idf9926a701ab4da8a022be1d61f1257020d58fc5 Reviewed-on: https://go-review.googlesource.com/20212 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Dave Cheney <dave@cheney.net> Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
Michael Hudson-Doyle authored
This is mostly changing the opXXX helpers to take an int16 (matching Prog.As) argument and return a uint32. The only bit that's not completely trivial is passing -p.As to opirr to signal operating on a shifted constant, because AADD + ALAST overflows int16. Change-Id: I69133800bbe41c38fa4a89bbbf49823043b3419c Reviewed-on: https://go-review.googlesource.com/20182Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Dave Cheney authored
This CL addresses some issues noted during CL 20089. Change-Id: I4e91a8077c07a571ccc9c004278672eb951c5104 Reviewed-on: https://go-review.googlesource.com/20181Reviewed-by: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Dave Cheney <dave@cheney.net> Run-TryBot: Dave Cheney <dave@cheney.net> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
djherbis authored
The existing implementation returns nil, ErrBufferFull when n > len(b.buf), now it will return any data in the buffer and ErrBufferFull. Fixes #14121 Change-Id: Ie52d32ccd80e4078ebfae6e75393c89675959ead Reviewed-on: https://go-review.googlesource.com/19091 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
-
Ian Lance Taylor authored
Move a few local fields all the way to []*Node while I'm at it. Update #14473. Change-Id: Ib18360879839ac592f778cf1042f111bdf14add3 Reviewed-on: https://go-review.googlesource.com/20197 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Crawshaw <crawshaw@golang.org>
-
Matthew Dempsky authored
Automated CL prepared by github.com/mdempsky/unconvert, except for reverting changes to ssa/rewritegeneric.go (generated file) and package big (vendored copy of math/big). Change-Id: I64dc4199f14077c7b6a2f334b12249d4a785eadd Reviewed-on: https://go-review.googlesource.com/20089 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Dave Cheney <dave@cheney.net>
-
Ian Lance Taylor authored
Add new functions setNodeSeqNode, appendNodeSeq, appendNodeSeqNode. Passes toolstash -cmp. Change-Id: I6c1745b1108dea45a2c0d029b9de1917ae17a962 Reviewed-on: https://go-review.googlesource.com/20196 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Spencer Nelson authored
cmd/vet's printf checker currently uses a hardcoded map of function names to expected positions of format strings. We can be a bit more precise than this by looking up the signature of the function, which helps when libraries implement functions like Errorf or Logf with extra arguments like log levels or error codes. Specifically, the format string param is assumed to be the last string parameter of the called function. Fixes #12294. Change-Id: Icf10ebb819bba91fa1c4109301417042901e34c7 Reviewed-on: https://go-review.googlesource.com/20163 Run-TryBot: Rob Pike <r@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
- 03 Mar, 2016 25 commits
-
-
Ian Lance Taylor authored
Added Seq method to nodeListIterator. Added new functions nodeSeqLen, nodeSeqFirst, nodeSeqSecond. Allow nil as source argument to setNodeSeq. Change-Id: Ifc1cd4d7207b7a125b3830c92c4d6d6f00eedd54 Reviewed-on: https://go-review.googlesource.com/20195Reviewed-by: David Crawshaw <crawshaw@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
Also rewrite bexport.go to use nodeSeqIterate. The new setNodeSeq is a transitional generic function to set either a NodeList or a slice to either a NodeList or a slice. This should permit us to flip fields from *NodeList to []*Node, or Nodes, without changing other code. Passes toolstash -cmp. Change-Id: I872cbfe45bc5f432595737c1f6da641c502b1ab6 Reviewed-on: https://go-review.googlesource.com/20194Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David du Colombier authored
The ssa compiler uses the duffcopy and duffzero functions, which rely on the MOVUPS instructions. However, this doesn't work on Plan 9, since floating point operations are not allowed in the note handler. This change disables the use of duffcopy and duffzero on Plan 9 in the ssa compiler. Updates #14605. Change-Id: I017f8ff83de00eabaf7e146b4344a863db1dfddc Reviewed-on: https://go-review.googlesource.com/20171Reviewed-by: Keith Randall <khr@golang.org> Run-TryBot: David du Colombier <0intro@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ian Lance Taylor authored
I tried to write a program to convert *NodeList to Node, but ran into too many problem cases. I'm backing off and trying a more iterative approach using interfaces. This CL adds an interface for iteration over either a *NodeList or a Nodes. I changed typechecklist to use it, to show how it works. After NodeList is eliminated, we can change the typechecklist parameter type to Nodes. Passes toolstash -cmp. Change-Id: I5c7593714b020d20868b99151b1e7cadbbdbc397 Reviewed-on: https://go-review.googlesource.com/20190 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David Crawshaw authored
This CL introduces a mergestrings pass after the reachability analysis to combine all reachable go.string."..." character data symbols into a single symbol. Shrinks juju by 1.2mb (1.5%). Shrinks cmd/go by 0.5% when building without DWARF. No noticable effect on linker speed. Change-Id: I2ba3e60bf418f65766bda257f6ca9eea26d895b6 Reviewed-on: https://go-review.googlesource.com/20165 Run-TryBot: David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Ian Lance Taylor authored
The listsort function is no longer used, except in a test. Change the test to use sort.Sort instead. Change-Id: Ib634705cc1bc3b1d8fc3795bd4ed2894e6abc284 Reviewed-on: https://go-review.googlesource.com/19964Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Keith Randall authored
Make sure we don't depend on map iterator order. Fixes #14600 Change-Id: Iac0e0c8689f3ace7a4dc8e2127e2fd3c8545bd29 Reviewed-on: https://go-review.googlesource.com/20158 Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Keith Randall authored
If we're about to enter a loop, load values which are live and will soon be used in the loop into registers. name old time/op new time/op delta BinaryTree17-8 2.80s ± 4% 2.62s ± 2% -6.43% (p=0.008 n=5+5) Fannkuch11-8 2.45s ± 2% 2.14s ± 1% -12.43% (p=0.008 n=5+5) FmtFprintfEmpty-8 49.0ns ± 1% 48.4ns ± 1% -1.35% (p=0.032 n=5+5) FmtFprintfString-8 160ns ± 1% 153ns ± 0% -4.63% (p=0.008 n=5+5) FmtFprintfInt-8 152ns ± 0% 150ns ± 0% -1.57% (p=0.000 n=5+4) FmtFprintfIntInt-8 252ns ± 2% 244ns ± 1% -3.02% (p=0.008 n=5+5) FmtFprintfPrefixedInt-8 223ns ± 0% 223ns ± 0% ~ (all samples are equal) FmtFprintfFloat-8 293ns ± 2% 291ns ± 2% ~ (p=0.389 n=5+5) FmtManyArgs-8 956ns ± 0% 936ns ± 0% -2.05% (p=0.008 n=5+5) GobDecode-8 7.18ms ± 0% 7.11ms ± 0% -1.02% (p=0.008 n=5+5) GobEncode-8 6.12ms ± 3% 6.07ms ± 1% ~ (p=0.690 n=5+5) Gzip-8 284ms ± 1% 284ms ± 0% ~ (p=1.000 n=5+5) Gunzip-8 40.8ms ± 1% 40.6ms ± 1% ~ (p=0.310 n=5+5) HTTPClientServer-8 69.8µs ± 1% 72.2µs ± 4% ~ (p=0.056 n=5+5) JSONEncode-8 16.1ms ± 2% 16.2ms ± 1% ~ (p=0.151 n=5+5) JSONDecode-8 54.9ms ± 0% 57.0ms ± 1% +3.79% (p=0.008 n=5+5) Mandelbrot200-8 4.35ms ± 0% 4.39ms ± 0% +0.85% (p=0.008 n=5+5) GoParse-8 3.56ms ± 1% 3.42ms ± 1% -4.03% (p=0.008 n=5+5) RegexpMatchEasy0_32-8 75.6ns ± 1% 75.0ns ± 0% -0.83% (p=0.016 n=5+4) RegexpMatchEasy0_1K-8 250ns ± 0% 252ns ± 1% +0.80% (p=0.016 n=4+5) RegexpMatchEasy1_32-8 75.0ns ± 0% 75.4ns ± 2% ~ (p=0.206 n=5+5) RegexpMatchEasy1_1K-8 401ns ± 0% 398ns ± 1% ~ (p=0.056 n=5+5) RegexpMatchMedium_32-8 119ns ± 0% 118ns ± 0% -0.84% (p=0.008 n=5+5) RegexpMatchMedium_1K-8 36.6µs ± 0% 36.9µs ± 0% +0.91% (p=0.008 n=5+5) RegexpMatchHard_32-8 1.95µs ± 1% 1.92µs ± 0% -1.23% (p=0.032 n=5+5) RegexpMatchHard_1K-8 58.3µs ± 1% 58.1µs ± 1% ~ (p=0.548 n=5+5) Revcomp-8 425ms ± 1% 389ms ± 1% -8.39% (p=0.008 n=5+5) Template-8 65.5ms ± 1% 63.6ms ± 1% -2.86% (p=0.008 n=5+5) TimeParse-8 363ns ± 0% 354ns ± 1% -2.59% (p=0.008 n=5+5) TimeFormat-8 363ns ± 0% 364ns ± 1% ~ (p=0.159 n=5+5) Fixes #14511 Change-Id: I1b79d2545271fa90d5b04712cc25573bdc94f2ce Reviewed-on: https://go-review.googlesource.com/20151 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com>
-
David Crawshaw authored
Change-Id: I939129da0e71a7ccc61bec79515a34f0b1e59502 Reviewed-on: https://go-review.googlesource.com/20162Reviewed-by: Dave Cheney <dave@cheney.net> Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
David Crawshaw authored
Change-Id: Idc95452088d23be8e18522209d98f789dfca070b Reviewed-on: https://go-review.googlesource.com/20161Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Caleb Spare authored
Fixes #14547. Change-Id: Ic175ee8f7e65b9b99f1f47fbf267a2aba7c8fec7 Reviewed-on: https://go-review.googlesource.com/20010 Run-TryBot: Caleb Spare <cespare@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org>
-
Martin Möhrmann authored
No extra buffering is needed to save the encoding since the left padding can be computed and written out before the encoding is generated. Add extra tests to both string and byte slice formatting. name old time/op new time/op delta SprintfHexString-2 410ns ± 3% 194ns ± 3% -52.60% (p=0.000 n=20+19) SprintfHexBytes-2 431ns ± 3% 202ns ± 2% -53.13% (p=0.000 n=18+20) Change-Id: Ibca4316427c89f834e4faee61614493c7eedb42b Reviewed-on: https://go-review.googlesource.com/20097 Run-TryBot: Rob Pike <r@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Keith Randall authored
The ODOTPTRs introduced in CL #19814 don't have field names, just offsets. The fieldtrack experiment crashes when examining them. Instead, just ignore them. We'll never track these fields anyway. It would be nice to have the runtime type struct build in the compiler (like we do sudog, for example) so we could use its fieldnames. Doesn't seem worth it just for this CL. Change-Id: I5e75024f5a8333eb7439543b3f466ea40213a1b9 Reviewed-on: https://go-review.googlesource.com/20157Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Matthew Dempsky authored
Change-Id: Ib0a116a78f61eafe88a0ea5dc6733750ae755fdf Reviewed-on: https://go-review.googlesource.com/20156 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Michael Munday authored
The new Minalign field sets the minimum alignment for all symbols. This is required for the upcoming s390x port which requires symbols be 2-byte aligned for efficient relative addressing. All preexisting architectures have Minalign set to 1 which means that this commit should have no effect. I tested values of 2, 4 and 8 on linux amd64 and the tests appear to pass. Increasing Minalign to 16 appears to break the runtime. I think this is due to assumptions made about the layout of module data. toolstash -cmp on linux amd64 shows no changes due to this commit. Resolves #14604 Change-Id: I0fe042d52c4e4732eba5fabcd0c31102a2408764 Reviewed-on: https://go-review.googlesource.com/20149Reviewed-by: Minux Ma <minux@golang.org> Run-TryBot: Minux Ma <minux@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Mikio Hara authored
This change consolidates functions and methods related to TCPAddr, TCPConn and TCPListener for maintenance purpose, especially for documentation. Also refactors Dial error code paths. The followup changes will update comments and examples. Updates #10624. Change-Id: I3333ee218ebcd08928f9e2826cd1984d15ea153e Reviewed-on: https://go-review.googlesource.com/20009Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Robert Griesemer authored
Change-Id: I59ce1b40bc3472cc92a9a0a9fbd32342e0b945ad Reviewed-on: https://go-review.googlesource.com/20152Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Robert Griesemer authored
Change-Id: Ia3e5d62b9d38a6c356baec8eb88b2bdabff5820f Reviewed-on: https://go-review.googlesource.com/20150Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com> Run-TryBot: Robert Griesemer <gri@golang.org>
-
Joe Tsai authored
Over the years as more bugs were discovered with the bzip2 library, new Tests were appended the unit tests and the tests became gnarly. Clean up the tests to be more consistent with modern Go style in addition to coalescing common tests into a general version that iterates over a list of input/output pairs. This has the advantage that the input, output, and test code are all in the same area, rather than being sprawled around the test file. There is no loss of test coverage. Change-Id: I377ed89378f0b89763d4a56ffc37b22d9c2a369e Reviewed-on: https://go-review.googlesource.com/20133 Run-TryBot: Joe Tsai <joetsai@digital-static.net> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Burcu Dogan authored
/etc/services is not available on Android. The pure Go implementation of LookupPort will never succeed on Android. Skipping the test. Updates #14576. Change-Id: I707ac24aea3f988656b95b1816ee5c9690106985 Reviewed-on: https://go-review.googlesource.com/20154Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Rob Pike authored
It appears to be a trivial dreg. Unreferenced. Gone. Change-Id: I4a5ceed48e84254bc8a07fdb04487a18a0edf965 Reviewed-on: https://go-review.googlesource.com/20122 Run-TryBot: Rob Pike <r@golang.org> Reviewed-by: Dave Cheney <dave@cheney.net>
-
Matthew Dempsky authored
Arch backends already provide us Widthint and Widthptr, which is ample information to figure out how to define the universal "int", "uint", and "uintptr" types. No need for providing a generic typedef mechanism beyond that. Change-Id: I35c0c17a67c80605a9208b93d77d6960b2cbb17d Reviewed-on: https://go-review.googlesource.com/20153 Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Dave Cheney <dave@cheney.net> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Chris Broadfoot authored
Fixes #14378. Change-Id: I680b523c01576e42f1dbda9131d1f6bb99b3668b Reviewed-on: https://go-review.googlesource.com/20138Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David Crawshaw authored
No performance improvement, but possibly more readable. Linking juju: tip: real 0m5.470s user 0m6.131s this: real 0m5.392s user 0m6.087s Change-Id: I578e94fbe6c11b19d79034c33b3db31d9689d439 Reviewed-on: https://go-review.googlesource.com/20108Reviewed-by: Matthew Dempsky <mdempsky@google.com> Run-TryBot: David Crawshaw <crawshaw@golang.org>
-
Brad Fitzpatrick authored
All callers already had strings. No need to generate byte slice copies to work on bytes. Performance not measured, but probably helps at least a bit. Change-Id: Iec3230b69724fac68caae7aad46f2ce1504e82e5 Reviewed-on: https://go-review.googlesource.com/20136Reviewed-by: David Crawshaw <crawshaw@golang.org> Reviewed-by: Dave Cheney <dave@cheney.net> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
-
- 02 Mar, 2016 7 commits
-
-
Alex Brainman authored
Latest version of gcc (tdm-1) 5.1.0 refuses to compile our code on windows/386 (see issue for details). Rewrite the code. Fixes #14328 Change-Id: I70f4f063282bd2958cd2175f3974369dd49dd8dc Reviewed-on: https://go-review.googlesource.com/20008Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
David Crawshaw authored
Looks a tiny bit faster, which is a surprise. Probably noise. Motivation is making the LSym structure a little easier to understand. Linking juju, best of 10: before: real 0m4.811s user 0m5.582s after: real 0m4.611s user 0m5.267s Change-Id: Idbedaf4a6e6e199036a1bbb6760e98c94ed2c282 Reviewed-on: https://go-review.googlesource.com/20142Reviewed-by: Michael Hudson-Doyle <michael.hudson@canonical.com> Run-TryBot: David Crawshaw <crawshaw@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Robert Griesemer authored
Function bodies are not yet hooked up because the node structure is not 100% correct. This commit establishes that we can correctly write bodies out and read them in again. - export and import all exported inlined function bodies: (export GO_GCFLAGS="-newexport"; sh all.bash) working - inlined functions are not yet hooked up (just dropped on the floor) - improved tracing output and error messages - make mkbuiltin.go work for both textual and binary export data so we can run tests with the new format Change-Id: I70dc4de419df1b604389c3747041d6dba8730b0b Reviewed-on: https://go-review.googlesource.com/16284Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
David Crawshaw authored
Also stop creating a map for each symbol, as it does not seem to help. Linking juju: tip: real 0m5.470s user 0m6.131s this: real 0m4.811s user 0m5.582s Change-Id: Ib3d931c996396a00942581770ff32df1eb8d6615 Reviewed-on: https://go-review.googlesource.com/20140 Run-TryBot: David Crawshaw <crawshaw@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David Chase authored
uint8(s.b & 0xff) ought to produce same code as uint8(s.b) but it did not. RLH found this one looking for moles to whack in the GC code. Change-Id: I883d68ec7a5746d652712be84a274a11256b3b33 Reviewed-on: https://go-review.googlesource.com/20141Reviewed-by: Keith Randall <khr@golang.org>
-
Robert Griesemer authored
Follow-up to https://go-review.googlesource.com/20131 . Change-Id: Id8351fa39f24e6ea488cdbfcb855b69a31ffff31 Reviewed-on: https://go-review.googlesource.com/20134 Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Martin Möhrmann authored
Count only the runes up to the requested precision to decide where to truncate a string. Change the loop within truncate to need fewer jumps. name old time/op new time/op delta SprintfTruncateString-2 188ns ± 3% 155ns ± 3% -17.43% (p=0.000 n=20+20) Change-Id: I17ca9fc0bb8bf7648599df48e4785251bbc31e99 Reviewed-on: https://go-review.googlesource.com/20098Reviewed-by: Rob Pike <r@golang.org>
-